我需要做一个JOptionPane(或类似的东西)与一个JTextField和两个RadioButtons,但我不知道这是可能的。我有一个不同选项的主框架,当我点击“操作”时,我应该调用对话框。我怎样才能做出这个对话?如何做一个自定义JoptionPane
回答
一个textfield和两个单选按钮应该足够小以适合JOptionPane,因此最好继续使用它。
将带有两个单选按钮的JTextField添加到JPanel中,并将该JPanel添加为显示在JOptionPane中的组件。可能希望使用只显示“Ok”的选项窗格,其中一个单选按钮已被选中。
为了安全起见,您可能希望将Janel包装到JScrollPane中,因为我不认为JOptionPanes是可重定义的,并且取决于用户是否通过命令行选项或可访问性设置更改了外观和感觉,那么您可能会切断一些GUI组件。
滚动窗格不应该是必要的 - 列出的组件应该是'pack()'罚款(每次显示时都会为您提供'JOptionPane') –
仅供参考'JOptionPane'可以调整大小:'op =新的JOptionPane(...)','dlg = op.createDialog();''dlg.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);'最后:'dlg.setResizable(true);''dlg.pack(); ' –
就我个人而言,我不喜欢使用JOptionPane。沿着使用JDialog的路径走下去。
它可以是简单的:
JPanel innerPanel = new JPanel(new FlowLayout());
// Add components and listeners here
JDialog dialog = new JDialog();
dialog.add(innerPanel);
dialog.setModal(true);
dialog.pack();
dialog.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
dialog.setVisible(true);
dialog.addWindowListener(new WindowAdapter()
{
@Override
public void windowClosing (WindowEvent e)
{
super.windowClosing(e);
}
});
我在项目中添加了一个JDialog,并对其进行了配置,但我不知道如何从JFrame调用JDialog,并且需要将帧中的变量传递给对话框。我使用Eclipse和Window Builder插件,它为包中的每个组件创建一个类。我想我没有解释得很好。 – temerariomalaga
我不熟悉Window Builder。希望它有一种插入你自己的定制逻辑的方法。在JFrame定制逻辑中,您需要创建对话框。就像'MyJDialog mydiaolog = new MyJDialog();' –
好吧,我试试。我全部使用界面自动完成。我会做对话并复制代码。谢谢你。 – temerariomalaga
- 1. 自定义JOptionPane
- 2. 如何编写自定义JOptionPane按钮?
- 3. JOptionPane自定义输入
- 4. 返回值自定义JOptionPane,Java
- 5. JOptionPane showInputDialog与自定义按钮
- 6. C#如何做一个自定义外壳来替换explore.exe
- 7. 如何做一个自定义排序列表
- 8. 如何基于的UISearchBar 做一个自定义的UISearchBar为iPhone
- 9. 如何设置对自定义JOptionPane的响应?
- 10. 的JOptionPane如何调用自定义按钮
- 11. 我该如何做自定义路线?
- 12. 如何自动关闭JOptionPane?
- 13. 如何做一个自定义的每个项目中的两个集合
- 14. 如何做一个自定义组件里面煎茶触摸自灭
- 15. 如何从一个Activity自定义listview到另一个activity自定义listView?
- 16. 如何创建一个自定义NSMenuItem
- 17. 如何自定义一个CollectionType()项目?
- 18. 如何使一个自定义安装
- 19. 如何从一个自定义tableviewCell
- 20. JOptionPane的按钮和一个自定义面板之间的通信
- 21. 如何在GUI中出现另一个JOptionPane时关闭一个JOptionPane
- 22. 自定义像按钮你如何做到这一点?
- 23. 如何在Android上做这个自定义标签?
- 24. X - 可编辑 - 如何做“自定义输入,几个领域”
- 25. 如何定义一个自定义的跨平台size_t类型?
- 26. 如何定义一个自定义的cout?
- 27. 如何在mySQL中定义一个自定义ORDER BY订单
- 28. 如何为TextView定义一个自定义BindingMethod?
- 29. 如何使用pywavelets定义一个自定义Ricker小波?
- 30. 如何从npm定义一个自定义角度模块?
看看这个教程:http://docs.oracle.com/javase/tutorial/uiswing/components/dialog.html – mdewitt
使用扩展的JDialog类。使用.setModal(true)将其设置为模态,然后将其显示给用户。你可以设计它的init方法来随心所欲地构建它,并且它会像JOptionPane一样工作,假设你暴露类似.getDialogResult()的东西,它根据点击的内容返回true/false,.getValue()它返回用户输入数据。 –