Lade...
 

Schaltfläche

Button

Button(name~aliasName, flags, x, y, w, h, text), Button(name~aliasName, flags, x, y, bitmapFile)

Parameter
Parameter   Beschreibung
name   Identifikator des Buttons
aliasName   ein zusätzlicher Identifikator
flags   Flags
x * Position X (in Minicells)
y * Position Y (in Minicells)
w   Breite des Windows (in Minicells)
h   Höhe des Windows (in Minicells)
text   Text als String oder (mehrsprachig) als Multiple-String-Konstante
bitmapFile   Filename einer Grafikdatei (Bitmap)

 * - Pflichtparameter

Bei einem Button mit Bitmap wird nur die Position (x, y) angegeben. Die Größe des Buttons wird vom Bitmap bestimmt.

Das Bitmap wird sowohl im gedrückten Zustand als auch im normalen Zustand angezeigt. Wenn im gedrückten Zustand ein anderes Bitmap erscheinen soll, ist hinter dem Dateinamen eine zweite Datei anzugeben. Beide Dateinamen sind durch eine Tilde zu trennen. Beispiel: "Button1.png~Button2.png" In diesem Fall wird im normalen Zustand das Bild "Button1.png" angezeigt, im gedrückten Zustand "Button2.png".

 

Flags
Flag Beschreibung
HIDDEN Das Windowobjekt ist solange unsichtbar, bis Anweisung Show es auf dem Bildschirm erschienen lässt.
LOCKED Das Widget ist gesperrt. Dieser Zustand kann durch Unlock wieder aufgehoben werden.
NON_SELECTABLE Der Button kann nicht gedrückt werden. Sein Text ist grau dargestellt.
TOGGLE Wenn der Button gedrückt wird, wechselt er zwischen den Zuständen 'eingedrückt' (entspricht Wert TRUE) und 'erhaben' (Ausgangszustand, entspricht FALSE). Den Zustand kann man mit GetValue abfragen und mit PutValue setzen.

BACK
208673

Der mit diesem Flag markierte Button wird zum Back-Button eines Fensters. Daher kann er auch nur einmal pro Fenster vergeben werden. Wird in diesem Fenster die Escape-Taste auf einem Widget ausgelöst, welches kein ESC-Event definiert, so wird das SELECT-Event dieses Buttons ausgeführt.

(Siehe auch Beschreibung des BACK-Flags in der allgemeinen Flag-Beschreibung)

DEFAULT

Der DEFAULT Wert kann nur auf einen Button pro Window gesetzt werden. Falls dieses Flag innerhalb eines Windows auftritt und auf ein String, welcher kein Select-Event hat ein Enter ausgeführt wird, wird das Select-Event von dem "Default"-Button ausgeführt

(Siehe auch Beschreibung des DEFAULT-Flags in der allgemeinen Flag-Beschreibung)

FONT(k) k = 0, 1, ..., 9 wählt einen Eintrag in der Font-Tabelle. Der dort eingetragene Font wird benutzt. Fonts werden mit PMFonts in die Tabelle eingetragen. Für 0, 1 und 2 existieren vordefinierte Fonts. Der Font-Index kann später mit SetFont verändert werden.
MIN_HEIGHT(h) Höhe des Widgets fällt in keinem Falle unter den Wert h (Angabe in Minicells). Dies ist vor allem in Kombination mit Attachments von Nutzen.
MIN_WIDTH(w) Breite des Widgets fällt in keinem Falle unter den Wert w (Angabe in Minicells). Dies ist vor allem in Kombination mit Attachments von Nutzen.
TOOLTIP(mlString) Der angegebene String wird als Hinweistext (Tooltip) eingeblendet, oder, falls ein Event TOOLTIP ebenfalls definiert ist, an diesen übergeben. Das Erscheinen des Tooltips wird vom System automatisch nach eine bestimmten Zeit des Verharrens des Maus-Cursors über dem Windowobjekt ausgelöst. Der String kann mehrsprachig sein. An das Event wird der jeweils zur eingestellten Sprache aktuelle übergeben.
CONTEXTMENU(identifikator)

