kleine frage
kleine frage
ich habe das programm noch nicht lange und kenne noch nicht so viele Codes und so.
Ich will gerne ein Frage-spiel in der Art von wer wird milionär machen.
es soll sich ein fenster öffnen in dem die frage und die antwortmöglichkeiten stehen und darunter sollen zwei buttons für die antwortmöglichkeiten stehen.
ich habe jetzt ein fenster, das meine wünschen entspricht mit dem visual-designer gemacht und nun weiß ich nicht wie ich es hinkriege, das wenn man den richtigen knopf drückt, das sich dann das nächste fenster öffnet?
Bitte helft mir
Ich will gerne ein Frage-spiel in der Art von wer wird milionär machen.
es soll sich ein fenster öffnen in dem die frage und die antwortmöglichkeiten stehen und darunter sollen zwei buttons für die antwortmöglichkeiten stehen.
ich habe jetzt ein fenster, das meine wünschen entspricht mit dem visual-designer gemacht und nun weiß ich nicht wie ich es hinkriege, das wenn man den richtigen knopf drückt, das sich dann das nächste fenster öffnet?
Bitte helft mir
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Geh mal auf PureArea.net oder Robsite.de und arbeite in paar Tutorials
durch. Das erstellen eines Fenster mit dem Designer bringt zwar ein schnelles
Erfolgserlebnis, bringt Dich dem Programmieren aber nicht näher!
Solange Du nicht programmieren kannst, solltest Du die Finger vom Visual
Designer lassen.
durch. Das erstellen eines Fenster mit dem Designer bringt zwar ein schnelles
Erfolgserlebnis, bringt Dich dem Programmieren aber nicht näher!
Solange Du nicht programmieren kannst, solltest Du die Finger vom Visual
Designer lassen.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
PB ist kein Click&Go baukasten.
schau mal in die Help zu WaitWindowEvent, dort findest du einen grundsätzlichen Eventloop demonstriert.
auf die events mit den buttons kannst du dann dementsprechend reagieren.
btw. würde ich dir eher empfehlen,
den text der frage in dem textgadget und die beschriftungen der buttongadgets zu ändern,
als extra ein neues fenster aufzumachen, auf dem du dann auch
wieder text und buttons an den selben stellen erstellen müßtest....
schau mal in die Help zu WaitWindowEvent, dort findest du einen grundsätzlichen Eventloop demonstriert.
auf die events mit den buttons kannst du dann dementsprechend reagieren.
btw. würde ich dir eher empfehlen,
den text der frage in dem textgadget und die beschriftungen der buttongadgets zu ändern,
als extra ein neues fenster aufzumachen, auf dem du dann auch
wieder text und buttons an den selben stellen erstellen müßtest....
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
- PureBasic4.0
- Beiträge: 785
- Registriert: 29.10.2006 17:26
- Wohnort: 127.0.0.1
ich habe mich mal in diesem Thread mit verschiedenen Leuten um den besten Code gestritten. Ich denke, das hier kommt deinem Wunsch sehr nahe.
//edit: Willkommen im PureBoard
//edit: Willkommen im PureBoard

PB 4.50 RC1 + Ubuntu 10.04 LTS + Windows 7 x64
- Dark Skillu
- Beiträge: 103
- Registriert: 18.03.2007 15:03
Das Thema war von mirPureBasic4.0 hat geschrieben:ich habe mich mal in diesem Thread mit verschiedenen Leuten um den besten Code gestritten. Ich denke, das hier kommt deinem Wunsch sehr nahe.
//edit: Willkommen im PureBoard

