Seite 2 von 2

Verfasst: 27.02.2005 18:52
von DarkDragon
Kaeru Gaman hat geschrieben:@DarkDragon

DEVMODE ist eine vordefinierte Struktur?

und die übergeb ich anscheinend per pointer an ne api, seh ich das richtig?

#WS_CLIPCHILDREN kenn ich zwar noch nicht, aber ist klar:
child-wins werden auf die win-grösse geclipt.

#WS_CLIPSIBLINGS... was sind siblings? ist das ein überbegriff für Gadgets & Co.?

und welche bedeutung haben die parameter dmFields?

mal probieren, ob das wirklich das verschieben der Icons verhindert...
solange das nicht sicher ist, werd ich auch niemanden zum testen auffordern...
-------------------------------------------------------------------------------------
@Zaphod

meinst du dieses:
PureArea hat geschrieben:; by Danilo, 21.07.2003 - german forum
;
; Beispiel für ein Realtime-Resize eines Fensters mit einem ScrollAreaGadget
; wo die ScrollArea die Größe des DESKTOPs hat.
hilft mir nicht wirklich... aber danke..
Die Windowflags kenn ich auch nicht wirklich, aber DEVMODE ist eine vordefinierte Struktur(Siehe Struktur Anzeiger im Editor).
Und du übergibst eine Variable mit der Struktur an die API Funktion. WinAPI = eine API mit vielen Funktionen.

Verfasst: 27.02.2005 19:01
von Kaeru Gaman
@DarkDragon

yo, danke...

bin mal gespannt, ob das prog von alleine wieder zurückstellt beim beenden...

btw:
welches flag macht mir dieses win ALWAYSONTOP?

[EDIT]

und er setzt automatisch zurück, und die Icons sind, wo sie hingehören!

Vielen Dank DD! :allright:

Verfasst: 06.03.2005 03:16
von SC
Hallo,

könnt ihr den fertigen Code hier veröffentlichen? Das Thema interessiert mich auch sehr.

Verfasst: 06.03.2005 13:08
von Kaeru Gaman
ich habe nichts anderes gemacht, als DD's Codesnippet auszutesten...

z.b. dieses kurze proggi, um die Darstellung auf 800x600 runterzuschrauben,
solange das proggi läuft.
zum zurückstellen einfach das kleine window schliessen.

verkleinern deiner anderen fenster läuft übers system-menu:
einfach aufs icon links oben klicken. (an den minimize-button kommst du ja nicht dran)

Code: Alles auswählen

dmScreenSettings.DEVMODE 
dmScreenSettings\dmSize = SizeOf(dmScreenSettings) 
dmScreenSettings\dmPelsWidth = 800 ;Bildschirmbreite 
dmScreenSettings\dmPelsHeight = 600 ;Bildschirmhöhe 
dmScreenSettings\dmBitsPerPel = 32 ;Bildschirmtiefe 
dmScreenSettings\dmFields = 262144 | 524288 | 1048576 

If ChangeDisplaySettings_(@dmScreenSettings, 4) <> 0 ;Wenn etwas schief geht... 
End ;... einfach beenden 
EndIf 

OpenWindow(0, 0, 0, 100,100, #PB_Window_SystemMenu, "") 

Repeat
EventID = WaitWindowEvent()
Until EventID = #PB_Event_CloseWindow 
aber erst das programm beenden, bevor du über 'Eigenschaften von Anzeige'
die Desktopauflösung manipulierst!

der "fertige Code" wird um einiges umfangreicher, ich brauchte diese information
um bei Games den DX-Fullscreen zu vermeiden.