Funktionreferenz


_GUICtrlStatusBar_SetText

Beschreibung anzeigen in

Setzt den Text in dem festgelegten Abschnitt eines Statusfensters

#include <GuiStatusBar.au3>
_GUICtrlStatusBar_SetText ( $hWnd [, $sText = "" [, $iPart = 0 [, $iUFlag = 0]]] )

Parameter

$hWnd Handle des Controls
$sText [optional] Darzustellender Text in einem Abschnitt
$iPart [optional] Der Abschnitt für den Text
$iUFlag [optional] Typ der Darstellung. Der Typ kann einer der folgenden Werte sein:
    0 - Der Text wird mit einem Rand dargestellt, um niedriger als die Ebene des Fensters zu erscheinen
    $SBT_NOBORDERS - Der Text wird ohne Ränder dargestellt
    $SBT_OWNERDRAW - Der Text wird durch das Elternfenster dargestellt
    $SBT_POPOUT - Der Text wird mit einem Rand dargestellt, um höher als die Ebene des Fensters zu erscheinen
    $SBT_RTLREADING - Der Text wird in Gegenrichtung des Textes im Elternfenster dargestellt

Rückgabewert

Erfolg: True
Fehler: False

Bemerkungen

Für eine einfache Statusbar ist $iPart auf $SB_SIMPLEID zu setzen

- - - - - - - - Erklärung der Controls - - - - - - - -

Verwandte Funktionen

_GUICtrlStatusBar_GetText

Beispiel

Beispiel 1

#include "Extras\HelpFileInternals.au3"

#include <GUIConstantsEx.au3>
#include <GuiStatusBar.au3>
#include <WinAPIIcons.au3>

Example()

Func Example()
    ; Erstellt eine GUI
    Local $hGUI = GUICreate("StatusBar: Setzt und ermittelt Text (v" & @AutoItVersion & ")", 450, 320, 100, 100)
    Local $hStatus = _GUICtrlStatusBar_Create($hGUI)

    ; Erstellt ein Memo Control
    _MemoCreate(2, 8, 444, 259)
    GUISetState(@SW_SHOW)

    ; Setzt die Abschnitte
    Local $aParts[4] = [75, 150, 300, 400]
    _GUICtrlStatusBar_SetParts($hStatus, $aParts)
    _GUICtrlStatusBar_SetText($hStatus, "Abschnitt 0")
    _GUICtrlStatusBar_SetText($hStatus, "Abschnitt 1", 1)
    _GUICtrlStatusBar_SetText($hStatus, "Abschnitt 2", 2)
    _GUICtrlStatusBar_SetText($hStatus, "Abschnitt 3", 3)
    Local $iWrongSetText = _GUICtrlStatusBar_SetText($hStatus, "Falscher Abschnitt", 4)

    ; Setzt die Icons
    Local $ahIcons[2]
    $ahIcons[0] = _WinAPI_LoadShell32Icon(23)
    $ahIcons[1] = _WinAPI_LoadShell32Icon(40)
    _GUICtrlStatusBar_SetIcon($hStatus, 0, $ahIcons[0])
    _GUICtrlStatusBar_SetIcon($hStatus, 1, $ahIcons[1])

    ; Zeigt den Text der Abschnitte
    _MemoWrite("Text von Abschnitt 0 ........: " & _GUICtrlStatusBar_GetText($hStatus, 0))
    _MemoWrite("Text von Abschnitt 1 ........: " & _GUICtrlStatusBar_GetText($hStatus, 1))

    ; Zeigt die Handles der Icons
    _MemoWrite("Iconhandle Abschnitt 0 .: 0x" & Hex(_GUICtrlStatusBar_GetIcon($hStatus, 0)))
    _MemoWrite("Iconhandle Abschnitt 1 .: 0x" & Hex(_GUICtrlStatusBar_GetIcon($hStatus, 1)))

    _MemoMsgBoxStatus("", -1, $hGUI) ; Keine weiteren Aktionen, es wird gewartet bis die GUI geschlossen wird.

    ; Die Schleife wiederholt sich, bis der Benutzer die Beenden-Aktion der GUI auslöst.
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    ; Icons löschen
    _WinAPI_DestroyIcon($ahIcons[0])
    _WinAPI_DestroyIcon($ahIcons[1])
    GUIDelete()
