我正在使用Delphi XE,並希望在我的應用程序的Windows 7任務欄跳轉列表中添加「最近的項目」,例如右鍵單擊Microsoft Word時會顯示最近打開的文檔。 我找到了關於如何設置進度的信息,但沒有關於跳轉列表項的信息。任何幫助將不勝感激。如何將最近的項目添加到Windows 7任務欄上的程序跳轉列表中?
回答
我認爲要做到這一點的最好辦法是讓下面簡單的API調用:
SHAddToRecentDocs(SHARD_PATH, PChar(FileName));
這與Windows 7跳轉列表不僅交易,但也增加了你的文件到最近使用的系統列表對早期版本的Windows也有影響的文檔。
打開或保存文件時調用該函數。
爲了您的方便,鏈接到SHAddToRecentDocs()
的文檔。
例如,如果您只使用標準的Windows文件對話框,則會自動發生。至少我的文本編輯器Rejbrand Text Editor已經得到了Windows的MRU列表。它列出了我最近使用Rejbrand Text Editor編輯的所有文件,儘管我沒有爲它編寫任何代碼。
Windows 7 jump list http://privat.rejbrand.se/rtejump.png
我認爲視窗觀察的文件,你
- 開放,由開始
yourapp.exe <file name>
,例如通過標準的Windows文件對話框 - 在你的應用程序中打開的方式在應用程序中保存雙擊在您的應用程序中打開的文件
並自動顯示這些在列表中。
如果要以編程方式控制任務欄按鈕和菜單,可以使用Windows API。特定於Delphi的示例可在this blog post中找到。
+1時,我發現一些有用的資源;順便說一句。 Daniel Wischnewski在Delphi中編寫了一個用於Windows 7的複雜組件包。它被提及例如[在這篇文章中](http://stackoverflow.com/questions/4588151/how-to-create-own-control-in-windows-7-aero-task-preview/4588209#4588209)。但該網站現在已經死了,我甚至無法再找到它了。將它重新上傳到某個地方會很好。 – 2011-04-27 15:50:57
謝謝,但這根本不適合我。我試圖固定軟件,我試圖將其移動到程序文件文件夾..沒有任何工作。即使我手動調用SHAddToRecentDocs。任何想法 ? – jonjbar 2011-04-28 07:59:55
確定在那裏找到它:http://msdn.microsoft.com/en-us/library/bb762105%28v=vs.85%29.aspx - 應用程序必須在HKEY_CLASSES_ROOT \ Applications下注冊 - 應用程序的HKEY_CLASSES_ROOT \ Applications註冊必須在HKEY_CLASSES_ROOT \ Applications \ ExampleApp.exe \ shell子項下定義一組默認動詞...我的應用程序在開發過程中不是這樣:( – jonjbar 2011-04-28 08:10:54
- 1. 如何將'將此程序固定到任務欄'添加到Windows 7的跳轉列表中?
- 2. 如何將Windows 7跳轉列表添加到應用程序
- 3. Windows 7任務欄 - 跳轉列表,跳轉列表鏈接和跳轉列表
- 4. 如何找到Windows 7中任務欄項目的順序?
- 5. 打開Windows 7任務欄跳轉列表的快捷方式
- 6. Windows 7的自定義標題跳轉列表最近的項目
- 7. 如何將程序添加到Windows 7程序列表?
- 8. 自定義Windows 7任務欄「跳轉列表」中的默認任務欄任務
- 9. 將項目添加到任務欄應用程序菜單
- 10. 將項目添加到Windows 7中的其他應用程序任務欄菜單
- 11. 的Windows 7跳轉列表
- 12. 刪除任務欄跳轉列表?
- 13. 如何讓程序跳過GNU/Linux中的任務欄(任務列表)?
- 14. .NET Windows 7跳轉列表 - 複選框/收音機跳轉列表項目
- 15. 將WPF應用程序添加到Windows任務欄
- 16. 如何將列添加到Windows Phone 7中的列表控件?
- 17. 將項目添加到Windows列表框窗體應用程序,
- 18. 如何刪除Windows 7上Java程序的標題欄和任務欄圖標?
- 19. 跳轉到列表框中的項目
- 20. 如何在Windows 7 for .NET的任務欄上疊加圖標
- 21. 如何將Google Chrome應用程序添加到任務欄?
- 22. 如何將最近打開的文檔添加到WPF中的OpenRecent菜單項
- 23. 將課程添加到順序中的項目列表中
- 24. 如何將項目添加到序言中的列表
- 25. Windows 7任務欄
- 26. ,如何將項目添加到最終的,預填充列表?
- 27. Windows 7任務欄上的應用程序位置
- 28. Windows 7+上的Multiapp任務欄分組
- 29. 如何將項目添加到線程列表中並保持添加順序?
- 30. 如何在Python中找到最近添加到隊列中的項目?
是不是由Windows文件對話框自動調用函數? – 2011-04-27 16:33:15
並非所有事情都經歷了對話。例如MRU菜單。 – 2011-04-27 17:42:45
謝謝,這對我的MRU有很大的幫助,但正如我對其他答案所說的那樣,它根本不起作用。任何想法可能導致這個問題? – jonjbar 2011-04-28 08:00:45