MESSAGE

4D - Documentation   Français   English   German   4D Programmiersprache, Befehle nach Themen   4D Programmiersprache, Befehle alphabetisch   4D Programmiersprache, Konstanten nach Themen   Back   Previous   Next

Version 2004 (Geändert)


MESSAGE (Meldungstext)

ParameterTypBeschreibung
MeldungstextStringZu zeigende Meldung

Beschreibung

Der Befehl MESSAGE zeigt in einem besonderen Fenster den Text Meldungstext an. Die Meldung ist temporär und verschwindet, sobald ein Formular aufgerufen oder eine Methode mit einem Formularaufruf ausgeführt wird. Bei jedem Aufruf von MESSAGE löscht 4th Dimension den Inhalt des Fensters, bevor die neue Meldung gezeigt wird.

Wird ein Fenster mit der Funktion Open Window geöffnet, erscheinen alle später über MESSAGE aufgerufenen Meldungen in diesem Fenster. Das Fenster verhält sich wie ein Terminal:

Nachfolgende Meldungen in diesem Fenster heben die vorigen Meldungen nicht auf. Sie werden stattdessen auf die vorhandenen Meldungen angepasst.

Ist eine Meldung breiter als das Fenster, blendet 4th Dimension den Textüberhang automatisch aus.

Hat eine Meldung mehr Zeilen als das Fenster zulässt, scrollt 4th Dimension automatisch im Meldungsfenster.

Fügen Sie Zeilenumbrüche – Char(13) – in Ihre Meldungen ein, um den Zeilenumbruch zu steuern.

Rufen Sie den Befehl GOTO XY auf, um Text an einer bestimmten Stelle im Fenster anzuzeigen.

Rufen Sie den Befehl ERASE WINDOW auf, um den Inhalt des Fensters zu entfernen.

Das Fenster ist nur ein Ausgabefenster, d.h. bei Überlappung durch andere Fenster wird es nicht neu gezeichnet.

Beispiele

1. Folgendes Beispiel bearbeitet eine Datensatzauswahl und informiert den Benutzer über MESSAGE über das Fortschreiten der Operation:

   For($vlRecord;1;Records in selection([anyTable]))
      MESSAGE ("Datensatz wird bearbeitet Nr."+String($vlRecord))
         ` Tu etwas mit dem Datensatz
      NEXT RECORD([anyTable])
   End for

Folgendes Fenster erscheint und verschwindet bei jedem Aufruf von MESSAGE:

2. Um dieses "blinkende" Fenster zu vermeiden, können Sie die Meldungen mit der Funktion Open window in einem Fenster anzeigen:

   Open window(50;50;500;250;5;"Operation läuft")
   For($vlRecord;1;Records in selection([anyTable]))
      MESSAGE ("Datensatz wird bearbeitet Nr."+String($vlRecord))
         ` Tu etwas mit dem Datensatz
      NEXT RECORD([anyTable])
   End for
   CLOSE WINDOW

Sie erhalten folgendes Ergebnis:

3. Fügen Sie die Zeilenschaltung ein:

   Open window(50;50;500;250;5;"Operation läuft")
   For($vlRecord;1;Records in selection([anyTable]))
      MESSAGE ("Datensatz wird bearbeitet Nr."+String($vlRecord)+Char(13))
         ` Tu etwas mit dem Datensatz
      NEXT RECORD([anyTable])
   End for
   CLOSE WINDOW

erhalten Sie ein besseres Ergebnis:

4. Mit GOTO XY und weiteren Programmierzeilen:

   Open window(50;50;500;250;5;"Operation läuft")
   $vlNbRecords:=Records in selection([anyTable])
   $vhStartTime:=Current time
   For($vlRecord;1;$vlNbRecords)
      GOTO XY(5;2)
      MESSAGE ("Datensatz wird bearbeitet Nr."+String($vlRecord)+Char(13))
         ` Tu etwas mit dem Datensatz
      NEXT RECORD([anyTable])
      GOTO XY(5;5)
      $vlRemaining:=(($vlNbRecords/$vlRecord)-1)*(Current time-$vhStartTime)
      MESSAGE ("Noch verbleibende Zeit: ca. "+Time string($vlRemaining))
   End for
   CLOSE WINDOW

erhalten Sie folgendes Ergebnis (unter Windows):

Referenz

CLOSE WINDOW, ERASE WINDOW, GOTO XY, Open window.


4D - Documentation   Français   English   German   4D Programmiersprache, Befehle nach Themen   4D Programmiersprache, Befehle alphabetisch   4D Programmiersprache, Konstanten nach Themen   Back   Previous   Next