Цитата:
Как-то так. Возможно, придется при выборе пункта делать все перемещения руками, но это детали - надо проверить, хотя должно работать и так.
Создание буферного списка опущено.
|
Тут проблема в том что надо делать по заданию.
Цитата:
Для изменения этой нумерации используйте процедуру Delete из модуля System.
- В качестве нулевой строки вложенного меню установить подчеркнутую цифру 0, а за ней полное имя файла, полученное из диалогового окна. Свойство Visible этой строки установить равным True.
|
Сделал так. Нумеруется теперь правильно. Но символ подчеркивания не отображается почему-то.
Код:
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 выводит с подчеркиванием
Error2.png