Форум: "Потрепаться";
Текущий архив: 2003.06.26;
Скачать: [xml.tar.bz2];
ВнизЭмулятор консоли или что-то вроде этого... Найти похожие ветки
← →
Centronix (2003-06-07 13:00) [0]Привет.
Никто не знает где можно нарыть компонент для GUI приложения, который бы работал как стандартная ДОС-овская консоль ? Имеется ввиду визуально - чтоб можно было задать цвет текста/фона для отдельных символов, ввести какие-либо данные (с запрещением перемещения текстового курсора вне поля ввода) и т.п. и т.д.
ЗЫ: Сорри есле немного не в тему форума, но ИМХО в другие разделы оно еще больше не в тему.
← →
Юрий Зотов (2003-06-07 14:32) [1]Компонентов таких не видел, но что мешает написать в программе соответствующий код? Например, такой:
procedure TForm1.Button1Click(Sender: TObject);
var
S: string;
begin
if AllocConsole then
try
SetConsoleTextAttribute(STD_OUTPUT_HANDLE,
FOREGROUND_BLUE or BACKGROUND_GREEN or BACKGROUND_RED or BACKGROUND_INTENSITY);
WriteLn("Hello, world!");
repeat
ReadLn(S);
Caption := S
until S = ""
finally
FreeConsole
end
end;
Все, что нужно для управления косолью можно найти в справке API, раздел Console functions.
← →
Centronix (2003-06-07 16:48) [2]Мне нужно чтобы эта "псевдоконсоль" была в виде контрола на форме, а не отдельным окном...
← →
Домарощинер (2003-06-07 17:09) [3]Ну так бери напиши свой компонент "в виде контрола на форме", который будет инкапсулировать это окно. Тем более, что и как он его будет инкапсулировать, тебе уже написали.
В чём проблема?
С Уважением, борец против общества потребителей.
← →
Centronix (2003-06-07 17:39) [4]
> как он его будет инкапсулировать, тебе уже написали.
> В чём проблема?
Во-первых, то что мне написали нельзя инкапсулировать "в виде контрола на форме" по определению (AllocConsole уже создает новое консольное окно).
Во-вторых, если бы я мог сам написать такой компонент, то я бы это сделал.
← →
Иван Шихалев (2003-06-07 17:53) [5]См. API - Caret Functions etc. А уж как сделать свое окно внешне похожим на консоль - сам разберешься.
← →
R4D][ (2003-06-08 13:40) [6]А что если в OleContainer открыть WinExec("command.com", SW_SHOW)?
← →
Spell Checker (2003-06-08 15:14) [7]procedure TConsole.Show(Sender: TObject);
var
S: string;
begin
if AllocConsole and not(csDesigning in ComponentState)then
try
SetConsoleTextAttribute(STD_OUTPUT_HANDLE,
FOREGROUND_BLUE or BACKGROUND_GREEN or BACKGROUND_RED or BACKGROUND_INTENSITY);
WriteLn("Hello, world!");
repeat
ReadLn(S);
Caption := S
until S = ""
finally
FreeConsole
end
end;
щас проверю в действии.
А вообще, я видел такой компонент в одном пакете для разработки игр...
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2003.06.26;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.026 c