【问题标题】:gaining a focus of JInternalFrame object获得 JInternalFrame 对象的焦点
【发布时间】:2012-08-16 13:58:46
【问题描述】:

当您使用位于角落的内置图标(在最大化和关闭图标旁边)最小化 JInternalFrame 对象时会发生什么? 我在 JDesktopPane 中有一个 JInternalFrame,我的问题如下: 当我最小化一帧时,它正在被最小化。当我尝试通过使用 JMenu 重新打开框架时,它第一次起作用。当我再次执行此过程时,框架正在最小化但没有重新打开,但是当我手动单击图标化框架时,它会正确显示。 我尝试组合 setSelected、moveToFront、setIcon、setVisible、a​​ctivateFrame 或 requestFocus,但仍然没有效果。 我想知道当你最小化 JInternalFrame 时会发生什么,正在设置什么,应该怎么做才能获得特定框架的焦点,以及为什么它第一次工作而不是其他工作的过程? 谢谢

【问题讨论】:

  • 您能提供一个sscce 吗?
  • 有一些例子here

标签: java swing focus jinternalframe


【解决方案1】:

对我来说似乎很好用

try {

    if (myFrame.isIcon()) {

        myFrame.setIcon(false);
        miDoShowHide.setText("Hide");

    } else {

        myFrame.setIcon(true);
        miDoShowHide.setText("Show");

    }

} catch (Exception exp) {

    exp.printStackTrace();

}

我设置了一个菜单项来调用这个功能。我通过使用菜单来测试 min, restore, min, restore。我通过框架控件最小化框架并通过菜单恢复,通过菜单最小化并通过框架控件恢复。

还要确保将JInternalFrame 设置为Iconifiable (setIconifiable(true)) 否则您会遇到一些奇怪的结果

【讨论】:

    猜你喜欢
    • 2011-09-09
    • 1970-01-01
    • 1970-01-01
    • 2014-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多