如何默认选择 JDesktopPane 上的 InternalFrame?
我有一个带有 JDesktopPane 的 JFrame,在 JDesktopPane 内部,我使用构造函数启动 JInternalFrame。 (它是一个类似于身份验证用户的应用程序,具有文本框用户和文本框通行证)
我像这样启动内部:
MyInternalFrame internalF = new MyInternalFrame();
desktopPane.add(internalF);
我尝试:
internalF.setVisible(true);
internalF.setSelected(true);
desktopPane.getDesktopManager().activateFrame(internal);
desktopPane.setSelectedFrame(internal);
如何启动 JInternalFrame 及其默认选择的? 当我运行应用程序时,内部框架就像在后台一样,它没有被选择,它没有聚焦。
I have a JFrame with the JDesktopPane and inside the JDesktopPane, I launch with the constructor a JInternalFrame.
(Its a app like the authentification users, with the textbox user and textbox pass)
I lauch the internal like this:
MyInternalFrame internalF = new MyInternalFrame();
desktopPane.add(internalF);
I try with:
internalF.setVisible(true);
internalF.setSelected(true);
desktopPane.getDesktopManager().activateFrame(internal);
desktopPane.setSelectedFrame(internal);
How I can lauch the JInternalFrame and Its selected by default?
When I run the aplication, internalframe is like in background, Its not selected, Its not focused.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
查看如何使用内部框架 java 教程。它给出了一个很好的例子并使用以下内容;
Have a look at the How To Use Internal Frames java tutorial. It gives a nice example and uses the following;
您可以在创建桌面并且主框架可见后使内部框架可见。在这种情况下,将默认选择该框架。
因此,您可以执行以下操作的一个示例:
在这种情况下,内部框架将出现在桌面上,并且将根据需要选择它。
您可能会想到其他不使用线程的解决方案,而是将处理程序写入主机的事件。无论如何,要使内部框架在显示后可见,您必须在显示带有主框架的桌面后显示它。
这是您可以使用的示例:
You can make the internal frame visible AFTER the desktop is created and the main frame is visible. In that case the frame will be selected by default.
So, one example of what you can do:
In such case the internal frame will appear on the desktop and it will be selected as you want it.
You might think of other solution without using threads, but writing handlers to the main frame's events. In any case, to make the internal frame visible after it shows, you have to show it AFTER desktop with main frame is displayed.
Here is the example, that you can use: