AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Konsole leeren?

Ein Thema von LDericher · begonnen am 15. Dez 2008 · letzter Beitrag vom 16. Dez 2008
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von LDericher
LDericher

Registriert seit: 29. Jan 2007
Ort: Erkelenz
224 Beiträge
 
Delphi 7 Enterprise
 
#1

Konsole leeren?

  Alt 15. Dez 2008, 16:54
Hi!

Habe vor, das Sequel zu meinem Konsolengame DOR rauszubringen.
DOR selbst ist schon recht alt - mein erstes Delphi-Spiel - und lässt sich Hier auf meiner Webseite finden.
Nun suche ich eine Möglichkeit, die Konsole zu leeren, also z.B.

Delphi-Quellcode:
Irgendwas reinschreiben();
Nochwas schreiben();
LEEREN(); //Konsole soll leer sein!
Was neues schreiben();
...
Kennt jemand eine passende Möglichkeit?

Danke im Voraus,
Euer LDer!
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.755 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Konsole leeren?

  Alt 15. Dez 2008, 17:00
Guten Abend,

also in der cmd shell heißt der Befehl cls (ClearScreen).

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Konsole leeren?

  Alt 15. Dez 2008, 17:07
AFAIK gibt es für Delphi auch eine Portierung der alten TP-Unit crt. Da hieße das dann clrscr.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von LDericher
LDericher

Registriert seit: 29. Jan 2007
Ort: Erkelenz
224 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Konsole leeren?

  Alt 15. Dez 2008, 17:23
Zitat von Klaus01:
Guten Abend,

also in der cmd shell heißt der Befehl cls (ClearScreen).

Grüße
Klaus
Ja und wie führe ich CLS aus?
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.755 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Konsole leeren?

  Alt 15. Dez 2008, 17:30
Schreibe doch mal mit welcher Sprache Du Dein Programm erstellt hast.
Wenn es TurboPascal ist, dann geht auch, wie DeddyH geschrieben hat, ClrScr.
Wenn es ein Delphi Consolen Programm ist, kannst Du dir die crt32.pas suchen
und in Dein Programm einbinden.
Dann hast Du auch den Befehl ClrScr zur Verfügung.

Wenn Du Deine Console mit pipes o.ä. bedienst
dann kannst Du cls über die pipe an die Console
schicken.

Also etwas mehr Infos von Deiner Seite sind gefragt.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von LDericher
LDericher

Registriert seit: 29. Jan 2007
Ort: Erkelenz
224 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Konsole leeren?

  Alt 15. Dez 2008, 17:36
Ja hmmm...

Delphi32 steht ja in der Überschrift
Pipes (was auch immer das sein mag) benutze ich höchstens ohne es zu wissen
Und noch bin ich in der ... Durchdenkenphase - das Projekt hat bisher ein testmäßiges writeln und ein readln. Mehr noch nicht.
Genug?

By LDer.
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.755 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: Konsole leeren?

  Alt 15. Dez 2008, 17:40
Zitat von Superwinger:
Ja hmmm...

Delphi32 steht ja in der Überschrift :D
Pipes (was auch immer das sein mag) benutze ich höchstens ohne es zu wissen :D
Und noch bin ich in der ... Durchdenkenphase - das Projekt hat bisher ein testmäßiges writeln und ein readln. Mehr noch nicht. ;)
Genug?

By LDer.
.. dann binde die CRT32.pas ein und gut ist es.

Schönen Abend noch
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von LDericher
LDericher

Registriert seit: 29. Jan 2007
Ort: Erkelenz
224 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Konsole leeren?

  Alt 15. Dez 2008, 17:44
Dankiiiii!

Hatte selbst keine funktionierende Version gefunden
  Mit Zitat antworten Zitat
Benutzerbild von nicodex
nicodex

Registriert seit: 2. Jan 2008
Ort: Darmstadt
286 Beiträge
 
Delphi 2007 Professional
 
#9

Re: Konsole leeren?

  Alt 15. Dez 2008, 17:46
Delphi-Quellcode:
program HelloWorld;

{$APPTYPE CONSOLE}

uses
  Windows,
  SysUtils;

function ClearConsoleScreen(): Boolean;
var
  ConsoleOutput: THandle;
  ConsoleScreenBufferInfo: TConsoleScreenBufferInfo;
  WriteCoord: TCoord;
  NumberOfCharsWritten: DWORD;
begin
  Result := False;
  ConsoleOutput := GetStdHandle(STD_OUTPUT_HANDLE);
  if ConsoleOutput <> INVALID_HANDLE_VALUE then
  begin
    if GetConsoleScreenBufferInfo(ConsoleOutput, ConsoleScreenBufferInfo) then
    begin
      WriteCoord.X := 0;
      WriteCoord.Y := 0;
      if FillConsoleOutputCharacter(ConsoleOutput, ' ',
        ConsoleScreenBufferInfo.dwSize.X * ConsoleScreenBufferInfo.dwSize.X,
        WriteCoord, NumberOfCharsWritten) then
      begin
        Result := SetConsoleCursorPosition(ConsoleOutput, WriteCoord);
      end;
    end;
  end;
end;

begin
  try
    WriteLn('Hallo');
    ClearConsoleScreen();
    WriteLn('World');
  except
    on E: Exception do
      Writeln(E.Classname, ': ', E.Message);
  end;
  ReadLn;
end.
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#10

Re: Konsole leeren?

  Alt 15. Dez 2008, 17:48
@Nicodex:
Da fehlt noch das setzen der Farben.
Aber ich vermute die CRT32 wird dat schon richten.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:09 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz