Fenstergröße beim Borderless ändern
AND51 hat schon recht, die beiden die er meinte funktioniern zusammen nichtBiedermeier hat geschrieben: ach übrigends: AND51: die konstanten sind nicht wie feuer und wasser, denn nur zusammen funktionierts! feuer und wasser funktioniert funktioneirt zusammen nicht (gut)
solange man die #PB_Window_BorderLess da hat, funktioniert #PB_Window_ResizeGadget nicht, #WS_SIZEBOX anscheinend schon
Ja, ich wollte damit sagen, dass ich in PB ohne weiteres kein rahmenloses fenster (borderless) erstellen kann, und möchte, das man es in seiner größe verändern kann (resize).
#WS_SizeBOX kannte ich auch noch nicht, wenn's geht, ok. Aber mit dem PB-Konstanten, da habe ich schon Recht.
#WS_SizeBOX kannte ich auch noch nicht, wenn's geht, ok. Aber mit dem PB-Konstanten, da habe ich schon Recht.
PB 4.30
Code: Alles auswählen
Macro Happy
;-)
EndMacro
Happy Endist ja mehr als verständlich.Biedermeier hat geschrieben:..hab mich für den kurzen code entschieden![]()
jetzt muß nur noch jemand zeigen, wie man mit wenig code eine minimale fenster-breite und -höhe und die breite des anfass-randes festlegen kann, um damit meinen code zu beerdigen. (da gibts doch bestimmt was)
<edit>
kann mir mal jemand sagen wieso SetCursor_(hCursor) sich nicht dauerhaft auswirkt? nach neuen events wird der ursprüngliche cursor immer wieder hergestellt.
Bitte sehr.#NULL hat geschrieben: jetzt muß nur noch jemand zeigen, wie man mit wenig code eine minimale fenster-breite und -höhe und die breite des anfass-randes festlegen kann, um damit meinen code zu beerdigen. (da gibts doch bestimmt was)
Code: Alles auswählen
Procedure HitTest(hCtl,lParam)
Protected pt.POINT
Protected rc.RECT
pt\x = LoWord(lParam)
pt\y = HiWord(lParam)
ScreenToClient_(hCtl,pt)
GetWindowRect_(hCtl,rc)
If pt\y < 4 And pt\x < 4
Result = #HTTOPLEFT
ElseIf pt\y < 4 And pt\x >= (rc\right-rc\left-4)
Result = #HTTOPRIGHT
ElseIf pt\y >=(rc\bottom-rc\top-4) And pt\x >= (rc\right-rc\left-4)
Result = #HTBOTTOMRIGHT
ElseIf pt\x < 4 And pt\y >= (rc\bottom -rc\top - 4)
Result = #HTBOTTOMLEFT
ElseIf pt\y < 4
Result = #HTTOP
ElseIf pt\x < 4
Result = #HTLEFT
ElseIf pt\x >= (rc\right -rc\left - 4)
Result = #HTRIGHT
ElseIf pt\y >= (rc\bottom -rc\top - 4)
Result = #HTBOTTOM
Else
Result = #HTCAPTION
EndIf
ProcedureReturn Result
EndProcedure
Procedure WCB(wnd,msg,wparam,lparam)
Result = #PB_ProcessPureBasicEvents
Select msg
Case #WM_NCHITTEST
Result = HitTest(wnd,lParam)
Case #WM_GETMINMAXINFO
*MinMax.MINMAXINFO = lParam
*MinMax\ptMinTrackSize\x = 195
*MinMax\ptMinTrackSize\y = 260
ProcedureReturn 0
EndSelect
ProcedureReturn Result
EndProcedure
If OpenWindow(0, 100, 200, 195, 260, "PureBasic Window", #PB_Window_BorderLess)
If CreateGadgetList(WindowID(0))
ButtonGadget(1, 10,10,80,24,"Ende")
TextGadget(2, 10, 40,180,200,"Schieb mich, vergroessere mich")
EndIf
SetWindowCallback(@WCB())
Repeat
EventID = WaitWindowEvent()
Select EventID
Case #PB_Event_Gadget
Select EventGadget()
Case 1: Quit = 1
EndSelect
Case #PB_Event_CloseWindow
Quit = 1
EndSelect
Until Quit = 1
EndIf
End
Gruss Andreas
- 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
Falls jemand die UserLib von Andreas nicht hat, kann er am Anfang noch folgende Macros einfügen, damit es läuft:
Code: Alles auswählen
Macro HiWord(long)
(long >> 16) & $FFFF
EndMacro
Macro LoWord(long)
long & $FFFF
EndMacroPureBasic 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.

-
Kaeru Gaman
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
aber kla doch...Biedermeier hat geschrieben:... feuer und wasser funktioniert [] zusammen nicht (gut)
Gandalf wäre ohne Feuer und Wasser nie von dem Grauen zu dem Weißen aufgestiegen....
die kombination konträrer elemente ist in Magie und Alchemie unverzichtbar.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
> Gandalf wäre ohne Feuer und Wasser nie von dem Grauen zu dem Weißen aufgestiegen....
> die kombination konträrer elemente ist in Magie und Alchemie unverzichtbar.
Oh Got, was hab ich angerichtet?
Ist das wirklich so lustig, was ich gesagt habe? 
> die kombination konträrer elemente ist in Magie und Alchemie unverzichtbar.
Oh Got, was hab ich angerichtet?
PB 4.30
Code: Alles auswählen
Macro Happy
;-)
EndMacro
Happy End
