이 질문에 대한 대답은 3 년 전이지만 이전에 비해 절반에 불과했습니다. How To Read and Write Delphi 2010 RibbonApplicationMenuBar Recent Items To A File 하고 MRU 목록 만 성공적으로 다시로드하는 방법에 대한 정보는 없음을 저장하는 방법을 알아낼 수 있도록 허용 대답은 충분한 정보를 제공합니다 Delphi 2010 RibbonApplicationMenuBar 읽기 및 쓰기 방법 최근 항목/파일에서 Part2
원래의 질문
는 여기에있다.이것은 내가 지금 가지고있는 것입니다.
SaveDocHistory()는 폼의 closing 이벤트에 의해 호출되며 예상 한대로 작동합니다.
procedure TfrmMain.SaveDocHistory;
var
ini : TIniFile;
i : Integer;
begin
Ini := TIniFile.Create(ChangeFileExt(Application.ExeName,'.ini'));
try
ini.EraseSection('DocHistory');
ini.WriteString('DocHistory', 'FileCount', IntToStr(RibbonApplicationMenuBar1.RecentItems.Count));
for i := 0 to Pred(RibbonApplicationMenuBar1.RecentItems.Count) do
ini.WriteString('DocHistory', 'File' + IntToStr(i),
RibbonApplicationMenuBar1.RecentItems.Items[i].Caption);
finally
ini.Free;
end;
end;
결과의 INI 파일 항목은 다음과 같이 :
[DocHistory]
FileCount=3
File0=F:\Projects\StevenTest\Test02.rtf
File1=F:\Projects\StevenTest\Test1.rtf
File2=F:\Projects\StevenTest\Test01.rtf
문제는 RibbonApplicationMenuBar의 RecentItems 목록을 다시로드됩니다. 내 코드는 응용 프로그램의 최근에 사용 된 섹션에 항목이 나열되어 작동한다는 것을 '나타납니다'. 그러나 '실제'항목과 달리 click 이벤트에 응답하지 않습니다. mru 목록에 추가 된 모든 새 항목은 작동하지만 내 '임플란트'는 작동하지 않습니다. 따라서 캡션을 다시로드하지만 파일 정보는 다시로드하지 않는 것으로 보입니다. 여기 내 코드는 RibbonApplicationMenuBar를 보유하고있는 폼의 FormCreate 이벤트에 의해 호출되는 함수입니다. 나는 그들이 중 하나를 언급 델파이의 도움하지만 AddRecentItem() 함수 방법을 해독 시도했습니다
procedure TfrmMain.LoadDocHistory;
var
ini : TIniFile;
nCount, i : Integer;
sTmp : string;
begin
Ini := TIniFile.Create(ChangeFileExt(Application.ExeName,'.ini'));
try
nCount := ini.ReadInteger('DocHistory', 'FileCount', 0);
for i := 0 to Pred(nCount) do
begin
sTmp := ini.ReadString('DocHistory', 'File' + IntToStr(i), '');
RibbonApplicationMenuBar1.RecentItems.Add.Caption := sTmp;
end;
finally
ini.Free;
end;
end;
는 RibbonApplicationMenuBar에 적용 할 수 없습니다 또는 내가 그것을 사용하려고 길을 잘못되었습니다. 웹을 검색했지만 이전에 언급 한 스레드에 대한 여러 참조가 있습니다. 이 문제의 후반부가 성공적으로 해결 된 사람이라면 그 정보를 고맙게 생각합니다.
BTW는 게시물의 제목처럼 Delphi2010을이 프로젝트에 사용하고 있습니다.
감사합니다 ..
가능한 복제본 [Delphi 2010 RibbonApplicationMenuBar 최근 항목을 파일로 읽고 쓰는 법] (http://stackoverflow.com/questions/1402373/how-to-read-and-write-delphi-2010-ribbonapplicationmenubar- 최근 아이템 - 투 - 파일) –
고의로 질문이 정확한지 물어보십시오. 대신 원본 질문에서 대답을 편집하거나 직접 질문을 제공하십시오. 원래 질문에 대한 새로운 대답으로 유용한 코드를 추가하는 것이 좋습니다. 그런 다음 삭제하십시오. –
나는 이것을 입력 할 때 - 고의로 질문하지 않았습니다. 최초의 질문은 3 년 이상 유휴 상태 였고 그 중 1/2 만 응답되었으므로 완전한 대답을 얻기 위해 다시 질문 할 시간이었습니다. 나는 방금 이것을 게시 한 직후 해답을 찾았습니다. – TheSteven