2012-03-20 141 views
0

這是我第一次使用Swing項目,我幾乎不知道任何與Java和GUI相關的東西。在與SWT(Eclipse)鬥爭之後,我決定切換到NetBeans for Swing應用程序(我不想去netbeans平臺atm)。所以我可能會在我的項目正在進行時嘮叨你們。打開文件選擇對話框

我的第一個問題是如何打開JFileChooser對話框來選擇特定的目錄?這是我做了什麼:

在Swing設計者模式

  • 降文本字段(可編輯錯誤,使用戶不會輸入值)
  • 刪除按鈕旁邊標有「瀏覽「
  • 現在,這裏是混亂,我應該在窗格上放置一個JFileChooser?如果我這樣做,那麼面板始終顯示「瀏覽」對話框......或者我應該在按鈕單擊事件上創建新的JFileChooser嗎?最佳做法是什麼?

重要 這個問題我問的不是如何使用JFileChooser。我正在問如何在Netbeans中使用Swing Designer。當我從調色板中刪除它時,它總是顯示在設計器中。

P.S: 經過艱苦的鬥爭,我決定和Swing一起去。我甚至不願意去使用基於Java的GUI,但我沒有選擇,因爲Java有更好的底層api,用於我正在開發的項目,現在構建基本的GUI很糟糕!

我真的很感激,如果你們不給我挑我的基本的基於Swing的問題

回答

0

我在想,你使用的File Chooser是來自Swing Window,你不能將它添加或附加到按鈕上。

最簡單的方法來進行:按鈕的

屬性 - >事件 - >的actionPerformed

添加事件(點擊箭頭,選擇默認或...自定義的方法名稱

Netbeans會自動切換到Source模式。

在創建的方法中添加如下內容:

 JFileChooser jfc; 
     jfc = new JFileChooser();  
     File f = new File(System.getProperty("user.dir")); 
     jfc.setCurrentDirectory(f); 
     jfc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); 
     jfc.showOpenDialog(parentFrame); 
     File selFile = jfc.getSelectedFile(); 
2

當你開始使用Swing,我強烈建議閱讀的Swing教程。例如,您要使用的關於JFileChooser的部分位於here。這些教程包含大量示例代碼,並且是javadoc的一個很好的補充。

該教程的快速掃描沒有顯示出回答你的問題,所以這裏的直接鏈接到方法,你正在尋找的javadoc的:JFileChooser#setCurrentDirectory

+0

我問的問題不是如何使用'JFileChooser'。我正在問如何在Netbeans中使用Swing Designer。當我從調色板中刪除它時,它總是顯示在設計器中。 – 2012-03-20 17:44:26

+0

對不起,沒有NetBeans Swing Designer的使用經驗。 – Robin 2012-03-20 17:46:49

0

在屬性窗口中,該場所fileSelectionMode設置爲DIRECTORIES_ONLY。此外,您可以設置currentDirectory,selectedFile

Swing下的BTW GUI功能不是很強大。

+0

你可以在回答之前閱讀這個問題嗎?閱讀我的問題中的**重要**標籤。 – 2012-03-20 18:30:41

+0

對不起,今天我覺得很蠢。是按鈕的actionPerformed調用JFileChooser。 JFileChooser第一次有點慢,所以也許會成爲一個領域。在導航器中,選擇「其他組件」並從Windows插入JFileChooser。 – 2012-03-20 18:38:59

0

我知道這個問題有一個公認的答案,但如果你想使用的JFileChooser從NetBeans設計視圖,轉到導航器,右鍵點擊其他組件 - >從palatte補充。 JFileChooser將被添加到你的面板/框架,你可以使用NetBeans屬性窗口來配置它