Какой язык люди порекомендуют в качестве простого графического интерфейса, который можно использовать в качестве входных данных для скрипта, запускаемого в Cygwin?
Мне нужно простое окно с тремя полями ввода и тремя метками (логин, пароль и узел сервера) и кнопкой для запуска скрипта. Я не хочу никаких сторонних программ, которые должны быть установлены в Windows. Если бы он мог быть установлен на Cygwin, это было бы здорово.
2 ответа
Возможно, вы захотите взглянуть на Tcl/Tk и понятие старкитов и звездных пакетов. С последним вы можете создать однофайловый исполняемый файл Windows, чтобы вашим конечным пользователям не пришлось устанавливать ничего, кроме этой программы.
Используя tk 8.5, вы также получите преимущество от собственных виджетов Windows, поэтому графический интерфейс может выглядеть очень профессионально.
Код будет выглядеть примерно так:
package require Tk 8.5
proc main {} {
ttk::frame .f
ttk::label .l1 -text "Username:" -anchor e
ttk::label .l2 -text "Password:" -anchor e
ttk::label .l3 -text "Server:" -anchor e
ttk::entry .e1 -textvariable data(username)
ttk::entry .e2 -textvariable data(password) -show *
ttk::entry .e3 -textvariable data(server)
ttk::button .b1 -text "Submit" -command run
grid .l1 .e1 -sticky ew -in .f -padx 4
grid .l2 .e2 -sticky ew -in .f -padx 4
grid .l3 .e3 -sticky ew -in .f -padx 4
grid x .b1 -sticky e -row 4 -in .f -padx 4 -pady 4
grid rowconfigure .f 3 -weight 1
grid columnconfigure .f 1 -weight 1
pack .f -side top -fill both -expand true
focus .e1
}
proc run {} {
global data
puts "username: $data(username)"
puts "password: $data(password)"
puts "server: $data(server)"
}
main
Многие люди использовали TCL/TK для такого рода вещей (в Cygwin).
Если это только для Windows, то любой язык.NET, использующий Winforms, будет простым в использовании (не нужно будет распространять.NET, если у вас нет старых блоков).