[英]Possible to remove Title bar from JFileChooser?
我正在嘗試顯示一個沒有標題欄的簡單 JFileChooser。 下面是示例代碼:
package ca.customfilepicker.main;
import java.awt.Component;
import java.awt.HeadlessException;
import javax.swing.BorderFactory;
import javax.swing.JDialog;
import javax.swing.JFileChooser;
class CustomFileChooser
{
public static void main(String args[]) {
JFileChooser chooser = new JFileChooser() {
@Override
protected JDialog createDialog(Component parent) throws HeadlessException {
JDialog diag = super.createDialog(parent);
//diag.setUndecorated(true);
return diag;
}
};
chooser.setBorder(BorderFactory.createTitledBorder("Open"));
chooser.showOpenDialog(null);
}
}
所以基本上我希望我設置的邊框是頂級標題欄。 示例圖像:
到目前為止,我實現這一目標的運氣為零,也沒有發現任何其他人在尋找類似的外觀。 感謝幫助! 干杯
JFileChooser
只是一個 Swing 組件。 它可以添加到任何容器中。
因此,您可以創建一個未修飾的 JDialog 並將 JFileChooser 的一個實例添加到對話框中。
現在的問題是“打開”和“取消”按鈕不會關閉對話框,因此您需要手動關閉。 您可能會覆蓋 JFileChooser 的“approveSelection() and
cancelSelection()”方法。
我猜邏輯是調用 super.approveSelection() 或 super.cancelSelection(),然后使用SwingUtilities.windowForComponent(...)
方法獲取父 window,然后在 window 上調用dispose()
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.