IOyesNoCancel

Top  Previous  Next

Generiert eine "Ja-/Nein-/Abbruch"-Frage und liefert die Eingabe zurück.

Diese Funktion erzeugt aus der übergebenen Zeichenkette und der Vorgabe für die positive Antwort (GLOBAL 1), der Vorgabe für die negative Antwort (GLOBAL 2) und der Vorgabe für den Abbruch der Funktion (GLOBAL 3) eine Frage, die durch eine dieser drei Möglichkeiten zu beantworten ist. Dabei genügt es nur die ersten signifikanten Zeichen einzugeben. Ist die Eingabe nicht eindeutig oder nicht eine der drei Vorgaben, so erscheint ein entsprechender Hinweis (GLOBAL 4) und die Frage wird erneut gestellt.

Um eine Antwort mit dem Digitalisiercursor zu erlauben, wird #L als Nein, #P als Ja und #CON (und <Return>) als Cancel verstanden.

Parameter

root (PROOT)                                             [IN]

Handle auf die geöffnete Datenbank.

prompt (const char *)                                  [IN]

Diese Zeichenkette beinhaltet die eigentliche Frage, die im Dialogfenster angezeigt wird und die mit Ja, Nein oder Abbruch zu beantworten ist.

dflt (int)                                                         [IN]

Dieser Wert spezifiziert die Defaultantwort. Antwortet der Anwender nur durch Drücken der <RETURN>-Taste so wird dieser Wert zurückgeliefert. Dieser Wert sollte aus dem Datenbereich der Rückgabewerte {-1, 0, 1} sein, kann aber auch einen anderen Wert haben (z.B. 2), da er nicht durch die Funktion überprüft wird.

helpID (const char *)                                   [IN]

Name des zugehörigen Hilfethemas in der Moskitohilfe, wenn das Thema nicht in user.hlp steht, dann wird als Syntax "Datei|Thema" verwendet.

Ergebnis

(int)                                                           [OUT]

1           positive Antwort ("ja") gewählt

0           negative Antwort ("nein") gewählt

-1   Abbruch gewählt

Deklaration

#include "system.h"

 

int DLLENTRY IOyesNoCancel (

     PROOT          root,

     const char *      prompt,

     int               dflt,

     const char *      helpID

);

Bemerkungen

Die Datei MELDUNG.DAT beinhaltet u.a. folgende Zeilen, die bei Bedarf angepaßt werden können:

--- GLOBAL 1

Ja

--- GLOBAL 2

Nein

--- GLOBAL 9

Yes

--- GLOBAL 10

No

--- GLOBAL 3

Abbruch

Beispiel

status = IOyesNoCancel (root, "STRAESSLE kompatibel ?", 1, NULL)

Dialogausgabe:

STRAESSLE kompatibel ? [J|N|A]

Der Variablen "status" wird der Return-Wert der Funktion IOyesNoCancel zugewiesen, die fragt ob eine bestimmte Funktion kompatibel zum GRADIS der Firma STRAESSLE ablaufen soll. Wird diese Frage nur durch Drücken der <RETURN>-Taste beantwortet, so liefert die Funktion den Wert "1" zurück, was der negativen Antwort entspricht.