亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Java awt - 獲取根窗口的標題

Java awt - 獲取根窗口的標題

萬千封印 2023-07-13 14:30:13
我正在為 Burp Suite 編寫一個插件,我想在我的插件中使用當前打開的項目名稱。遺憾的是,沒有對此進行 API 調用,因此我的替代方案是獲取窗口標題并用正則表達式輸出項目名稱。窗口標題如下所示:但是,我似乎無法使用代碼獲取該窗口的標題。我已經嘗試過所有這些:SwingUtilities.windowForComponent(tab);SwingUtilities.getWindowAncestor(tab);SwingUtilities.getAncestorOfClass(JFrame.class, tab);SwingUtilities.getRoot(tab);SwingUtilities.getRootPane(tab).getParent();全部返回:( .tostring())burp.a_5[frame0,0,23,1280x720,invalid,layout=java.awt.BorderLayout,title=Burp Suite Professional v2.1.03 - Temporary Project - licensed to OMITTED [OMITTED license],resizable,maximized,defaultCloseOperation=DO_NOTHING_ON_CLOSE,rootPane=javax.swing.JRootPane[,0,22,1280x698,invalid,layout=javax.swing.JRootPane$RootLayout,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.synth.SynthBorder@1a0b90f7,flags=16777673,maximumSize=,minimumSize=,preferredSize=],rootPaneCheckingEnabled=true]然而,似乎沒有辦法真正從這個對象中獲取 title= 。該函數.getName()返回:frame0. 也許我錯過了一些明顯的東西。如何獲取title=此 AWT 容器對象?
查看完整描述

1 回答

?
森林海

TA貢獻2011條經驗 獲得超2個贊

嘗試以下操作:


((JFrame) SwingUtilities.windowForComponent(tab)).getTitle();

也許你應該檢查你的窗口是框架還是對話框


Window w = SwingUtilities.windowForComponent(tab);

String title = null;

if (w instanceof JFrame) {

    title = ((JFrame) w).getTitle();

} else if (w instanceof JDialog) {

    title = ((JDialog) w).getTitle();

}


查看完整回答
反對 回復 2023-07-13
  • 1 回答
  • 0 關注
  • 140 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號