Fenster Vista-like schließen

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
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Code: Alles auswählen

    ResizeWindow(win, x+w*0.01, y+h*0.01, w*0.99, h*0.99)
    x+w*0.005
    y+h*0.005
    w*0.99
    h*0.99 

Code: Alles auswählen

    SetWindowPos_(winid, 0, x+Int(w*0.01+05), y+Int(h*0.01+0.5), Int(w*0.99+0.5), Int(h*0.99+0.5), 0)
    x+Int(w*0.005+0.5)
    y+Int(h*0.005+0.5)
    w = Int(w*0.99+0.5)
    h = Int(h*0.99+0.5) 

Warum berechnet ihr alles 2 mal ?
Benutzeravatar
X0r
Beiträge: 2770
Registriert: 15.03.2007 21:47
Kontaktdaten:

Beitrag von X0r »

Der Code muss aber unbedingt angepasst werden. Bei größeren Windows ruckelts echt hart.
Benutzeravatar
Scarabol
Beiträge: 1427
Registriert: 30.11.2005 21:00

Beitrag von Scarabol »

@Edel
War auf die schnelle übersichtlicher und spielt für die Performance absolut keine Rolle...

@xor
Wird wohl kaum möglich sein, außer man kann diesen Layer Quatsch irgendwie umgehen...

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 »

Hat das jemand auf Vista getestet? Wie sieht das da aus?

@Scaraborl:
Natürlich geht es. Du hast das halt alles für diese eine Größe programmiert.
Benutzeravatar
Scarabol
Beiträge: 1427
Registriert: 30.11.2005 21:00

Beitrag von Scarabol »

Schau dir doch mal an wie lange dieser SetWindowLayer Befehl braucht!

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

PB-V: 4
WinXP
Benutzeravatar
hardfalcon
Beiträge: 3447
Registriert: 29.08.2004 20:46

Beitrag von hardfalcon »

Wir Xor schon richtig angemerkt hat, solltest ihrs mal hiermit versuchen:
http://msdn2.microsoft.com/en-us/library/ms632669.aspx
Benutzeravatar
Knight_Rider_2000
Beiträge: 145
Registriert: 05.02.2007 20:46
Kontaktdaten:

Beitrag von Knight_Rider_2000 »

Wir Xor schon richtig angemerkt hat, solltest ihrs mal hiermit versuchen:
http://msdn2.microsoft.com/en-us/library/ms632669.aspx
AnimateWindow ist sicherlich nicht das, was du denkst zu brauchen.
Wieso ist es euch denn so wichtig die Fenster so zu animieren wie Vista es tut wenn die Fenster geschlossen (bzw. beim oeffnen) werden? wenn das jemand bei Vista testet wird ja 2mal animiert.
PB 4.20,Blitz3D 1.98,Microsoft Visual Studio 2005 Professional, Microsoft Visual Studio 2008 Professional
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

AnimateWindow funktioniert nicht da man während des animierens die Fenstergröße nicht ändern kann.
Windows 10 Pro, 64-Bit / Outtakes | Derek
Benutzeravatar
Scarabol
Beiträge: 1427
Registriert: 30.11.2005 21:00

Beitrag von Scarabol »

Hi Leute,

könnte man nicht den Fenster Speicher direkt manipulieren vor allem um die Größe zu ändern?

@Knight_Rider
Man kanns ja vorher mit OSVersion() filtern...

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

PB-V: 4
WinXP
Benutzeravatar
Knight_Rider_2000
Beiträge: 145
Registriert: 05.02.2007 20:46
Kontaktdaten:

Beitrag von Knight_Rider_2000 »

Windows Vista kanns, kauf dir es und du siehst diese effekte :D
OSVersion() kann schon vista?
PB 4.20,Blitz3D 1.98,Microsoft Visual Studio 2005 Professional, Microsoft Visual Studio 2008 Professional
Antworten