Thread LaTex-Dokumente von Makros säubern. Hilfe gesucht!
(9 answers)
Opened by Mick1987 at 2010-12-07 11:09 2010-12-07T11:27:43 Mick1987 Der Programmablauf ist normalerweise bei Konsolenprogrammen und GUI-Programmen sehr verschieden. Darum ist es nicht so einfach zu lernen, GUI-Programme zu schreiben. Wenn das wirklich alles an Eingaben ist, kannst Du das GUI aber ausnahmsweise auch "ausklammern": Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 #!/usr/bin/perl use strict; use warnings; use Tk; use Cwd; my @entries = getEntriesFromGUI(); foreach my $i (@entries) { print "$i\n"; } sub getEntriesFromGUI { my @res = (); my $mw = Tk::MainWindow->new(); $mw -> title("Latex-Macro-Changer"); if ($^O eq "linux") { $mw -> optionAdd("*font", "Arial 16"); } else { $mw -> optionAdd("*font", "Arial 10"); } $mw -> geometry("+320+200"); my $fr1 = $mw -> Frame(); my $lab1 = $fr1 -> Label(-text => "Ordner"); my $e1 = $fr1 -> Entry(-bg => 'white', -fg => 'black'); $e1 -> insert(0, Cwd::getcwd()); $e1 -> focus(); $lab1 -> pack(-side => 'left', -padx => 10); $e1 -> pack(-padx => 10); $fr1 -> pack(-pady => 10); my $fr2 = $mw -> Frame(); my $lab2 = $fr2 -> Label(-text => "Datei"); my $e2 = $fr2 -> Entry(-bg => 'white', -fg => 'black'); $e2 -> insert(0, "Dateiname"); $lab2 -> pack(-side => 'left', -padx => 10); $e2 -> pack(-padx => 10); $fr2 -> pack(-pady => 10); my $fr3 = $mw -> Frame(); my $lab3 = $fr3 -> Label(-text => "Autor"); my $e3 = $fr3 -> Entry(-bg => 'white', -fg => 'black'); $e3 -> insert(0, "Name des Autors"); $lab3 -> pack(-side => 'left', -padx => 10); $e3 -> pack(-padx => 10); $fr3 -> pack(-pady => 10); my $btn = $mw -> Button(-text => "OK", -command => sub { @res = ($e1 -> get(), $e2 -> get(), $e3 -> get()); $mw -> destroy(); }); $btn -> pack(-anchor => 'se', -padx => 10, -pady => 10); $mw -> bind('<Return>', sub { $btn -> invoke} ); Tk::MainLoop(); return @res; } HTH Last edited: 2010-12-09 19:30:02 +0100 (CET) |