Der Identifikator ist ein Bezeichner eines Items innerhalb einer Menu- oder ContextMenuList-Deklaration. Das unter diesem Item hängende Untermenu wird automatisch beim Betätigen der rechten Maustaste eingeblendet. Wird daraufhin ein Menupunkt ausgewählt, so wird wie zu Item beschrieben die jeweilige Aktion gestartet, in gleicher Weise, als wäre der Menueintrag aus dem Hauptmenu heraus aufgerufen worden.
Zusätzlich kann man jedoch bei Ausführung von SELECT zu dem entsprechenden Item mittels GetCurrentWidget ermitteln aus welchem Windowobjekt heraus der Menupunkt via ContextMenu aufgerufen wurde. Bei einem Ausruf aus dem Hauptmenu liefert GetCurrentWidget NULL zurück.

Verhalten nativ

Soll ein ContextMenu nicht automatisch erscheinen, so kann es (nach Gestaltungsrichtlinie sollte dies als Reaktion auf die rechte Maustaste, also innerhalb MOUSE_CLICK_R erfolgen) mittels PopupMenu auch aus InstantView® heraus aufgerufen werden. In diesem Fall sollte auf die Angabe des Flags CONTEXTMENU verzichtet werden, da sonst das Menu zweimal (einmal automatisch, einmal gesteuert) erscheinen könnte.

Verhalten in MorphIT

Wenn ein Button-Widget ein Contextmenü hat, dann wird er in MorphIT automatisch in einen Dropdown-Button umgewandelt. Dies hat zur Folge, dass auf dem Button rechts ein Pfeil zu sehen ist und der linke Mausklick kein SELECT-Event mehr schickt, sondern stattdessen das Contextmenu als Dropdown-Menu anzeigt. Der MorphIT-Slot morphIt.model mit dem Wert pass_on_select überschreibt dieses Verhalten und führt dazu, dass das Contextmenu nur beim Rechtsklicken erscheint und das SELECT-Event beim Linksklicken wie üblich gesendet wird.

VOLATILE, VOLATILE(identifikator) Das Eingabefeld soll nur dann sichtbar sein, wenn das darzustellende Datum auch existiert, andernfalls wird es von FillWindow automatisch ausgeblendet. Wann fehlen Daten in einem Objekt? Das ist der Fall
  • wenn ein Slot im Objekt nicht existiert
  • wenn im Zugriffspfad ein Pointer den Wert NULL besitzt
  • wenn eine Funktion im Zugriffspfad NULL liefert.
  • beim Zugriff auf das k-te Element einer Collection mit Cardinalität < k

Mit einer Funktion kann man z.B. an beliebiger Stelle im Zugriffsaufdrucks entscheiden, ob dieser weiterverfolgt werden soll oder nicht. Oft sollen noch andere Windowobjekte - z.B. der zum Eingabefeld gehörende Prompt - ebenfalls mit ein- und ausgeblendet werden. Für diese Objekte gibt man das VOLATILE-Flag mit dem gleichen Identifikator an, der hier eine Gruppe logisch zusammengehöriger Windowobjekte kennzeichnet. Falls sich ein Windowobjekt direkt auf ein 'normales' Datenmember eines Modellobjekts bezieht, ist Flag VOLATILE sinn- und funktionslos.

HELP(anchor) Help("file#anchor") verbindet das Windowobjekt mit Online-Hilfe im HTML-Format. Wenn kein Filename angegeben wurde, gilt die im Modul festgelegte HTML-Datei.
HELP(n)

 

Möchte man lieber das Help-System der Plattform (OS/2 PM, MS Windows) benutzten, so ist eine ganze Zahl n anzugeben, die auf das entsprechende Hilfe-Fenster verweist. Dabei muss n < 40000 sein.

Hinweis:  Als Online-Hilfe für InstantView® Applikation wird aus Gründen der Portabilität HTML empfohlen.