Seite 1 von 8
Programmerstellung mit dem formdesigner
Verfasst: 06.06.2013 21:38
von derschutzhund
Hallo zusammen,
bin absoluter Purebasic-Neuling und teste zur Zeit ob das Programm für meine Anforderungen geeignet ist.
Habe mir die aktuelle Version 5.11 für Windows und Linux geladen.
Beide Versionen konnte ich starten was schon mal gut ist.
Die Oberfläche ist auch auf deutsch.
Jetzt wollte ich ein erstes GUI-Programm erstellen.
Also mit dem Formdesigner einen Button und ein Textfeld eingefügt.
Jetzt geht es los: Wie kann ich durch drücken des Buttons den Text im Textfeld ändern?
Ich kann zwar zwischen der Grafik- und Programoberfläche hin und her schalten aber so bald ich mein Testprogramm gestartet habe ist der von Hand eingetragene code wieder weg.
In Delphi oder Gambas ist es so, dass man z.B. auf den neu eingefügten Button klickt und dann automatisch in die Codeansicht kommt, eine neue Prozedure erzeugt wurde und man dann einfach den code eintragen kann.
Das läuft hier wohl anders oder?
LG
derschutzhund
Re: Programmerstellung mit dem formdesigner
Verfasst: 06.06.2013 22:15
von The_Dark_Zim-.-
Wenn ich das richtig verstanden habe erstellt man sich immer mindestens zwei Datein. eine für die Form und eine für den Programablauf.
Hast du dir schonmal in der Hilfe das Einsteiger Kapitel angesehen ich meine da wird auch ein wenig auf die GUI erstellung eingegangen.
Habs mir jetzt nicht durchgelesen, aber evlt. hilft es dir ja.
http://www.purearea.net/pb/german/manual/Reference.html
Edit:
Also ich mache das im mom so das ich mir eine Form erstelle und dann bei Ereignis-Procedure eine Procedure rein schreibe(belibiger name) z.B. B_test.
und dann in meiner Haupt datei sowas schreibe:
Code: Alles auswählen
IncludeFile("Form.pbf")
Procedure B_test(EventType)
MessageRequester("Meldung", "Test")
EndProcedure
OpenWindow_0()
Repeat
Run = Window_0_Events(WaitWindowEvent(25))
Until Run = #False
End
Re: Programmerstellung mit dem formdesigner
Verfasst: 06.06.2013 22:53
von derschutzhund
Es gibt dazu ein Video in Youtube allerdings für die Version 4 und da sieht es alles ein Wenig anders aus.
Ist schon sehr umständlich, wenn man selbst zwei Dateien erstellen muss!
In der Anleitung habe ich dazu nichts gefunden.
Hier geht es mehr um die Programmierung der Buttons etc. von Hand.
Nach deiner Anleitung habe ich etwas ans Laufen bekommen.
Besten Dank erst mal!
LG
derschutzhund
Re: Programmerstellung mit dem formdesigner
Verfasst: 06.06.2013 23:06
von derschutzhund
Wollte jetzt den Text eines Buttons oder Textfeld ändern wenn der Button gedrückt wird.
Leider wird der Button nicht gefunden obwohl er über
ja eingebunden ist!
Oder ist der Befehl falsch?
Re: Programmerstellung mit dem formdesigner
Verfasst: 06.06.2013 23:16
von WPö
Moin!
Willkommen im Forum, Wauwau!
Hilfe->TextGadget hat geschrieben:Der Inhalt des Gadgets kann mit dem Befehl SetGadgetText() verändert werden
Versuche es mit diesem Befehl und es wird klappen.
Gruß - WPö
Re: Programmerstellung mit dem formdesigner
Verfasst: 06.06.2013 23:21
von derschutzhund
Leider funktioniert es nicht!
Fehlermeldung: Konstante nicht gefunden: #Button_0
Re: Programmerstellung mit dem formdesigner
Verfasst: 06.06.2013 23:29
von Derren
Button_0 ohne "#". Woher nimmst du die Raute? Die kommt doch nirgends im Code vor.
Der Visualeditor ist nicht so toll. Das wird immer wieder bemängelt. Die meisten basteln ihre GUIs lieber "von Hand" im Code. Es gibt auch tolle Includes, die die Größe der Gadgets automatisch ändern. Solche Sachen muss man trotz Visualdesigner immernoch von Hand programmieren (oder eben besagte Includes verwenden).
WPö hat geschrieben:Willkommen im Forum, Wauwau!
Nicht dein Ernst, oder?!

Re: Programmerstellung mit dem formdesigner
Verfasst: 06.06.2013 23:32
von WPö
Hm. Ich weiß nicht, was in der testprog.pbf steht. Da finden wir dann den richtigen Namen der Gadgetnummer. Schieb die doch mal hier rein.
Gruß - WPö
Re: Programmerstellung mit dem formdesigner
Verfasst: 06.06.2013 23:34
von WPö
Derren hat geschrieben:WPö hat geschrieben:Willkommen im Forum, Wauwau!
Nicht dein Ernst, oder?!

Doch, absolut. Was dagegen?
Re: Programmerstellung mit dem formdesigner
Verfasst: 06.06.2013 23:38
von Derren
WPö hat geschrieben:Hm. Ich weiß nicht, was in der testprog.pbf steht. Da finden wir dann den richtigen Namen der Gadgetnummer. Schieb die doch mal hier rein.
Gruß - WPö
Bei einer Form mit nur einem Button und einem StringGadget steht folgendes in der "Testprog.pbf" (kann man auch leicht selber rausfinden). Nur die Positionen und Dimensionen sind logischerweise verschieden, tun hier aber nichts zur Sache.
Code: Alles auswählen
Global Window_0
Global Button_0, String_0
Procedure OpenWindow_0()
Window_0 = OpenWindow(#PB_Any, 0, 0, 600, 400, "", #PB_Window_SystemMenu)
Button_0 = ButtonGadget(#PB_Any, 80, 40, 190, 50, "")
String_0 = StringGadget(#PB_Any, 300, 160, 110, 70, "")
EndProcedure
Procedure Window_0_Events(event)
Select event
Case #PB_Event_CloseWindow
ProcedureReturn #False
Case #PB_Event_Menu
Select EventMenu()
EndSelect
Case #PB_Event_Gadget
Select EventGadget()
EndSelect
EndSelect
ProcedureReturn #True
EndProcedure
Erweitert werden muss das Programm so:
Code: Alles auswählen
Select EventGadget()
Case Button_0
SetGadgetText(String_0,"mein Text")
EndSelect
Moderation: Privatgezänk entfernt.