Du kannst es einfach so machen wie in einer der dort gepostet Lösungen oder kannst mein Quiz benutzen , habe ich später selber gemacht , gibt sicher was einfacheres aber funktioniert. Die Abfrage welcher Button gedrückt wurde kannst aber auch mit Select machen.
Code: Alles auswählen
Procedure Falsch()
MessageRequester("Falsch","Diese Antwort war leider Falsch." +Chr(10)+ "Bitte versuchen sie es erneut.")
Quit=1
EndProcedure
;Schriftarten
Global FontID1
FontID1 = LoadFont(1, "Comic Sans MS", 14)
Global FontID2
FontID2 = LoadFont(2, "Comic Sans MS", 11)
Global FontID3
FontID3 = LoadFont(3, "Comic Sans MS", 13, #PB_Font_Bold)
Global FontID4
FontID4 = LoadFont(4, "Comic Sans MS", 10, #PB_Font_Bold)
If OpenWindow(0, 394, 177, 351, 300, "Quiz", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget | #PB_Window_TitleBar ) And CreateGadgetList(WindowID(0))
TextGadget(1, 15, 15, 315, 45, "Was ist die Hauptstadt von Deutschland?", #PB_Text_Center)
SetGadgetFont(1, FontID3)
ButtonGadget(2, 45, 75, 255, 30, "Bonn")
SetGadgetFont(2, FontID4)
ButtonGadget(3, 45, 120, 255, 30, "München")
SetGadgetFont(3, FontID4)
ButtonGadget(4, 45, 165, 255, 30, "Berlin")
SetGadgetFont(4, FontID4)
ButtonGadget(5, 45, 210, 255, 30, "Hamburg")
SetGadgetFont(5, FontID4)
TextGadget(6, 60, 255, 210, 45, "Copyright by DarkSkillu (c) 2007", #PB_Text_Center)
SetGadgetFont(6, FontID4)
EndIf
Repeat
EventID=WaitWindowEvent()
If EventID=#PB_Event_CloseWindow
Quit=1
EndIf
If EventID = #PB_Event_Gadget
GadgetID= 1
If EventGadget()=2
Falsch()
EndIf
If EventGadget()=3
Falsch()
EndIf
If EventGadget()=4
MessageRequester("Richtig","Diese Antwort ist Richtig!")
If OpenWindow(0, 394, 177, 351, 300, "Quiz", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget | #PB_Window_TitleBar ) And CreateGadgetList(WindowID(0))
TextGadget(7, 15, 15, 315, 45, "Was ist die Hauptstadt von England?", #PB_Text_Center)
SetGadgetFont(7, FontID3)
ButtonGadget(8, 45, 75, 255, 30, "London")
SetGadgetFont(8, FontID4)
ButtonGadget(9, 45, 120, 255, 30, "Manchester")
SetGadgetFont(9, FontID4)
ButtonGadget(10, 45, 165, 255, 30, "Liverpool")
SetGadgetFont(10, FontID4)
ButtonGadget(11, 45, 210, 255, 30, "Sheffield")
SetGadgetFont(11, FontID4)
TextGadget(12, 60, 255, 210, 45, "Copyright by DarkSkillu (c) 2007", #PB_Text_Center)
SetGadgetFont(12, FontID4)
EndIf
Repeat
EventID=WaitWindowEvent()
If EventID=#PB_Event_CloseWindow
Quit=1
EndIf
If EventID = #PB_Event_Gadget
GadgetID= 1
If EventGadget()=8
MessageRequester("Richtig","Diese Antwort ist Richtig!." +Chr(10)+ "Mein Quiz ist leider hier schon zu Ende :( ")
Quit=1
EndIf
If EventGadget()=9
Falsch()
EndIf
If EventGadget()=10
Falsch()
EndIf
If EventGadget()=11
Falsch()
EndIf
EndIf
Until Quit=1
EndIf
If EventGadget()=5
Falsch()
EndIf
EndIf
Until Quit=1
Ich benutze PureBasic 4.0.
- PureBasic4.0
- Beiträge: 785
- Registriert: 29.10.2006 17:26
- Wohnort: 127.0.0.1
- Dark Skillu
- Beiträge: 103
- Registriert: 18.03.2007 15:03
Joa habe schon was dazu gelernt
Finde aber die Select Methode besser als immer mit IF-Abzufragen welcher Button gedrückt wurde ...
Habe eine Frage dazu:Case und die folgende Zahl ist die Gadgetnummer? Wie ist es wenn ich Konstanten benutze?
Müsste der Code dann so aussehen?
Habs noch nicht im Editor ausprobiert obs so funzt ... Habe bisher noch nie Konstanten bei Gadgets benutzt und die immer nur durch nummeriert .

Code: Alles auswählen
Event=WaitWindowEvent()
Select Event
Case #PB_Event_Gadget
Select EventGadget()
Case 1
EndSelect
EndSelect
Code: Alles auswählen
#Button1
Code: Alles auswählen
Event=WaitWindowEvent()
Select Event
Case #PB_Event_Gadget
Select EventGadget()
Case #Button1
EndSelect
EndSelect
Ich benutze PureBasic 4.0.