Windows TGadget "refreshen" ???
Übersicht

PyraelBetreff: Windows TGadget "refreshen" ??? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo zusammen,
nachdem mir bei meienr ersten Frage so erfolgreich geholfen wurde, habe ich mir meinem kleinen Programm weitergemacht und hänge nun an einer Stelle an der ich erneut von Euch hilfe brauche. folgendes habe ich gemacht: 1. via tgadget ein Windowsfenster geöffnet 2. an den oberen Rand 4 Schaltflächen mit createbutton gezaubert 3. dann ein paar eingabefelder via createtextfield platziert 4. am unteren Fensterrand ein logo (bild) anzeigen lassen nun kommt mein problem: der Bereich zwischen den 4 button und dem logo soll der variable Eingabebereich sein, damit man je nachdem was man ausgewählt hat (clickbutton) entsprechend andere Textfelder für die Eingabe angezeigt bekommt. Ich schaffe es zwar beim ersten drücken einer schaltfläche die dazu gehörenden Textfelder in das fenster zu schreiben, aber wenn ich dann eine andere schaltfläche drücke, werden die bereits dargestellten textfelder nicht "gelöscht"..... gibt es eine möglichkeit das Windosfenster wieder in seinen Startzustand zurückzusetzen?? oder bereits gezeichnete Textfelder wieder aus dem Fenster zu löschen?? ich hoffe ich konnte mein Problem einigermaßen beschreiben......für Eure Hilfe bin ich schon jetzt dankbar!!! viele Grüße Pyrael |
||
![]() |
Midimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
du kannst jedes Gadget mit HideGadget unsichtbar machen. | ||
jsp |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Da gibt es sicher viele verschiedene Varianten, eine Möglichkeit wäre den Bereich zwischen deinen Buttons und dem Logo mit einem Panel pro Button zu füllen. Auf diesem Panel legst du dann alle anderen Gadgets drauf die in diesem Moment angezeigt werden sollen.
Also Button1 zeigt Panel1 an, Button2 zeigt Panel2 usw. Wenn man mit HideGadget ein Panel-Gadget unsichtbar macht, wirkt sich das auch auf alle Gadgets auf dem Panel aus, man kann so mit einem Befehl alle Gadgets auf einmal verschwinden lassen. Mit ShowGadget wird das benötigte dann wieder angezeigt... Der Vorteil mit Panels als Container ist auch praktisch wenn man das ganze später noch etwas verschieben möchte, dann braucht man nur das Panel mit neuen x,y Koordinaten versehen und ist schon fertig. Ich bin mir nicht sicher was du mit "clickbutton" meinst, ansonsten würde sich sicher ein Radiobutton oder ein Pushbutton mit Radio Style eignen. Auch ein Tabber hört sich nach deiner Beschreibung brauchbar an. Wenn der Platz knapp ist und man möchte ein paar mehr Wahlmöglichkeiten einbauen, eignet sich auch ein Slider mit einem Label darüber. Slider hat so viele Werte wie man "Knöpfe" braucht und der Label darüber zeigt an was gerade selektiert wurde. (nur so ein paar Überlegungen...) |
||
Logic Gui Professional a Gui Designer for MaxGui |
Pyrael |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
vielen Dank für die flotte Antwort, aber ich hab wieder mal ne Nachfrage ![]() mit HideGadget wird also das Gadget "nur" versteckt und wieder "hervorgeholt" ?? mir geht es ja eigentlich mehr darum, den Inhalt des Textgadget zu löschen...also praktisch zu reseten. ich mach von meinem kleinen Programm mal gleich zwei screenshots dann erklärt es sich bestimmt besser... aber wenn ich das von euch richtig verstanden habe, wäre es möglich für jedes "event" von "buttonpush" die entsprechenden TextGadgets auf einem anderen Panel zu "zeichnen" und dann mehrer Panel exakt übereinanderzulegen (mit jeweils unterschiedlichen Textgadgets) und dann je nach event immer nur das benötigte panel auf "sichtbar" zu setzen und die anderen unsichtbar zu machen?? hier noch ein Bild wie das Programm aussieht wenn noch keine Schaltfläche gedrückt wurde: ![]() und dann so, wenn man auf die Schaltfläche "Buch" drückt ![]() soweit so gut, wenn ich abe nun auf die Schaltfläche CD drücken würde, müssen die Felder wieder leer sein... |
||
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du die selben Felder verwenden willst, musst du mit SetGadgetText arbeiten. | ||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
jsp |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Zitat: mit HideGadget wird also das Gadget "nur" versteckt und wieder "hervorgeholt" ??
genau Zitat: mir geht es ja eigentlich mehr darum, den Inhalt des Textgadget zu löschen...also praktisch zu reseten.
wie Xeres bereits geschrieben hat via SetGadgetText Zitat: wenn ich das von euch richtig verstanden habe, wäre es möglich für jedes "event" von "buttonpush" die entsprechenden TextGadgets auf einem anderen Panel zu "zeichnen" und dann mehrer Panel exakt übereinanderzulegen (mit jeweils unterschiedlichen Textgadgets) und dann je nach event immer nur das benötigte panel auf "sichtbar" zu setzen und die anderen unsichtbar zu machen??
ja, bis auf das die Gadgets nur einmal am Anfang erzeugt werden und später dann nur angezeigt oder versteckt werden, also nicht mehr neu erstellt werden. |
||
Logic Gui Professional a Gui Designer for MaxGui |
Pyrael |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Xeres hat Folgendes geschrieben: Wenn du die selben Felder verwenden willst, musst du mit SetGadgetText arbeiten.
...und da liegt genau mein Problem... Code: [AUSKLAPPEN] SetGadgetText(EINGABEFELD01, " ")
macht mir zwar die Zeile leer, aber hat dann als erstes im jedem Feld ein Leerzeichen zur Folge...schöner wäre es, wenn das gadget wieder im Ursprungszustand wäre... ..aber ich glaube ich probier das mal mit dem Panel, das klingt spannend |
||
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich verstehe nicht ganz - gibt es ein Problem mit leeren Strings?
Code: [AUSKLAPPEN] SetGadgetText(EINGABEFELD01, "")
|
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
Pyrael |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Xeres hat Folgendes geschrieben: Ich verstehe nicht ganz - gibt es ein Problem mit leeren Strings?
Code: [AUSKLAPPEN] SetGadgetText(EINGABEFELD01, "") komisch....habs gerade nochmal ausprobiert und es geht mit den ""... ich war mir sicher, dass als ich es vorher schon ausprbiert hatte es nicht funzte...aber egal, nun macht es was es soll......danke für die Hilfe!!! einen schönen Abend noch zusammen!! |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group