Mini Fenster ?

Für allgemeine Fragen zur Programmierung mit PureBasic.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

wenn du den editor im Fullscreen machst, musst du dich dafür schon mit der mausabfrage
auseinandersetzen, und wie man sowas wie nen button aufm screen realisieren kann, usw.

wenn du dann das eigentlich spiel machst, hast du die dinge schon drauf.


aber wenn du jetzt den editor im fenster machst, lernst du ganz wunderbare
sachen über fenster-anwendungen, wie zum bleistift MDI-childs...

wenn du dich dann ans game setzt, dann denkst du
"ach du kagge, wie schwierig isn das" und
"argl.. das is ja ganz was anderes alsn fenster" und
"oh nein, wie mach ich das jetzt, im fenster würd ichs so machen, aber hier?"
usw.. usf...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Fusselohr
Beiträge: 236
Registriert: 02.04.2007 10:43
Kontaktdaten:

Beitrag von Fusselohr »

Okay ^^. Ich glaub da ich immer noch einige schwierigkeiten habe, wäre deine Lösung wirklich besser und bei Bedarf kann ich ja noch aus meinem Map-Editor ein Game-Editor machen. <) So in 2-3 Jahren :P.
Mein Projekt besteht immernoch und wächst stündlich.

Du willst die Entwicklung mitverfolgen ?
Dann besuche jetzt den Entwicklungsblog unter
http://rpg-fire-games.blogspot.com/
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

Hmm, man könnte ein ToolWindow mit dem MDI gadget erstellen was auch immer aktiv bleibt aber durch #WS_CHILD flag kann man es nicht aus dem Bereich des Parent-Fensters raus bewegen.

Ehrlich gesagt, auch wenns für Fussel vielleicht uninteresant ist würde ich das gerne endlich mal versuchen. Ich hab mich schon immer über den komischen Klassennamen des ToolWindow's in MS Paint gewundert: "Afx:1000000:8:10011:0:0". Ich denke 'Afx' ist die Bezeichnung für ne' bestimmete Lib womit mann solche speziellen Fenster erstellen kann. Außerdem zeigen sie beim verschieben diesen dünnen schwarzen Rahmen womit man das ToolWindow überall andocken kann.
Windows 10 Pro, 64-Bit / Outtakes | Derek
Benutzeravatar
milan1612
Beiträge: 810
Registriert: 15.04.2007 17:58

Beitrag von milan1612 »

Mach doch einfach ein normales Fenster mit ToolWindow Style und dann:

Code: Alles auswählen

SetParent_(hwndChild, hwndNewParent)
Bin nur noch sehr selten hier, bitte nur noch per PN kontaktieren
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Fluid Byte hat geschrieben:Ehrlich gesagt, auch wenns für Fussel vielleicht uninteresant ist würde ich das gerne endlich mal versuchen. Ich hab mich schon immer über den komischen Klassennamen des ToolWindow's in MS Paint gewundert: "Afx:1000000:8:10011:0:0". Ich denke 'Afx' ist die Bezeichnung für ne' bestimmete Lib womit mann solche speziellen Fenster erstellen kann. Außerdem zeigen sie beim verschieben diesen dünnen schwarzen Rahmen womit man das ToolWindow überall andocken kann.
Falls du da mehr weisst , lass es mich bitte wissen :)
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

milan1612 hat geschrieben:Mach doch einfach ein normales Fenster mit ToolWindow Style und dann:

Code: Alles auswählen

SetParent_(hwndChild, hwndNewParent)
Dann brauch er doch keine API sondern setzt beim erstellen des Fensters einfach das ParentHandle. Aber das ist nicht das gleiche da beim anklicken des jeweils anderen Fensters das eine wieder den Fokus verliert.
Falls du da mehr weisst , lass es mich bitte wissen
Yo gerne, werde mich mal im Laufe des Tages schlau machen. Ich hoffe bloss es gibt ne Art Bibliothek denn ich hab kein Bock das händisch zu machen. :freak:
Windows 10 Pro, 64-Bit / Outtakes | Derek
Benutzeravatar
milan1612
Beiträge: 810
Registriert: 15.04.2007 17:58

Beitrag von milan1612 »

Fluid Byte hat geschrieben:
milan1612 hat geschrieben:Mach doch einfach ein normales Fenster mit ToolWindow Style und dann:

Code: Alles auswählen

SetParent_(hwndChild, hwndNewParent)
Dann brauch er doch keine API sondern setzt beim erstellen des Fensters einfach das ParentHandle. Aber das ist nicht das gleiche da beim anklicken des jeweils anderen Fensters das eine wieder den Fokus verliert.
Das mit dem Parent Handle hatte ich glatt vergessen :D
Allerdings wirst du das Fokus-Verlieren wohl nicht verhindern können
Bin nur noch sehr selten hier, bitte nur noch per PN kontaktieren
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Das nicht , aber man kann das neuzeichnen des Rahmens verhindern.

Code: Alles auswählen

Procedure win_main_cb_(hWnd,uMsg,wParam,lParam)
   
   If uMsg = #WM_NCACTIVATE 
      ProcedureReturn DefWindowProc_(hWnd, uMsg, 1, lParam) 
   EndIf
   
   ProcedureReturn #PB_ProcessPureBasicEvents
EndProcedure

hWnd = OpenWindow(0,#PB_Ignore,#PB_Ignore,300,300,"leer")
SetWindowCallback(@win_main_cb_(),0)

Repeat
	event = WaitWindowEvent()
   
Until event = #PB_Event_CloseWindow
So in etwa muesste das auch mit dem Toolwindow machbar sein.
Antworten