2016-04-28 91 views
0

是否有可能在java中從GUI中的工具提示中獲取文本,我沒有做。例如,我可能在Web瀏覽器或桌面應用程序中,並在後臺運行我的Java程序。我想獲取任何彈出的工具提示信息(隨時)並將其返回給java程序。Java獲取工具提示信息

只是爲了澄清我不問如何創建工具提示或獲取gui中的工具提示數據我只提供出現在其他第三方軟件中的工具提示。謝謝。

回答

1

工具提示文本必須位於軟件的「某處」。 「在某處」可能是不同的地方屈指可數,這取決於如何在軟件構建和分發:

  • 字符串文字的源代碼(因而在字節碼,也是如此),這種情況經常發生在非國際計劃
  • 資源包,即字符串是從源代碼外部化到一個單獨的文件(通常是每一個支持用戶界面語言)

如果軟件分佈的* .jar-文件​​,用你喜歡的解壓縮 - 軟件解壓縮(如有疑問,請使用7zip)。

查看* .properties文件,這些文件可能包含您正在查找的資源包(= UI-text-Strings的集合)。

如果找不到資源包,則工具提示文本可能直接隱藏在字符串文本字節碼中。在* nix-ish平臺上使用類似字符串(1)的東西(這個沒有鏈接,似乎我只能發佈2個鏈接)或者在Windows上使用Strings來從* .class-文件中提取可打印的字符串。

請注意,您可能在其中找到批次的可打印字符串,因此您可能需要使用合適的正則表達式對它們進行過濾。