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

Farboption von readonly entrys



<< >> 8 Einträge, 1 Seite
Gast Gast
 2004-06-21 11:46
#42242 #42242
hab hier ein prob mit browseentry. wie kann ich einem readonly entry farbe verpassen?? wenn ich die zeile mit state weglasse wird mir das entry in den richtigenb farben dargestellt, sobald ich es aktiviere ist es grau :(

-state -> "readonly",@color,@font,
ptk
 2004-06-21 13:49
#42243 #42243
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Kannst du etwas mehr Beispielcode schreiben, am besten als ein kleines ausfuehrbares Skript, so dass ich es besser testen kann?
bizza
 2004-06-23 10:08
#42244 #42244
User since
2004-03-16
6 Artikel
BenutzerIn
[default_avatar]
sorry hat etwas länger gedauert, aber ich hatte probleme mit cookies beim anmelden und habs jetzt endlich geschafft *freu*
also ich habe hier mal ein kleines scripts vorbereitet mit welchem sich das problem darstellen lässt. wenn ich das script mit einer älteren perl tk version ausführe sind beide entrys grün. mit der neuen 804.027 wird das untere readonly nur grau dargestellt???
gibt es eine alternative zu browseentrys oder kennt jemand ne lösung wie beide widgets ihre farbe behalten?

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
use strict;
use Tk;
use Tk::BrowseEntry;

my $top = new MainWindow( -title => "BrowseEntry 2");
main( $top );
$top->geometry("90x90");
MainLoop();

sub main {
my( $top ) = @_;
my @countries = qw( America Belize Canada Denmark Egypt Fruitopia );
my $f = $top->Frame(-bg => "blue")->pack( qw/-side left / );
my $oh = $f->BrowseEntry( -bg => "green",
-choices => \@countries)->pack;
my $be = $f->BrowseEntry( -state => "readonly", bg => "green",
-choices => \@countries,
)->pack;
}
ptk
 2004-06-23 13:26
#42245 #42245
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Bei Tk804 gibt es neue Optionen fuer die Farbgebung, welche
bei Tk800 noch nicht vorhanden waren, z.B. -disabledbackground
und -disabledforeground. Du kannst z.B. folgendes in dein Skript
einfuegen:
Code: (dl )
1
2
3
4
5
6
7
8
       ...,
($Tk::VERSION >= 804
? (-disabledbackground => "green",
-disabledforeground => "black",
)
: ()
),
...

Mit der Abfrage stellst du sicher, dass dein Skript auch mit aelteren Versionen lauffaehig ist.
Crian
 2004-06-23 14:01
#42246 #42246
User since
2003-08-04
5872 Artikel
ModeratorIn
[Homepage]
user image
@bizza: Herzlich willkommen!
@ptk: schick, gute Idee, die Version abzufragen. Und eine leere Liste anzuhängen, tut wohl nicht weh :-)
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
bizza
 2004-06-23 15:13
#42247 #42247
User since
2004-03-16
6 Artikel
BenutzerIn
[default_avatar]
danke für deine antwort, da ich aber noch ziemlich wenig erfahrung im perl coden besitze, hab ich kein plan wo ich das einhängen soll :) kannst du mir da evtl. nochmal weiterhelfen?? danke
bizza
 2004-06-23 15:54
#42248 #42248
User since
2004-03-16
6 Artikel
BenutzerIn
[default_avatar]
hat sich erledigt, habs schon gefunden danke!! es funzt *freu*
ptk
 2004-06-23 15:56
#42249 #42249
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Code: (dl )
1
2
3
4
5
6
7
8
my $be = $f->BrowseEntry( -state => "readonly", bg => "green",
-choices => \@countries,
($Tk::VERSION >= 804 ? (-disabledbackground => "green",
-disabledforeground => "black",
)
: ()
),
)->pack;
<< >> 8 Einträge, 1 Seite



View all threads created 2004-06-21 11:46.