我想制作一个使用Bash命令的应用程序,但每次在Tkinter回调中导致Exception。
我已经尝试过使用子进程popen,但是它甚至想启动命令。
render
我将按钮更改为“ Aktualisiert”,而不是实际的“异常”错误。
function download_csv(csv, filename) {
var csvFile;
var downloadLink;
csvFile = new Blob([csv], {type: "text/csv"});
downloadLink = document.createElement("a");
downloadLink.download = filename;
downloadLink.href = window.URL.createObjectURL(csvFile);
downloadLink.style.display = "none";
document.body.appendChild(downloadLink);
downloadLink.click();}
function export_table_to_csv(html, filename) {
var csv = [];
var rows = document.querySelectorAll("table tr");
for (var i = 0; i < rows.length; i++) {
var row = [], cols = rows[i].querySelectorAll("td, th");
for (var j = 0; j < cols.length; j++)
row.push(cols[j].innerText);
csv.push(row.join(","));
}
download_csv(csv.join("\n"), filename);}
document.querySelector("button").addEventListener("click", function () {
var html = document.querySelector("table").outerHTML;
export_table_to_csv(html, "table.csv");});
答案 0 :(得分:1)
您无需将os.system('sudo -S pacman -Syu')
调用作为update_button.config
的参数来运行。您只需要在button_action
函数内部的某个位置调用它即可,当按update_button = Button(fenster, text="Aktualisieren", command=button_action)
行中的指定单击“ Aktalisieren”按钮时,将触发该函数。
def button_action():
os.system('sudo -S pacman -Syu')
update_button.config(text="Aktualisiert!")