Чтобы не плодить новых тем, позволю себе воспользоваться этой, ведь суть вопроса та же.
Набросал код, но он работает не так как задумывалось.
Почему-то если выбрать пункт меню, то соответствующая процедура текст не выводит. Если процедуру вызвать до вывода меню, то текст отображаеться. Видно какая-то мелочь, но никак не могу разобраться...
program BusList;
uses font32;
var
ok, clicked: command;
w, h, key: integer;
procedure cls2;
begin
setColor(255, 255, 255);
fillRect(0, 0, w, h);
delay(200)
end;
procedure ShowList(s: string);
var
htext : integer;
begin
textwindow(2, 2, w-2, h-12);
htext := format(s, 0);
cls2;
drawtextwindow;
repaint;
delay(2000);
end;
procedure ShowFirstMenu;
var
p1, p2 : integer;
exit, next, clicked ,cmdQuit: command;
begin
ShowMenu('Выберите остановку', CH_IMPLICIT);
p1 := MenuAppendString('Halt');
p2 := MenuAppendString('Вывести текст');
next := CreateCommand('Далее', CM_SCREEN, 0);
AddCommand(next);
ShowCanvas;
repeat
delay(100);
clicked := GetClickedCommand;
until clicked <> EmptyCommand;
ClearForm;
if clicked = next then begin
if MenuGetSelectedIndex = p1 then halt;
if MenuGetSelectedIndex = p2 then ShowList('Test test test test test test test test');
end;
end;
begin
w := getWidth;
h := getHeight;
font32.init(1);
font(0);
loadfont('Verdana_7');
// Если выводить текст до вывода меню, то все впорядке.
// ShowList('Test test test test test test test test');
ShowFirstMenu;
end.