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

Тема в разделе "Pascal and Delphi", создана пользователем DoctorChe, 28 янв 2011.

  1. DoctorChe

    DoctorChe Гость

    Здравствуйте!
    Не получается создать нормальную нумерацию в подменю.
    Пока что получилось вот что
    Код (Delphi):
    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;
    Получается вот что:
    После открытия первого файла
    [​IMG]
    переменная s принимает значение
    [​IMG]
    ! Ноль подчеркнут
    после
    Код (Delphi):
    Delete(s,1,1);
    переменная s принимает значение
    [​IMG]
    ! Ноль НЕ подчеркнут
    А в подменю записывается вот-так
    [​IMG]
    Как создать нормальную нумерацию: 0, 1, 2, 3?
    И что бы цифра была подчеркнута.
     
  2. acorn

    acorn PHP Developer

    Регистрация:
    29 авг 2004
    Сообщения:
    599
    Симпатии:
    3
    Для "подчеркивания" символа ставится перед ним знак & вроде бы, а про нумерацию чтоб что-то сказать, лень разбираться в коде
     
  3. Dock1100

    Dock1100 :-]

    Регистрация:
    9 ноя 2009
    Сообщения:
    678
    Симпатии:
    0
    Код (Delphi):
    Reopen1.Items[0].Caption :=inttostr(Reopen1.Items.Count)+' '+ OpenDialog1.FileName;
    както так
     
  4. DoctorChe

    DoctorChe Гость

    говорит
    '[' expected, but '.' found

    Сделал так. Нумеруется теперь правильно. Но символ подчеркивания не отображается почему-то.
    Код (Delphi):
    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
     
  5. DoctorChe

    DoctorChe Гость

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

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

    AutoHotkeys = maManual

    Не могу понять что не так.
     
  6. DoctorChe

    DoctorChe Гость

    Вопрос решен тупым использованием кнопочки Alt.
     
Загрузка...
Похожие Темы - Подменю Reopen меню
  1. fedotxxl
    Ответов:
    4
    Просмотров:
    5.373
  2. Senset
    Ответов:
    0
    Просмотров:
    2.330

Поделиться этой страницей