Schrift
[thread]12913[/thread]

Randloses Wiget für Hintergrundbild und Buttons gesucht

Leser: 3


<< >> 8 Einträge, 1 Seite
rommi
 2008-12-17 01:14
#117307 #117307
User since
2005-03-03
54 Artikel
BenutzerIn
[default_avatar]
Hallo Perlfans,

ich benötige ein Widget dass nahtlos an andere Widgets
angeschlossen werden kann und dem ich als Hintergrund
ein Image (wie bei Labels und Canvas) zuweisen kann.
Ausserdem sollte das Wiget Buttons, Checkbox, Radio-
button aufnehmen können ohne dass die Elemente wieder ver-
schwinden. Kann mir jemand einen Tip geben welches Widget
ich nehmen könnte?

Ich habe es erst versucht mit einem einfachen Frame aber
Frames kann man zwar eine Hintergrundfarbe zuweisen aber
kein Image! Also habe ich es mit einem Label versucht aber
bei Labels ist dass Problem aufgetreten dass Elemente wie
Buttons, Checkboxes, Radiobuttons etc. verschwinden wenn
andere Fenster kurzzeitig über das Tk-Fenster geschoben
wurden. Das ist natürlich absolut nicht schön. Dann habe
ich es mit Canvas versucht aber da habe ich wiederum das
Problem das Canvas einen schmalen hellen Rand zwischen
dem Canvas-Widget und anderen anschliessenden Widgets
macht. Leider auch sehr unschön und ich habe es nicht weg-
gebracht, obwohl ich mit place eigentlich die Möglichkeit habe
ein Widget pixelgenau zu positionieren.

Als kurzes Beispiel hier der nachstehende Code. Danke im
voraus, viele Grüsse rommi!

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
use Tk;
#================ Haupffenster ===================
$HF = new MainWindow (-title => "Test");
$HF->geometry('200x200');
$HF->geometry('+10+10');
#================ Frames =======================
$Fr1 = $HF -> Frame (
-width => 200,
-height => 100,
);
$Fr1->place(-x=> 0, -y=> 0);
#================ Labels =======================
$Lbl1 = $Fr1->Label (
-text => "Überschrift",
-bg => white,
-width => 32,
);
$Lbl1->place(-x=> 0, -y=> 0);


$Lbl2 = $Fr1->Label (
-bg => red,
-width => 100,
-height => 92,
);
$Lbl2->place(-x=> 0, -y=> 20);
#================ Button =======================
$Bttn1 = $Lbl2->Button (
-text=>"Testbutton",
-bg => grey,
-width => 32,
-height => 2,

);
$Bttn1->place(-x=> 0, -y=> 0);
#================ Canvas =======================
$Can1 = $HF -> Canvas (
-bg => green,
-width => 200,
-height => 50,
);
$Can1->place(-x=> 0, -y=> 90);
#================ TK-Abschluss ==================
MainLoop();

ModEdit GwenDragon: Code bitte das nächste Mal selbst in Code-Tags stellen
rommi
 2008-12-17 10:44
#117309 #117309
User since
2005-03-03
54 Artikel
BenutzerIn
[default_avatar]
Hallo GwenDragon, vielen Dank fürs Taggen!

Jetzt habe ich aber noch eine Frage dazu. In der Hilfe zu den Boardtags steht "Die folgenden Boardtags können verwendet werden". Also ich verstehe das Wort "können" eher als Option. Ausserdem frage ich mich was bringt es den Perlcode in Tags zu setzen? Geht es hier ums Aussehen oder hat es funk-tionelle oder sogar sicherheitsrelevante Gründe?

Übrigens finde ich deinen Kommentar nicht gerade freundlich. Klingt so unter-schwellig nach "mach es bitte das nächste Mal gefällig selbst".. Selbst die oft so gescholtene Telekom ist freundlicher ;-) Ich habe vor kurzem mein Bankkonto gewechselt und habe vergessen die Abbuchung umzustellen. Prompt habe ich auch eine Mahnung von der Telekom erhalten. Allerdings war ich doch sehr erstaunt wie freundlich die Zahlungsaufforderung formuliert war. "Sehr geehrter Herr .... wir wissen das im Alltagstrubel leicht etwas untergehen kann und bitten Sie daher...usw. usw." Also ich finde es für ne Mahnung nicht schlecht formuliert, oder? Allerdings kostets Mahngebühren und bei dir is es kostenlos :-). Ok Schluss mit dem Exkurs sonst heissts ich müll das Board zu.

Gruss, rommi
pq
 2008-12-17 11:04
#117310 #117310
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
@rommi, du hast hier jetzt schon 31 beiträge geschrieben und bist seit 2005 dabei.
es gibt eine FAQ zum artikelschreiben, da steht drin, dass man code in code-tags stellen
sollte. und wenn man irgendwo eine frage stellt, sollte man - gerade wenn man schon länger dabei
ist - sich an die gepflogenheiten eines forums anpassen.
in der FAQ steht, warum code-tags sinnvoll sind.
vielleicht hast du ja auch einen browser, der dir alles in fixed-width anzeigt, aber die meisten anderen
nunmal nicht. und dann ist code einfach nicht so gut lesbar.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
pq
 2008-12-17 11:07
#117311 #117311
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
rommi+2008-12-17 09:44:49--
In der Hilfe zu den Boardtags steht "Die folgenden Boardtags können verwendet werden". Also ich verstehe das Wort "können" eher als Option.

in perl kannst du code auch oft komplett ohne leerzeichen schreiben. es ist nur eine option.
und warum benutzt du trotzdem leerzeichen?
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
GwenDragon
 2008-12-17 11:53
#117313 #117313
User since
2005-01-17
14747 Artikel
Admin1
[Homepage]
user image
rommi+2008-12-17 09:44:49--
Hallo GwenDragon, vielen Dank fürs Taggen!

Übrigens finde ich deinen Kommentar nicht gerade freundlich. Klingt so unter-schwellig nach "mach es bitte das nächste Mal gefällig selbst".. Selbst die oft so gescholtene Telekom ist freundlicher ;-)

Nun, rommi, erst dankst du mir und dann bin ich unfreundlich? Dann musst du mir doch nicht danken.

Den Code in Tags zu stellen, macht ihn lesbarer.
Der Hinweis war dir nicht freundlich genug? Hmm, auch Moderatorinnen sind schreibfaul und schreiben keine 10-zeiligen Absätze als Moderationskommentar.

1) Zum freundlichen Ton

Der erweiterte Mod-Kommentar als Versuch.
-----------
Allerliebster rommi,
sei doch bitte so nett und setze bitte das nächste Mal den Code in die richtigen Tags. Das macht das Lesen für uns Helfende einfacher.
Vielleicht ist dir entgangen, dass es die Möglichkeit der Formatierung überhaupt in diesem Forum gibt. Ich möchte dir die Hilfe zu den Board-Tags ans Herz legen. Oder du hattes im Weihnachtstrubel zu wenig Zeit, das zu bewerkstelligen.
Danke für dein Verständnis.
Solltest du noch Fragen haben, kannst du dich natürlich vertrauensvoll an mich oder andere ModeratorInnen wenden.
Ich wünsch dir noch einen schönen Tag und freue mich, wenn du wieder bei uns erscheinst.
-----------
PS: Ich weiß nun nicht, ob das auch unfreundlich ist.


2) Vergleich mit der Telekom
Ich bin nicht die Telekom und bekomme auch keinerlei Honorare oder Verträge für meine Tätigkeit hier, weder von den Forenbetreibern noch von den Postern.
Ich bin auch kein Callcenter, das dich mit neuen Angeboten belästigt oder virtuelle gespielte Freundlichkeit an den Tag legt.
Wir machen das alles ehrenamtlich, aus Spaß, weil uns die Männer und Frauen, die Perl benutzen, wichtig sind.

3) Deine Anrede an uns
Ich muss schon lachen, da nennst du uns Perlfans. Ein Fan ist ein Fanatiker. Eine Art Ventilator, der wild gestikuliert mit den Armen (englisch: Fan = Ventilator).
Wir sind garantiert Perl-Lovers oder Perl-Addicts ;)

4) Wir sind Menschen, keine seelenlosen Maschinen
Fehler machen alle, Missverständnisse gibt es immer mal, das Lesen eines Textes ist eben nicht auch das, was wirkliche gemeint ist, es ist ja eine sehr eingeschränkte soziale Kommunikation und Interaktion.

5) Jede Person hier im Forum hat Eigenarten
Manchmal sind sie unverständlich oder lästig, erescheinen gar unverschämt oder dumm.

Schade, dass du mich missverstehen konntest. Aber so ist auch das Leben.

Danke.

PSS: Warum tue ich das bloss? Ist das die Grippe oder was? Oder sind Drachinnen auch ab und an freundlich?
rommi
 2008-12-17 15:36
#117317 #117317
User since
2005-03-03
54 Artikel
BenutzerIn
[default_avatar]
Hallo GwenDragon und alle anderen Moderatoren die jetzt mitlesen,

mit meinen bescheidenen Boardmitteln versuche ich mal den Inhalt deiner Antwort wieder zugeben.

1. Du bist mir nicht böse!
2. Du hast mich ganz doll lieb!

Also Handschüttel und nach gutem alten Hexenbrauch drehen wir irgendwann einmal zusammen eine Runde auf dem unseren Besen! Ich glaube die FAQ-Seite habe ich mal vor Jahren durchgelesen aber seither nie wieder. Gerade in einer so normierten effizienzierten Gesellschaft wie der unsrigen (oder heisst das "unsinnigen"?) habe ich gedacht wir haben alle den gleichen Browser :-))

Nein, nein ich werde mir mal die FAQ-Seite wiedermal durchlesen und gelobe Besserung. Ich weiss nicht ob dir das Antivirusprogramm von MackAffe gegen deine Grippe hilft aber notfalls musst du deinen PC halt mal in Ruhe lassen und dich ins Bett legen. Auch richtig gemachte Wadenwickel sollen gegen Fieber Wunder wirken!

Grüsse, rommi

PS: Weiss jemand noch ne Lösung für das Problem? Ist mir zum erstenmal aufgefallen dass Buttons, Checkboxes etc., wenn sie in einem Label integriert sind, einfach verschwinden wenn man mal ein anderes Fenster kurz über das TK-Fenster drüber geschoben hat! Also ich benutze WinXP-Prof und Perl v5.10.0 aber da kanns doch nicht daran liegen, oder?
#Kein Kommentar
 2008-12-17 18:03
#117325 #117325
User since
2007-06-09
575 Artikel
HausmeisterIn
[default_avatar]
benutze bei der erstellung von dem canvas die option -highlightthickness und setze sie auf 0. das sollte den ungewollten rand vermeiden.
Gerade weil wir alle in einem Boot sitzen, sollten wir froh sein, dass nicht alle auf unserer Seite sind
rommi
 2008-12-17 20:01
#117332 #117332
User since
2005-03-03
54 Artikel
BenutzerIn
[default_avatar]
Hi, dat wars -- vielen Dank, gruss rommi
<< >> 8 Einträge, 1 Seite



View all threads created 2008-12-17 01:14.