Vollbild

  • Moin Moin,

    beim GuiCreate nutze ich "@DesktopHeight" und "@DesktopWidth" um die GUI im Vollbild
    darzustellen. Leider ist die GUI immer ein bisschen
    zu groß und die Ränder verschwinden im Nirvana,
    daher muss ich manuell korrigieren.
    Beispiel : (@DesktopHeight - 80)

    Hat jemand eine Idee für eine saubere Lösung?


    Gruss Thomas

    Warum passieren mir immer Sachen, die sonst nur dämlichen Menschen passieren?

  • Hallo,

    so das Vollbild geht dank WS_Maximize.
    Es sind leider der Schliessen- und Minimieren Button
    verschwunden :-(.
    Gibt es eine Möglichkeit das das Vollbild sich
    an die Taskleiste anpasst und sie somit sichtbar bleibt?

    Gruß Thomas

    Warum passieren mir immer Sachen, die sonst nur dämlichen Menschen passieren?

  • Du kannst die Größe der Taskleiste einfach von der Fenstergröße abziehen. Da gibt es aber sicher auch elegantere Möglichkeiten... :whistling:
    Mein Vorschlag ließe sich mit dieser UDF von BugFix umsetzen:

    _GetTaskBarProps
    [autoit]


    ;===============================================================================
    ; Function Name: _GetTaskBarProps($hProperty="")
    ; Description:: Ermittelt Taskbareigenschaften
    ; Parameter(s): $hProperty Eigenschaft, die zurückgegeben werden soll
    ; "" (Standard) gibt Rectanglposition als Array zurück [left,top,right,bottom]
    ; "TOP" - X1 obere Position
    ; "LEFT" - Y1 linke Position
    ; "HEIGHT" - Y2-Y1 Höhe der Taskleiste
    ; "WIDTH" - X2-X1 Breite der Taskleiste
    ; "ALIGN" - Anordnung: 1=links, 2=rechts, 3=oben, 4=unten
    ; Return Value(s): s. $hProperty
    ; Author(s): BugFix ([email='bugfix@autoit.de'][/email])
    ;===============================================================================
    Func _GetTaskBarProps($hProperty="")
    Local $tRect = DllStructCreate("long;long;long;long"), $hWnd, $ret
    $hProperty = StringUpper(StringStripWS($hProperty, 3))
    $ret = DllCall("user32.dll", 'long', "FindWindowA", 'str', "Shell_traywnd", 'str', "")
    $hWnd = $ret[0]
    DllCall("User32.dll", "int", "GetWindowRect", "hwnd", $hWnd, "ptr", DllStructGetPtr($tRect))
    Local $left = DllStructGetData($tRect, 1)
    Local $top = DllStructGetData($tRect, 2)
    Local $right = DllStructGetData($tRect, 3)
    Local $bottom = DllStructGetData($tRect, 4)
    If $hProperty = "" Then
    Local $aOut[4] = [$left, $top, $right, $bottom]
    Return $aOut
    EndIf
    Switch $hProperty
    Case "TOP"
    Return $top
    Case "LEFT"
    Return $left
    Case "HEIGHT"
    Return $bottom - $top
    Case "WIDTH"
    Return $right - $left
    Case "ALIGN"
    If $top < 1 Then
    If $left < 1 Then
    If $bottom > $right Then Return 1
    If $right > $bottom Then Return 3
    EndIf
    EndIf
    If $top < 1 Then
    If $left > 0 Then Return 2
    EndIf
    If $left < 1 Then
    If $top > 0 Then Return 4
    EndIf
    EndSwitch
    EndFunc ;==>_GetTaskBarProps

    [/autoit]


    Thread

    lg chess

  • Du kannst auch einfach BitOR($GUI_SS_DEFAULT, $WS_MAXIMIZE) machen, dann solltest du die Boxen wieder haben. Sonst versuchst dus halt noch mit GUISetState(@SW_MAXIMIZE).

  • Super, Danke ShadowIgor!

    Wenn ich das mit der Taskleiste noch hinbekomme bin ich glücklich :-).

    Thomas

    Gesendet von meinem GT-I9300 mit Tapatalk 2

    Warum passieren mir immer Sachen, die sonst nur dämlichen Menschen passieren?

  • Moin,

    Doch gab ich gelesen, muss es aber noch umsetzen. :)

    Thomas


    Gesendet von meinem GT-I9300 mit Tapatalk 2

    Warum passieren mir immer Sachen, die sonst nur dämlichen Menschen passieren?

  • Chesstiger könntest du den Codes Bitte an folgende MailAdresse schicken?!

    Thomas.***@***.com

    Das wäre nett, da das Forum noch auf der Blacklist steht und ich auf die Freischaltung warte.

    GRUß Thomad

    Gesendet von meinem GT-I9300 mit Tapatalk 2

    Edit peethebee: Adresse anonymisiert :)

    Warum passieren mir immer Sachen, die sonst nur dämlichen Menschen passieren?

  • Hallo,

    die Höhe der Taskleiste bekomme ich nun ausgelesen.

    Jetzt brauche ich aber noch einen Tipp,
    Ich erstelle die GUI mit BitOr($Gui_SS_Default_Gui, $WS_Maximize).

    Wie kann ich die Höhe der Taskleiste abziehen?

    Thomas

    Gesendet von meinem GT-I9300 mit Tapatalk 2

    Warum passieren mir immer Sachen, die sonst nur dämlichen Menschen passieren?

  • Hast du schon mal die Variante mit GUISetState probiert? Eigentlich sollte doch das Fenster nur maximiert werden und die Taskleiste bleiben 8|

  • .... Mist, hab garnicht daran gedacht, dass du ja keine Koordinaten benutzt. :pinch:
    Probier mal mit WinMove die Größe zu ändern.

    Aber eigentlich hat Shadowigor recht... das sollte klappen! ;)

    lg chess

  • Hallo,

    damit bekomme ich gar kein Fenster.


    Bei GuiSetState() mit keinen Größen Parametern beim GuiCreate startet es anscheinend mit den Default Parametern.

    Thomas

    Gesendet von meinem GT-I9300 mit Tapatalk 2

    Warum passieren mir immer Sachen, die sonst nur dämlichen Menschen passieren?

  • Moin,

    ich habe mich gerade unglücklich ausgedrückt. Also wenn ich beim GuiSetState das @SW_Maximize einsetze bekomme ich kein Fenster angezeigt, beim GuiSetState ohne Parameter geht's. Müsste ich im GuiCreate etwas ändern, bzw., wie müsste der GuiCreate aussehen damit das Maximize im GuiSetState läuft.

    Fragen über Fragen, aber ich sag schonmal Danke für die sehr nette und gute Hilfe Danke.

    Thomas


    Gesendet von meinem GT-I9300 mit Tapatalk 2

    Warum passieren mir immer Sachen, die sonst nur dämlichen Menschen passieren?