SplitterGadget()

Syntax

Ergebnis = SplitterGadget(#Gadget, x, y, Breite, Höhe, #Gadget1, #Gadget2 [, Flags])
Beschreibung
Erstellt ein Splitter-Gadget innerhalb der aktuellen Gadgetliste. Dieses Gadget ermöglicht zwei (Child-) Gadgets, welche durch den Anwender mit Hilfe eines Trennbalkens in der Größe verändert ("resized") werden können.

Parameter

#Gadget Eine Nummer, um das neue Gadget zu identifizieren. #PB_Any kann verwendet werden, um diese Nummer automatisch zu generieren.
x, y, Breite, Höhe Die Position und die Abmessungen des neuen Gadgets.
#Gadget1, #Gadget2 Die Gadgets, welche im Splitter platziert werden sollen.
Flags (optional) Flags zum Verändern des Gadget-Verhaltens. Dies kann eine Kombination (verknüpft mit dem bitweisen '|' OR-Operator) der folgenden Konstanten sein:
  #PB_Splitter_Vertical    : Das Gadget wird vertikal gesplittet (anstelle von horizontal, was der Standard ist).
  #PB_Splitter_Separator   : Ein Abgrenzungsbalken im 3D-Look wird in den Splitter gezeichnet.
  #PB_Splitter_FirstFixed  : Wenn das SplitterGadget in der Größe verändert wird, behält das erste Gadget seine Größe.
  #PB_Splitter_SecondFixed : Wenn das SplitterGadget in der Größe verändert wird, behält das zweite Gadget seine Größe.

Rückgabewert

Gibt bei Erfolg einen Wert ungleich Null zurück, oder Null bei einem Fehler. Wenn #PB_Any als #Gadget Parameter verwendet wurde, dann beinhaltet der Rückgabewert bei Erfolg die automatisch generierte Gadget-Nummer.

Anmerkungen

Zu diesem Gadget kann mittels GadgetToolTip() eine 'Mini-Hilfe' hinzugefügt werden.

Die folgenden Befehle können verwendet werden, um auf das SplitterGadget zuzugreifen:

GetGadgetState(): Ermittelt die aktuelle Splitter-Position, in Pixel.
SetGadgetState(): Ändert die aktuelle Splitter-Position, in Pixel.
GetGadgetAttribute(): Mit einem der folgenden Attribute:
  #PB_Splitter_FirstMinimumSize : Ermittelt die minimale Größe (in Pixel), welche das erste Gadget haben kann.
  #PB_Splitter_SecondMinimumSize: Ermittelt die minimale Größe (in Pixel), welche das zweite Gadget haben kann.
  #PB_Splitter_FirstGadget      : Ermittelt die Gadget-Nummer des ersten Gadgets.
  #PB_Splitter_SecondGadget     : Ermittelt die Gadget-Nummer des zweiten Gadgets.
SetGadgetAttribute(): Mit einem der folgenden Attribute:
  #PB_Splitter_FirstMinimumSize : Legt die minimale Größe (in Pixel) fest, welche das erste Gadget haben kann. 
  #PB_Splitter_SecondMinimumSize: Legt die minimale Größe (in Pixel) fest, welche das zweite Gadget haben kann.
  #PB_Splitter_FirstGadget      : Ersetzt das erste Gadget durch ein Neues.
  #PB_Splitter_SecondGadget     : Ersetzt das zweite Gadget durch ein Neues.
Hinweis: Beim Ersetzen eines Gadgets mittels SetGadgetAttribute(), wird das alte Gadget nicht automatisch freigegeben. Es wird stattdessen zurück auf das übergeordnete Fenster des Splitters gesetzt. Dies ermöglicht das Umschalten von Gadgets zwischen Splittern ohne die Notwendigkeit, diese jedes Mal neu zu erstellen. Wenn das alte Gadget freigegeben werden soll, kann zuerst seine Nummer mittels GetGadgetAttribute() ermittelt und das Gadget anschließend mittels FreeGadget() freigegeben werden, nachdem es zuvor ersetzt wurde. Beachten Sie bitte, dass ein Gadget nicht gleichzeitig in zwei Splittern vorhanden sein kann. Um daher ein Gadget von einem Splitter in den anderen zu verschieben, muss es zuerst im ersten Splitter ersetzt werden (damit es sich im Hauptfenster befindet) und kann anschließend in den zweiten Splitter verschoben werden.

Beispiel

  If OpenWindow(0, 0, 0, 230, 195, "SplitterGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    #Button1  = 0 
    #Button2  = 1
    #Splitter = 2
    
    ButtonGadget(#Button1, 0, 0, 0, 0, "Button 1") ; es besteht keine Notwendigkeit, die Größe oder Position
    ButtonGadget(#Button2, 0, 0, 0, 0, "Button 2") ; festzulegen, da sie automatisch in der Größe angepasst werden
    SplitterGadget(#Splitter, 5, 5, 220, 120, #Button1, #Button2, #PB_Splitter_Separator)
    
    TextGadget(3, 10, 135, 210, 55, "Obiger GUI-Abschnitt zeigt zwei sich - innerhalb des 220x120 SplitterGadget Bereichs - automatisch in der Größe anpassende Schalter.", #PB_Text_Center)
    
    Repeat
    Until WaitWindowEvent() = #PB_Event_CloseWindow
  EndIf

Siehe auch

GetGadgetState(), SetGadgetState(), GetGadgetAttribute(), SetGadgetAttribute()

Unterstützte OS

Alle

<- SpinGadget() - Gadget Inhaltsverzeichnis - StringGadget() ->