Freigeben über


CLEAR-Befehle

Löscht das oder die angegebene(n) Element(e) aus dem Arbeitsspeicher.

CLEAR [ALL | CLASS ClassName | CLASSLIB ClassLibraryName | DEBUG | DLLS
   [cAliasNameList]| EVENTS | FIELDS | GETS | MACROS | MEMORY 
   | MENUS | POPUPS | PROGRAM | PROMPT | READ [ALL] | RESOURCES 
   [FileName] | TYPEAHEAD | WINDOWS]

Parameter

  • ALL
    Löscht alle Speichervariablen und Arrays sowie die Definitionen aller benutzerdefinierten Menüleisten, Menüs und Fenster aus dem Speicher. CLOSE ALL schließt zudem alle Tabellen, einschließlich der dazugehörenden Index-, Format- und Memodateien, und wählt Arbeitsbereich 1 aus. CLEAR ALL löscht alle mit DECLARE - DLL registrierten externen gemeinsam genutzten Bibliotheksfunktionen aus dem Arbeitsspeicher.

    Systemvariablen werden mit CLEAR ALL nicht freigegeben. Auch der Puffer für das kompilierte Programm wird nicht gelöscht. Um diesen zu löschen verwenden Sie CLEAR PROGRAM.

    Wird CLEAR ALL innerhalb eines Ereignisses oder einer Methode eines aktiven Steuerelements oder Objekts eingegeben, wird eine Visual FoxPro-Fehlermeldung angezeigt. Eine Objektvariable kann nicht aus dem Speicher gelöscht werden, solange das dazugehörige Steuerelement oder Objekt aktiv ist.

  • CLASS ClassName
    Löscht eine Klassendefinition aus dem Arbeitsspeicher. Wird eine Instanz einer Klasse erstellt, bleibt die Klassendefinition, auch nachdem die Instanz freigegeben wurde, im Arbeitsspeicher. Verwenden Sie CLEAR CLASS, um die Klassendefinition aus dem Arbeitsspeicher zu löschen, nachdem die Instanz der Klasse freigegeben wurde.

  • CLASSLIB ClassLibraryName
    Löscht alle in einer Bibliothek visueller Klassen enthaltenen Klassendefinitionen aus dem Arbeitsspeicher. Sind Instanzen einer Klasse aus einer Klassenbibliothek vorhanden, wird die entsprechende Klassendefinition nicht aus dem Arbeitsspeicher gelöscht. Alle Klassendefinitionen ohne Instanzen werden dagegen aus dem Arbeitsspeicher gelöscht.

  • DEBUG
    Löscht alle Haltepunkte des Debuggers und stellt die Debugger-Fenster (Aufrufliste, Programmverfolgung, Überwachung usw.) an ihren ursprünglichen Positionen wieder her.

    Wird CLEAR DEBUG bei geschlossenem Debugger aufgerufen, wird dieser geöffnet, und die Debugger-Fenster stehen an den Standardpositionen.

    Dieser Befehl funktioniert im Fox- und im Debugger-Seitenmodus.

  • DLLS cAliasNameList
    Entfernt externe, gemeinsam genutzte Bibliotheken aus dem Arbeitsspeicher, die mit dem DECLARE - DLL-Befehl registriert wurden. cAliasNameList ist eine durch Kommas unterteilte Liste von Funktionsaliasnamen, die, wie im Folgenden gezeigt, aus dem Arbeitsspeicher entfernt werden sollen:

    CLEAR DLLS  "RegCloseKey","RegOpenKey"
    

    Haben Sie bei der Deklaration keinen Alias verwendet, entspricht cAliasNameList dem Funktionsnamen. Wurde keine Angabe für cAliasNameList festgelegt, werden alle DLLs aus dem Arbeitsspeicher entfernt. Mit Hilfe der ADLLS( )-Funktion können Sie ermitteln, welche DLLs geladen sind.

    Weitere Informationen zum Registrieren externer, gemeinsam genutzter Bibliotheksfunktionen finden Sie unter DECLARE - DLL-Befehl.

  • EVENTS
    Beendet die mit READ EVENTS gestartete Ereignisverarbeitung. Wird CLEAR EVENTS ausgeführt, wird die Programmausführung mit der Programmzeile direkt nach READ EVENTS fortgesetzt.

  • FIELDS
    Löscht eine mit SET FIELDS erstellte Liste und führt SET FIELDS OFF aus. CLEAR FIELDS unterscheidet sich von SET FIELDS TO darin, dass mit CLEAR FIELDS alle Feldlisten in allen Arbeitsbereichen und nicht nur die Liste des aktuellen Arbeitsbereichs gelöscht werden. Außerdem gibt SET FIELDS TO nicht implizit einen SET FIELDS OFF-Befehl aus.

  • GETS
    Löscht alle anstehenden @ ... GET-Anweisungen. Mit CLEAR werden ebenfalls alle noch nicht ausgeführten @ ... GET-Anweisungen gelöscht.

    Anmerkung   GETS wird aufgrund der Abwärtskompatibilität eingefügt.

  • MACROS
    Löscht alle Tastaturmakros, einschließlich der mit SET FUNCTION vorgenommenen Funktionstastenbelegungen, aus dem Arbeitsspeicher. Makros können mit SAVE MACROS in einer Makrodatei oder einem Memofeld gespeichert und mit RESTORE MACROS später wiederhergestellt werden. Mit RESTORE MACROS können Sie außerdem die Standardmakros wiederherstellen.

  • MEMORY
    Löscht alle globalen und lokalen Speichervariablen und Arrays aus dem Arbeitsspeicher. Systemvariablen werden nicht gelöscht.

  • MENUS
    Löscht alle Menüleistendefinitionen aus dem Arbeitsspeicher.

  • POPUPS
    Löscht alle mit DEFINE POPUP erstellten Menüdefinitionen aus dem Arbeitsspeicher.

  • PROGRAM
    Löscht den Inhalt des Puffers für kompilierte Programme. Visual FoxPro hält die zuletzt ausgeführten Programme in einem Puffer. In seltenen Fällen kann es vorkommen, dass Visual FoxPro Änderungen, die an Programmdateien auf Datenträgern vorgenommen wurden, nicht erkennt. Mit CLEAR PROGRAM bewirken Sie, dass Visual FoxPro die Programme erneut vom Datenträger und nicht aus dem Programmpuffer liest. Die häufigste Ursache dafür, dass Visual FoxPro Änderungen an Programmdateien nicht erkennt, ist die Verwendung eines externen oder speicherresidenten Editors (TSR-Editor) zum Bearbeiten von Programmdateien. Von dieser Ausnahme abgesehen sollten Sie CLEAR PROGRAM eigentlich nie brauchen.

  • PROMPT
    Löscht mit @ ... PROMPT erstellte Menüelemente.

  • READ [ALL]
    Wird nur aus Gründen der Abwärtskompatibilität bereitgestellt. Verwenden Sie stattdessen CLEAR EVENTS.

  • RESOURCES [FileName]
    Gibt den Namen einer aus dem Arbeitsspeicher zu löschenden zwischengespeicherten Bitmap, eines Bildes, Zeichensatzes, Cursors oder einer Symboldatei an. Wird kein Dateiname angegeben, werden alle Bitmaps, Bilder, Zeichensätze, Cursor und Symboldateien aus dem Arbeitsspeicher entfernt.

    Zeigt Visual FoxPro eine Bitmap-, Bild-, Cursor-, Symbol- oder Schriftart-Ressource an, wird diese zur Optimierung der Leistung zwischengespeichert. Wird eine Ressource gleichen Namens verwendet (z. B. eine andere Bitmap mit dem gleichen Namen wie eine bereits zwischengespeicherte), lädt Visual FoxPro die Ressource nicht neu.

    Das Löschen einer Ressourcendatei ist daher insbesondere sinvoll, um ein Bild aus dem Arbeitsspeicher zu löschen und Visual FoxPro zu zwingen, ein Bild gleichen Namens vom Datenträger zu laden. So kann beispielsweise ein Bericht Bilder aus einer Datenbank anzeigen, die alle den Namen TEMP tragen. Da jedoch alle Bilder den gleichen Namen tragen, lädt Visual FoxPro die Bilder erst dann neu, wenn zuvor das vorhandene Bild mit Hilfe des CLEAR RESOURCES-Befehls aus dem Arbeitsspeicher gelöscht wurde.

  • TYPEAHEAD
    Löscht den Inhalt des Tastaturpuffers. CLEAR TYPEAHEAD ist nützlich, wenn Sie Eingaben in ein Feld verhindern oder eine Antwort auf eine Eingabeaufforderung unterbinden möchten, bevor das Feld oder die Eingabeaufforderung angezeigt wird.

  • WINDOWS
    Löscht alle benutzerdefinierten Fensterdefinitionen aus dem Arbeitsspeicher und alle Fenster aus dem Visual FoxPro-Hauptfenster oder dem aktiven benutzerdefinierten Fenster. Mit SAVE WINDOW können Sie Fensterdefinitionen zur späteren Verwendung in einer Datei oder einem Memofeld speichern.

    Mit CLEAR WINDOWS werden alle Speichervariablenverweise auf Formulare aus dem Arbeitsspeicher gelöscht. Mit den folgenden Befehlen wird z. B. eine Speichervariable als Verweis auf ein Formular erstellt. Anschließend werden Informationen zu dieser Variablen ausgegeben.

    goMyForm = CREATEOBJECT('FORM')
    DISPLAY MEMORY LIKE goMyForm  && Displays GOMYFORM  O  FORM
    

    Mit CLEAR WINDOWS wird der Speichervariablenverweis aus dem Speicher gelöscht, die Variable enthält nun den NULL-Wert:

    CLEAR WINDOWS
    DISPLAY MEMORY LIKE goMyForm  && Displays GOMYFORM  O  .NULL.
    

Hinweise

CLEAR löscht das Visual FoxPro-Hauptfenster oder das aktuelle benutzerdefinierte Fenster und alle noch nicht ausgeführten @ ... GET-Anweisungen aus dem Arbeitsspeicher. Sie können CLEAR in Formatdateien angeben.

Siehe auch

@ ... CLEAR | CLOSE | DECLARE -DLL | READ | READ EVENTS | RELEASE | RELEASE CLASSLIB | RELEASE WINDOWS