Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]4813[/thread]

TK-Modul Ein und Aulsesen: Anfänger verzweifelt (Seite 4)

Leser: 1


<< |< 1 2 3 4 >| >> 32 Einträge, 4 Seiten
renee
 2004-08-18 20:09
#42456 #42456
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
[quote=ptk,18.08.2004, 15:53][quote=Crian,18.08.2004, 15:17]Edit: Nette Idee, die Listbox für die Meldung zu nehmen :)[/quote]
Nach dem insert in die Listbox sollte man vielleicht noch
Code: (dl )
$listbox->see("end");
machen, weil nicht automatisch nach unten gescrollt wird...[/quote]
Wieder was gelernt. Ich habe bisher kaum was mit Tk gemacht...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Crian
 2004-08-18 20:20
#42457 #42457
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
[quote=ptk,18.08.2004, 17:05][quote=Crian,18.08.2004, 16:08]@Tk::PathEntry Grummel? Warum hab ich mir das dann mal selbst geschrieben? ;) Naja, hat mir nicht geschadet.
[/quote] Tja, wer zuerst ein Upload auf CPAN macht, gewinnt :-) Wobei PathEntry noch nicht perfekt ist. Kann man deinen Code irgendwo sehen?[/quote]
Ich such ihn mal raus (ist allerdings noch nicht in Modulform gegossen).

...

habs gerade gefunden:

Code: (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
#!/usr/bin/perl
use strict;
use warnings;

use Tk;

my $mw = new MainWindow;
$mw->title('Autovervollständigung');


my $e = $mw->Entry(-text    => '',
                  -width   => 80,
                 )
           ->pack(
                  -expand  => 1,
                  -fill    => 'x',
                 );

$mw->bind ('<Tab>', \&vervollstaendige );


$e->focus();
MainLoop();

sub vervollstaendige {
   my $text = $e->get();
   print $text, "\n";
   my @treffer;

   my ($pfad, $trenner, $anf) = $text =~ m~^(.*)([/\\])([^/\\]*)$~;
   print "pfad='$pfad', Anfang='$anf'\n";

   if (! -d $pfad) {
       print "'$pfad' ist kein Verzeichnis, Abbruch\n";
   }
   else {
       opendir PFAD, "$pfad/" or die "Kann Verzeichnis '$pfad' nicht öffnen: $!";
       my @verzeichnisse = grep -d "$pfad/$_", readdir PFAD;
       closedir PFAD;

       for my $v (@verzeichnisse) {
           print "Verzeichnis '$v'\n";
           if ($v =~ /^\Q$anf/i) { # bei Linux/Unix das i entfernen!
               print "Anfang '$anf' passt auf '$v'\n";
               push @treffer, $v;
           }
       }
   }

   $e->delete(0, 'end');

   if (scalar(@treffer) == 1) {
       $e->insert('end', "$pfad$trenner$treffer[0]");
   }
   else {
       $e->insert('end', "$pfad$trenner$anf");
   }

   $e->selectionClear();
   $e->icursor('end');

   $e->configure(state => 'disable');
   $e->configure(state => 'enable');
   $e->focus();
} # sub vervollstaendige
\n\n

<!--EDIT|Crian|1092846168-->
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
<< |< 1 2 3 4 >| >> 32 Einträge, 4 Seiten



View all threads created 2004-08-16 17:43.