Schrift
[thread]12749[/thread]

tree Widget und ein Callback verwenden.

Leser: 2


<< >> 5 Einträge, 1 Seite
oteske
 2008-11-12 10:38
#116201 #116201
User since
2008-11-12
2 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hallo,
und schon mal weil Danke für Eure Hilfe.

Ich habe ein Fenster das im Prinzip zweigeteilt ist. Oben ein tree Widget und unten Einzelheiten zu dem angeklickten Eintrag. Wenn ich mit der Maus auf einen Anderen Eintrag klicke ändern sich unten die Informationen. soweit so gut.

Ich habe einen Knopf wen ich auf den drücke wird im Tree ein neuer Eintrag erzeugt. Diesen aktiviere ich durch selectionSet, anchorSet und see. Das funktioniert auch noch sehr gut. Nur was nicht geht ist mein Callback. Ich habe ein Callback browsecmd und commando, aber keines wird ausgeführt wenn ich mit selectionSet, anchorSet und see den tree Eintrag anwähle, die funktionieren nur wen ich mit der Maus einen Eintrag anwähle. Wie kann ich erreichen, dass ein Callback aufgerufen wird wenn das Programm selbst einen tree Eintrag anwählt, bzw. wie muß ich den Eintrag anspringen, dass mein browsecmd callback ausgeführt wird?

Ich hoffe ich habe meine Frage verständlich ausgedrückt und Ihr könnt mir helfen!

Gruß
Oli
renee
 2008-11-12 10:39
#116202 #116202
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Zeig bitte mal etwas Code...
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/
oteske
 2008-11-12 10:48
#116203 #116203
User since
2008-11-12
2 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hallo Renee,

da der Code inzwischen schon recht umfangreich ist hier die - wie ich hoffe - relevanten Stellen.

[...]
$OBrowser=$Browser_Frame->Scrolled('Tree',
-scrollbars => 'osoe',
#-drawbranch => 0,
#indicator => 0,
#indent => 15,
-selectmode => 'browse',
-height => 16,
-width => 150,
-header => 1,
-columns => 6,
-background => 'white'
)->pack(-expand => 1,
-fill => 'both',
-anchor => 'n'
);

[...]
$OBrowser->configure(-browsecmd => [ \&DispWork #, $OBrowser #, $_ #, $OBrowser,
#$StyleOK
]
);
$OBrowser->configure(-command => [ \&DispWork #, $OBrowser #, $_ #, $OBrowser,
#$StyleOK
]
);

[...]
$OBrowser->add($NewDir, -itemtype => 'imagetext', -image => $folderimage, -text => 'ASO:', -style => $StyleNormal);
$OBrowser->itemCreate($NewDir, 1, -text => $NewDir, -style => $StyleNormal);
$OBrowser->itemCreate($NewDir, 2, -text => $NewASO_Bez, -style => $StyleNormal);
$OBrowser->itemCreate($NewDir, 3, -text => "NEIN", -style => $StyleNOK);
$OBrowser->itemCreate($NewDir, 4, -text => "NEIN", -style => $StyleNOK);
$OBrowser->itemCreate($NewDir, 5, -text => DirSize($Dir_Path."/".$NewDir), -style => $StyleNormal);
$OBrowser->update;
$OBrowser->selectionClear($Path);
$OBrowser->selectionSet($NewDir);
$OBrowser->see($NewDir);
$OBrowser->anchorSet($NewDir);

Hilft Dir das?

Ich sitze da jetzt schon seit einer Woche dran und habe gegoogelt was das Zeug hält.


Gruß
Oli
pktm
 2008-11-12 18:35
#116213 #116213
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Hallo!
Was ist das denn? Tk? Welche Version? Welches OS?
Reduziere mal dein Problem: erstelle eine neue Datei, in der du nur dein Tree-Widget verwendest und versuchst, ein callback zu realisieren.
Und, ich steige noch nicht so ganz durch deine Problembeschreibung durch.
Ich markiere also etwas in dem Baum, drücke einen Button und dann was?

Grüße, pktm
http://www.intergastro-service.de (mein erstes CMS :) )
Spieler
 2008-11-14 12:28
#116239 #116239
User since
2007-09-24
70 Artikel
BenutzerIn
[default_avatar]
Hallo,

hast du mal '->KeyboardActivate' nach dem anchorSet probiert?

ungetestet, Christoph
<< >> 5 Einträge, 1 Seite



View all threads created 2008-11-12 10:38.