IsWindowSizeGadget(WindowID)

Hier könnt Ihr gute, von Euch geschriebene Codes posten. Sie müssen auf jeden Fall funktionieren und sollten möglichst effizient, elegant und beispielhaft oder einfach nur cool sein.
Benutzeravatar
Scarabol
Beiträge: 1427
Registriert: 30.11.2005 21:00

IsWindowSizeGadget(WindowID)

Beitrag von Scarabol »

Hi Leute,

hab mal eine Procedure geschrieben die überprüft ob ein Fenster einen SizeGadget besitzt, also die Größe vom Benutzer geändert werden kann.

Würde mich freuen, wenn ihn der ein oder andere Ergänzen bzw. prüfen könnte...

Code: Alles auswählen

Procedure IsWindowSizeGadget(WindowID)
  style = GetWindowLong_(WindowID, #GWL_STYLE)
  If style >> 19 = $298
    ProcedureReturn 1
  Else
    ProcedureReturn 0
  EndIf
EndProcedure

win1 = OpenWindow(1, 100, 100, 200, 200, "", #PB_Window_SizeGadget)

win2 = OpenWindow(2, 100, 400, 200, 200, "")

win3 = OpenWindow(3, 400, 100, 200, 200, "")

Debug WindowSizeGadget(win1)
Debug WindowSizeGadget(win2)
Debug WindowSizeGadget(win3)
Gruß
Scarabol
Abgeschlossen Projekte:
Schreibmaschine, Bildschirmlupe, Wings3DtoOgreMeshConverter
Watch: PureArea

PB-V: 4
WinXP
Benutzeravatar
milan1612
Beiträge: 810
Registriert: 15.04.2007 17:58

Beitrag von milan1612 »

Ich hab ehrlich gesagt keine Ahnung wo das denn zum Einsatz käme...
Aber, wer's braucht :allright:

PS: Ich würde mal in deinem Beispiel auch die richtige Funktion aufrufen :lol:
Bin nur noch sehr selten hier, bitte nur noch per PN kontaktieren
Benutzeravatar
X0r
Beiträge: 2770
Registriert: 15.03.2007 21:47
Kontaktdaten:

Beitrag von X0r »

Syntax Error --> LOL :lol: :lol:
Benutzeravatar
Tafkadasom2k5
Beiträge: 1578
Registriert: 13.08.2005 14:31
Kontaktdaten:

Re: IsWindowSizeGadget(WindowID)

Beitrag von Tafkadasom2k5 »

Scarabol hat geschrieben:Würde mich freuen, wenn ihn der ein oder andere Ergänzen bzw. prüfen könnte...
Wäre ein IsStyle nicht angebrachter? In Windows werden überall Styles genutzt über Konstanten, und dann ist es variabler.

Code: Alles auswählen

Procedure IsStyle(WindowID, CheckStyle)
  style = GetWindowLong_(WindowID, #GWL_STYLE)
  Result = style AND Checkstyle
  If Result = Checkstyle
    ProcedureReturn 1
  EndIf

  style = GetWindowLong_(WindowID, #GWL_EXSTYLE)
  Result = style AND Checkstyle
  If Result = Checkstyle
    ProcedureReturn 1
  EndIf

  ProcedureReturn 0
EndProcedure
OpenNetworkConnection() hat geschrieben:Versucht eine Verbindung mit dem angegebenen Server aufzubauen. 'ServerName$' kann eine IP-Adresse oder ein voller Name sein (z.B.: "127.0.0.1" oder "ftp.home.net").
php-freak hat geschrieben:Ich hab die IP von google auch ned rausgefunden!
Benutzeravatar
Scarabol
Beiträge: 1427
Registriert: 30.11.2005 21:00

Beitrag von Scarabol »

@Bug
Wollte nur testen ob ihr den Code auch wirklich testet ;-)

@Tafka
Die Idee ist nicht schlecht aber wie kann ich dann überprüfen ob das Fenster einen SizeGadget hat?
Mit #WS_SIZEBOX, #WS_THICKFRAME und #PB_Window_SizeGadget funktioniert es nicht...

Gruß
Scarabol
Abgeschlossen Projekte:
Schreibmaschine, Bildschirmlupe, Wings3DtoOgreMeshConverter
Watch: PureArea

PB-V: 4
WinXP
Benutzeravatar
X0r
Beiträge: 2770
Registriert: 15.03.2007 21:47
Kontaktdaten:

Beitrag von X0r »

>Wollte nur testen ob ihr den Code auch wirklich testet
Hätte ich jetzt auch gesagt :lol:
Benutzeravatar
Tafkadasom2k5
Beiträge: 1578
Registriert: 13.08.2005 14:31
Kontaktdaten:

Beitrag von Tafkadasom2k5 »

Mh #WS_THICKFRAME should do the trick...Kann aber sein, dass PB da intern anders mit umgeht. Setz den #WS_THICKFRAME flag mal Manuell- also nicht #PB_IrgendwasSizeGadget sondern setz den parameter dort. Wenn da snicht geht, setze ihn nach dem Erstellen mit SetWindowLong_(etc.pp.).
OpenNetworkConnection() hat geschrieben:Versucht eine Verbindung mit dem angegebenen Server aufzubauen. 'ServerName$' kann eine IP-Adresse oder ein voller Name sein (z.B.: "127.0.0.1" oder "ftp.home.net").
php-freak hat geschrieben:Ich hab die IP von google auch ned rausgefunden!
Antworten