Einzelnen Beitrag anzeigen

Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#6

Re: DOS-Box SW_SHOWNORMAL / SW_HIDE

  Alt 17. Jul 2007, 13:24
aua, jetzt sehe ich erst was du gemacht hast:
Delphi-Quellcode:
dwNewLong := dwNewLong and not SW_HIDE;
dwNewLong := dwNewLong or SW_SHOWNORMAL;
das passt nicht. Du vermixt hier Äpfel mit Birnen. Du kannst doch auch nicht wenn du ein Auto kaufst sagen das du als Extra einen Elektrohert in dem Opel-Korsa heben willst. Das geht einfach nicht und gehört nicht zusammen. Gültige Konstanten für GWL_STYLE beginnen mit WS_
deine Konstanten beginnen hingegen mit SW_
Schau dir wenn du sowas vor hast bitte vorher SetWindowLong in der Hilfe an.

Um dir zu verdeutlichen was du damit versucht hast:

die von dir verwendeten Konstanten:
SW_Hide = 0
SW_SHOWNORMAL = 1

Windowstyles mit diesen Werten
0 = WS_OVERLAPPED
1 = gibt es nicht -> Ungültiger Index.

Jetzt stell dir vor es gäbe eine Konstante mit dem Wert 1 für die Windowstyles. Dann würde diese was ganz anderes bewirken als du vor hattest. Daher nutze nur Konstanten für etwas wofür sie auch vorgesehen sind.

Die Konstante WS_VISIBLE wäre hier also richtiger. Wenn du aber in die Hilfe schaust steht dort:
Zitat:
WS_VISIBLE
Creates a window that is initially visible.
This style can be turned on and off by using ShowWindow or SetWindowPos.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat