| |
|
|
| Default-Position des Hauptfensters zentriert
Wenn man nun Window mit nur 2 Parametern aufruft möchte man am liebsten hiermit eine neue Größe für das zentrierte Fenster festlegen - was das Ganze abrunden würde. KompilierenMarkierenSeparieren Ich glaube mit z.B. window 320,200 möchte man das tatsächlich 320x200 Pixel Innenfläche zum Zeichnen vorhanden sind.
Noch ein kleiner Hinweis: Am besten zur Ermittlung der Mitte mit der Workarea rechnen da speziell unter Vista gerne Toolbars und Co. an den Seitenrändern kleben: KompilierenMarkierenSeparierenSource wurde am 22.07.2007 in die Babyklappe auf XProfan.Com abgelegt:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
FA: Fenster immer mit Maximalgrösse öffen und
dabei alle möglichen Taskbar-Breiten und -
Positionen beachten
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
DEF SPI(4) ! user32,SystemParametersInfoA
Declare Rect#,x&,y&,b&,h&
Dim Rect#,16
SPI(48,0,Rect#,0) SPI_GETWORKAREA,,0,Rect,0
x&=Long(rect#,0)
y&=Long(rect#,4)
b&=Long(rect#,8)
h&=Long(rect#,12)
Windowstyle 512+31
Window x&,y&-b&,h&
Dispose Rect#
waitinput
end
|
|
|
| |
|
|
|
Jac de Lad | Ist das jetzt ein Wunsch oder neu in S6?
Ich find beide Ideen klasse, das mit der Workarea würde sich ja zum Beispiel über einen neuen Stil declarieren lassen: z.B. 1024 = Angabe ist Workarea...
Jac |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 22.11.2007 ▲ |
|
|
|
|
| Default-Position des Hauptfensters zentriert
Das ist ein Fakt seit X11Beta6! Roland zentriert also das Hauptfenster, z.B. beim ersten Print oder Cls.
Mein 2-Parameter-Window war nur eine Idee um die Sache abzurunden!
1024 ist bereits als WindowStyle belegt mit ToolWindow! 2048 wäre da wohl frei aber imho nicht nötig wenn man Window mit 2 Parametern aufrufen könnte. |
|
|
| |
|
|
|
Jac de Lad | Aso.
Naja, aber wenn man das Hauptfenster zentrieren will und nicht die Clientarea meint, wärs Mist, also sollte das einen Windowstyle bekommen.
Nett wärs auch, wenn das Zentrieren mit Create(Window und Create(Dialog funktionieren würde.
Jac |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 22.11.2007 ▲ |
|
|
|
|
| |
|
| |
|
|
|
Jac de Lad | @Horst: Ich auch. Aber das ist mir immer zu umständlich. Bin da etwas bequem. Ich könnte mir auch eine eigene SubProc schreiben: Create(CenterDialog und Create(CenterWindow...aber man kanns ja auch mal hier anbringen. |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 22.11.2007 ▲ |
|
|
|
|
| @Jac Bist Du von Beruf Müde ? Einfacher geht es doch nicht - siehe die kleine PROC KompilierenMarkierenSeparieren
PROC DIALOG_CENTER
Declare _dlg&
PARAMETERS _Dstil%,_Dmodus$,_Dbreite%,_Dhoehe%,_Dtitel$
WindowStyle _Dstil% wenn _Dmodus$ = Dialog:dann als Parameter 0 eingeben
_dlg&=CREATE(_Dmodus$,%HWND,_Dtitel$,(%MaxX/2-(_Dbreite%/2)),(%MaxY/2-(_Dhoehe%/2)),_Dbreite%,_Dhoehe%)
ENDPROC
declare txt%
dialog_center 48,WINDOW,500,300,Zentriertes Fenster
waitinput
end
|
|
|
| |
|
|