• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

Подменю Reopen в меню File

  • Автор темы DoctorChe
  • Дата начала
D

DoctorChe

Здравствуйте!
Не получается создать нормальную нумерацию в подменю.
Пока что получилось вот что
Код:
procedure TForm1.Open1Click(Sender: TObject);
Var i: Integer;
s: String;

begin
if not OpenDialog1.Execute then Exit;
Save1.Enabled := True;
SaveAs1.Enabled := True;
Close1.Enabled := True;
Reopen1.Enabled := True;
for i := 3 downto 1
do begin
if Reopen1.Items[i-1].Caption = '' then Continue;
Reopen1.Items[i].Caption := Reopen1.Items[i-1].Caption;
s := Reopen1.Items[i].Caption;
MessageDlg(IntToStr(i) + 's=' + s, mtInformation, [mbOK], 0);
Delete(s,1,1);
MessageDlg(IntToStr(i) + 's delete=' + s, mtInformation, [mbOK], 0);
Reopen1.Items[i].Caption := IntToStr(i) + s;
Reopen1.Items[i].Visible:= True;
end;

Reopen1.Items[0].Caption := '0 ' + OpenDialog1.FileName;
Reopen1.Items[0].Visible:= True;
Reopen1.Items[0].Checked:= True;

if OpenDialog1.FileName<>'' then Self.Caption := 'Form1' + ' ' +
ExtractFileName(OpenDialog1.FileName)
else Self.Caption := 'Form1';
end;
Получается вот что:
После открытия первого файла
link removed
переменная s принимает значение
link removed
! Ноль подчеркнут
после
Код:
Delete(s,1,1);
переменная s принимает значение
3.png

! Ноль НЕ подчеркнут
А в подменю записывается вот-так
4.png

Как создать нормальную нумерацию: 0, 1, 2, 3?
И что бы цифра была подчеркнута.
 
A

acorn

Для "подчеркивания" символа ставится перед ним знак & вроде бы, а про нумерацию чтоб что-то сказать, лень разбираться в коде
 
D

DoctorChe

Код:
Reopen1.Items[0].Caption :=inttostr(Reopen1.Items.Count)+' '+ OpenDialog1.FileName;
говорит
'[' expected, but '.' found

Сделал так. Нумеруется теперь правильно. Но символ подчеркивания не отображается почему-то.
Код:
procedure TForm1.Open1Click(Sender: TObject);
Var i: Integer;
s: String;
begin
if not OpenDialog1.Execute then Exit;
Save1.Enabled := True;
SaveAs1.Enabled := True;
Close1.Enabled := True;
Reopen1.Enabled := True;
for i := 3 downto 1
do begin
if Reopen1.Items[i-1].Caption = '' then Continue;
Reopen1.Items[i].Caption := Reopen1.Items[i-1].Caption;
s := Reopen1.Items[i].Caption;
Delete(s,1,2);
Reopen1.Items[i].Caption := '&' + IntToStr(i) + s;
Reopen1.Items[i].Visible:= True;
end;
Reopen1.Items[0].Caption := '&0 ' + OpenDialog1.FileName;
Reopen1.Items[0].Visible:= True;
Reopen1.Items[0].Checked:= True;

if OpenDialog1.FileName<>'' then Self.Caption := 'Form1' + ' ' +
ExtractFileName(OpenDialog1.FileName)
else Self.Caption := 'Form1';
end;
Хотя в Message выводит с подчеркиванием.
Error.png
 
D

DoctorChe

Поможите други. Одна проблема осталась в лабораторной.

Вид подменю. Подчеркивания нет...
Error3.png

AutoHotkeys = maManual

Не могу понять что не так.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!