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 3


MESSAGE (Meldungstext)

ParameterTypBeschreibung
MeldungstextStringZu zeigende Meldung

Beschreibung

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

Wurde ein Fenster mit der Funktion Open Window am Bildschirm erstellt, zeigt 4D den Meldungstext in diesem Fenster an der Position an, wo sich der Cursor befindet. Beim Aufruf des Befehls MESSAGE löscht 4th Dimension nicht, wie im ersten Fall, den Inhalt des Fensters, sondern geht zur aktuellen Position des Cursors, also entweder hinter der letzten Eintragung oder auf die Position, die ihm durch den Befehl GOTO XY zugewiesen wurde.

4th Dimension verwendet für Meldungen die im Dialogfenster Datenbankeigenschaften festgelegte Schriftart und Schriftgröße:

Sie können diese Einstellung beliebig ändern. Verwenden Sie MESSAGE jedoch in Verbindung mit GOTO XY, empfiehlt es sich, eine Schrift mit fester Breite zu wählen, wie z.B. Courier New unter Windows oder Monaco auf Macintosh.

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 (auf Macintosh):

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 (auf Macintosh):

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