EndFunc   ;==>Example

Beispiel 2

;== Beispiel 2 direkte Verwendung mit Icon-Datei

#include "Extras\HelpFileInternals.au3"

#include <GUIConstantsEx.au3>
#include <GuiStatusBar.au3>

Beispiel()

Func Beispiel()
    ; Erstellt eine GUI
    Local $hGUI = GUICreate("StatusBar: Setzt und ermittelt Text (v" & @AutoItVersion & ")", 450, 320, 100, 100)
    Local $hStatus = _GUICtrlStatusBar_Create($hGUI)

    ; Erstellt ein Memo Control
    _MemoCreate(2, 8, 444, 259)
    GUISetState(@SW_SHOW)

    ; Setzt die Abschnitte
    Local $aParts[4] = [75, 150, 300, 400]
    _GUICtrlStatusBar_SetParts($hStatus, $aParts)
    _GUICtrlStatusBar_SetText($hStatus, "Abschnitt 0")
    _GUICtrlStatusBar_SetText($hStatus, "Abschnitt 1", 1)
    _GUICtrlStatusBar_SetText($hStatus, "Abschnitt 2", 2)
    _GUICtrlStatusBar_SetText($hStatus, "Abschnitt 3", 3)

    ; Setzt die Icons
    _GUICtrlStatusBar_SetIcon($hStatus, 0, 23, "shell32.dll")
    _GUICtrlStatusBar_SetIcon($hStatus, 1, 40, "shell32.dll")

    ; Zeigt den Text der Abschnitte
    _MemoWrite("Text von Abschnitt 0 ........: " & _GUICtrlStatusBar_GetText($hStatus, 0))
    _MemoWrite("Text von Abschnitt 1 ........: " & _GUICtrlStatusBar_GetText($hStatus, 1))

    ; Zeigt die Handles der Icons
    _MemoWrite("Iconhandle Abschnitt 0 .: 0x" & Hex(_GUICtrlStatusBar_GetIcon($hStatus, 0)))
    _MemoWrite("Iconhandle Abschnitt 1 .: 0x" & Hex(_GUICtrlStatusBar_GetIcon($hStatus, 1)))

    _MemoMsgBoxStatus("", -1, $hGUI) ; Keine weiteren Aktionen, es wird gewartet bis die GUI geschlossen wird.

    ; Die Schleife wiederholt sich, bis der Benutzer die Beenden-Aktion der GUI auslöst.
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    GUIDelete()
EndFunc   ;==>Beispiel

Example 3 : StatusBar Get/Set Text to an External process

#include "Extras\HelpFileInternals.au3"

#include <GuiStatusBar.au3>

Example()

Func Example()
    Local $sFromTo
    Local $hWin = _MemoRunAU3OutProcess($sFromTo)

    Local $hStatus = _MemoCreateOutProcess($hWin, "msctls_statusbar32", 0, $sFromTo)

    Local $iPart = 0
    _GUICtrlStatusBar_SetText($hStatus, "UPD 0", $iPart) ; update the external Process StatusBar part 0

    _MemoWrite(@CRLF & "=====================" & @CRLF & "StatusBar info displayed" & $sFromTo & " External process" & @CRLF & "=====================")
    ; Show part text
    _MemoWrite("Part " & $iPart & " text ........: " & _GUICtrlStatusBar_GetText($hStatus, $iPart))
    _MemoWrite("Parts count ........: " & _GUICtrlStatusBar_GetCount($hStatus))
    Local $aParts = _GUICtrlStatusBar_GetParts($hStatus)
    For $iI = 0 To $aParts[0] - 1
        _MemoWrite("Part " & $iI & " width .: " & _GUICtrlStatusBar_GetWidth($hStatus, $iI) & " (" & $aParts[$iI + 1] & ")")
    Next

    _MemoWrite(@CRLF & "=====================")

    _MemoMsgBoxStatus("", Default, $hWin) ; no more action, wait GUI for closing, close also OutProcess GUI

EndFunc   ;==>Example