Leser: 2
![]() |
|< 1 2 >| | ![]() |
18 Einträge, 2 Seiten |
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
sub hlist_notebook{
my ( $hash_ref, $hash_ref_ini, $page, $hlist, $befehl, $choices) = @_;
my ( $counter, $choices_for_browse, $choices_befehl, $feld, $feldname);
for $feldname (keys(%{$hash_ref_ini})) {
$counter++;
}
my @choices = lies_tabellen_zeilen($dbh, "adresstyp", "beschreibung");
$hlist = $page->Scrolled("HList",
-header => 1,
-columns => $counter,
-scrollbars => 'oe',
-width => 145,
-height => 20,
-relief => 'flat',
)
->$befehl();
for my $datensatz_id (sort keys(%{$hash_ref})){
my $e = $hlist->addchild("");
for $feldname (keys(%{$hash_ref_ini})) {
my $browse = $hash_ref_ini->{$feldname}->{'widget'};
$hlist->header('create',
$hash_ref_ini->{$feldname}->{'place'},
-itemtype => 'window',
-widget => $hlist->Button(-text => $hash_ref_ini->{$feldname}->{'buttonname'},
-relief => 'flat',
-command => [ \&MyTk::HList::order, $hash_ref_ini->{$feldname}->{'place'}, 0 ]),
-style => $headerstyle);
$hlist->itemCreate($e,
$hash_ref_ini->{$feldname}->{'place'},
-itemtype => 'window',
(-widget => $feld = $hlist->$browse($hash_ref_ini->{$feldname}->{'variable'} => \$hash_ref->{$datensatz_id}->{$feldname},
-width => $hash_ref_ini->{$feldname}->{'width'})));
if ($browse eq "BrowseEntry"){
$feld->insert('end',$_) for (@choices);
}
elsif ( $browse eq "Checkbutton"){
$feld->configure(-command => [\&auswahl_checkbutton,\%{$hash_ref}, $datensatz_id, \%{$hash_ref_ini} ]);
}
}
}
}#hlist_notebook
sub auswahl_checkbutton{
my ($hash_ref, $datensatz, $hash_ref_ini ) = @_;
for my $datensatz_id (sort keys(%{$hash_ref})){
for my $feldname (keys(%{$hash_ref_ini})) {
if ( $hash_ref_ini->{$feldname}->{'widget'} eq "Checkbutton" ){
if ( $hash_ref->{$datensatz_id}->{$feldname} == 1) {$hash_ref->{$datensatz_id}->{$feldname} = 0}
if ( $datensatz_id == $datensatz) {$hash_ref->{$datensatz_id}->{$feldname} = 1}
}
}
}
}
QuoteIch glaube allerdings, dass ich immer noch nicht verstehe wo denn
steht welches Widget du einfügen möchtest...
Code: (dl )1
2
3
4
5$hlist->itemCreate($e,
$hash_ref_ini->{$feldname}->{'place'},
-itemtype => 'window',
(-widget => $feld = $hlist->$browse($hash_ref_ini->{$feldname}->{'variable'} => \$hash_ref->{$datensatz_id}->{$feldname},
-width => $hash_ref_ini->{$feldname}->{'width'})));
Denn in $feld steht ja nur HLIST->browse(-variable => \$variable);
so ungefähr drin, oder ?
1
2
3
4
5
6
my WIDGET = $hash_ref_ini->{$feldname}->{'widget'}; #HIER WIRD DIE VARIABLE MIT DEM WIDGET BEFÜLLT, FUNKTIONIERT NUR SO. WENN MAN DIREKT DEN HASH EINTRAG BENUTZT STÜRZT DAS PROGRAMM AB
$hlist->itemCreate(ZEILE_IN_HLIST,
SPLATE_IN_ZEILE_DER_HLIST,
-itemtype => 'window',
(-widget => VARIABLE_ZUM_KONFIGURIEREN = HLIST->WIDGET(-VARIABLE => BEFÜLLUNG,
-width => WIDTH_WERT)));
![]() |
|< 1 2 >| | ![]() |
18 Einträge, 2 Seiten |