CircosHeatmap-aardio/main.aardio

65 lines
2.1 KiB
Plaintext
Raw Normal View History

2025-01-12 00:52:51 +08:00
import win.ui;
/*DSG{{*/
mainForm = win.form(text="CircosHeatmap-aardio";right=800;bottom=600)
mainForm.add(
2025-01-12 04:16:59 +08:00
btnRun={cls="plus";text="运行";left=740;top=10;right=791;bottom=41;activebgcolor=19354;bgcolor=-5197169;font=LOGFONT(h=-16);hoverbgcolor=23477;textcolor=16777215;z=4};
btnSelectFile={cls="plus";text="选择输入文件";left=608;top=10;right=732;bottom=41;activebgcolor=19354;bgcolor=-5197169;font=LOGFONT(h=-16);hoverbgcolor=23477;textcolor=16777215;z=3};
editConsole={cls="edit";left=10;top=467;right=791;bottom=591;bgcolor=16777215;db=1;dl=1;dr=1;edge=1;hscroll=1;multiline=1;textcolor=0;vscroll=1;z=1};
editRScript={cls="edit";left=10;top=48;right=791;bottom=451;bgcolor=16777215;db=1;dl=1;dr=1;dt=1;edge=1;hscroll=1;multiline=1;textcolor=0;vscroll=1;z=5};
inputFile={cls="edit";left=10;top=10;right=600;bottom=40;bgcolor=16777215;edge=1;textcolor=0;z=2}
2025-01-12 00:52:51 +08:00
)
/*}}*/
2025-01-12 04:16:59 +08:00
mainForm.btnRun.skin({
background={
active=0xFFD3E0BC;
default=0xFF8FB2B0;
hover=0xFF928BB3
}
})
mainForm.btnSelectFile.skin({
background={
active=0xFFD3E0BC;
default=0xFF8FB2B0;
hover=0xFF928BB3
}
})
2025-01-12 00:52:51 +08:00
import console;
import process.r;
import fsys.dlg;
2025-01-12 04:16:59 +08:00
mainForm.editRScript.print($"\res\heatmap_script.R");
2025-01-12 00:52:51 +08:00
// 选择文件按钮点击事件
mainForm.btnSelectFile.oncommand = function(id, event) {
var filePath = fsys.dlg.open("CSV 文件|*.csv||",, "选择输入文件");
if (filePath) {
mainForm.inputFile.text = filePath; // 将选择的文件路径显示在输入框中
}
}
// 运行按钮点击事件
mainForm.btnRun.oncommand = function(id, event) {
var inputFilePath = mainForm.inputFile.text;
if (!inputFilePath) {
console.log("请先选择输入文件!");
return;
}
// 弹出保存文件对话框选择PDF保存路径
var outputFilePath = fsys.dlg.save("PDF 文件|*.pdf||",, "选择保存路径");
if (!outputFilePath) {
console.log("请选择PDF文件的保存路径");
return;
}
// 执行 R 脚本
2025-01-12 04:16:59 +08:00
var out = process.r.exec(mainForm.editRScript.text, inputFilePath, outputFilePath);
2025-01-12 00:52:51 +08:00
mainForm.editConsole.print(out);
}
// 显示主窗口
mainForm.show();
return win.loopMessage();