2008-11-22 15 views

Répondre

2

Vous pourriez vouloir regarder Tcl/Tk et la notion de starkits et starpacks. Avec ce dernier, vous pouvez créer un exécutable Windows à un seul fichier afin que vos utilisateurs finaux n'aient pas à installer autre chose que ce programme. En utilisant tk 8.5, vous bénéficierez également de widgets Windows natifs pour que l'interface utilisateur graphique soit très professionnelle.

Le code ressemblerait à quelque chose comme ceci:

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 
+0

Wow tu as fait mon travail pour moi. Merci! Cette question m'a conduit aussi fltk et FLUID qui est amusant à jouer avec mais pas très rapide et sale comme je voudrais TCL/TK est ce que je veux. Lou Franco a répondu était bon mais wow vous avez écrit le code! – Paul

+0

Une des choses que la plupart des gens ne réalisent pas est à quel point il est incroyablement simple d'écrire une interface graphique dans Tcl/Tk - aucun IDE requis. –

1

Beaucoup de gens utilisaient TCL/TK pour ce genre de choses (en cygwin). Si ce n'est que pour Windows, n'importe quel langage .NET utilisant Winforms sera simple à utiliser (il n'aura pas besoin de distribuer .NET à moins que vous n'ayez d'anciennes boîtes).