Aplikacja Konsolowa

0
  1. Jak zrobić aplikacje konsolową która zamknie się
    po naciśnięciu klawisza dowolnego.
    Chodzi mi o odpowiednik Repeat Until KeyPressed

  2. Jak zamknąć taką aplikację z innego programu?
    W FAQ jest przyjład ale trzeba podać klasę okna
    i nie wiem co mam wpisać.

piechnat

0

1: na końcu wpisz READLN; będzie czekać, az coś wcisniesz (chyba) hmm... --Spin
(Delphi 5 Enterprise)

0

Natknełem na grupie na taki kodzik:

program ReadKeyTest;
{$APPTYPE CONSOLE}

uses Windows;

function ReadKey:Char;
var
Rec: TInputRecord;
x: Cardinal;
begin
repeat
ReadConsoleInput(GetStdHandle(STD_INPUT_HANDLE), Rec, 1, x);
until (Rec.EventType = KEY_EVENT) and (Rec.Event.KeyEvent.bKeyDown);
Result:= Rec.Event.KeyEvent.AsciiChar;
end;

var znak: Char;

begin
writeln('Naciśnij ESC...');
repeat
znak:= ReadKey;
write('kod: ', Ord(znak):3, #13);
until (znak = #27);
end.

niestety nie wiem czy działa, i podobno też można zciągnąć dodatkowy modul do Delphi CRT32.pas dzieki któremu masz dostęp do takich funkcji i procedur Function WhereX: integer; Function WhereY: integer; procedure ClrEol; procedure ClrScr; procedure InsLine; Procedure DelLine; Procedure GotoXY(const x,y:integer); procedure HighVideo; procedure LowVideo; procedure NormVideo;
procedure TextBackground(const Color:word); procedure TextColor(const Color:word); procedure TextAttribut(const Color,Background:word);
procedure Delay(const ms:integer); function KeyPressed:boolean;
function ReadKey:Char; Procedure Sound; Procedure NoSound; procedure ConsoleEnd; procedure FlushInputBuffer; Function Pipe:boolean;

Troche przesadziłem z objetością ale mam nadzieje że to ci pomoże. {hello}
--Pozdrowienia {hello} {hello} {hello}
Chodek ;)
Delphi 6

1 użytkowników online, w tym zalogowanych: 0, gości: 1