`
joyo_fly
  • 浏览: 87016 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
文章分类
社区版块
存档分类
最新评论

如何使用JInternalFrame

阅读更多

   为了创建MDI风格的GUI,可以选择JInternalFrame,并将其放入JDesktopPane中。

  ...//In the constructor of InternalFrameDemo, a JFrame subclass:
    desktop = new JDesktopPane();
    createFrame(); //Create first window
    setContentPane(desktop);
    ...
    //Make dragging a little faster but perhaps uglier.
    desktop.setDragMode(JDesktopPane.OUTLINE_DRAG_MODE);
...
protected void createFrame() {
    MyInternalFrame frame = new MyInternalFrame();
    frame.setVisible(true);
    desktop.add(frame);
    try {
        frame.setSelected(true);
    } catch (java.beans.PropertyVetoException e) {}
}

...//In the constructor of MyInternalFrame, a JInternalFrame subclass:
static int openFrameCount = 0;
static final int xOffset = 30, yOffset = 30;

public MyInternalFrame() {
    super("Document #" + (++openFrameCount),
          true, //resizable
          true, //closable
          true, //maximizable
          true);//iconifiable
    //...Create the GUI and put it in the window...
    //...Then set the window size or call pack...
    ...
    //Set the window's location.
    setLocation(xOffset*openFrameCount, yOffset*openFrameCount);
}

   1、JInternalFrame VS 普通Frame

   这两者的使用方式很相似,但InteralFrame并不是Window或Top-level容器,使用InterlFrame时,必须将其放入一个容器,比如JDesktopPane。另外,InterlFrame并不产生Window event,而是产生internal frame event。另外,InternalFrame是被设计成与JDesktopPane协同工作的,因此很多方法,如moveToFront,只有在JDesktopPane中才有效。

   2、使用InternalPane的规则

   (1)setSize 或 setBounds

   (2)setLocation

   (3)将组件添加到IntenalPane的contentPane上

   (4)InternalPane的对话框应该使用JOptionPane 的showInternalXxxDialog发病高发或 JInternalFrame实现

   (5)必须将InternalPane加入一个容器

   (6)setVisible

   (7)发出Internal Frame event,而不是window event。

分享到:
评论

相关推荐

    JInternalFrame

    JInternalFrame menu 子窗体浮动 子窗体透明 面板透明 swing

    java swing-JInternalFrame的使用

    JInternalFrame 是 Java Swing 库提供的一个用于创建内部窗口的组件,常用于在桌面应用程序中创建多文档界面(MDI)。

    swing透明切换

    java界面设计之,swing透明切换,使用户用起来更加舒服

    JAVA SWING

    Java 综合性例子 多方向界面设计 经典例题 详细代码

    Java创建父子窗体

    Java 的swing 组件创建父子窗口的例子,使用的结构是JDesktopPane-JInternalFrame。JDesktopPane 相当于一个“父窗口”,可以拥有多个作为“子窗口”的JInternalFrame 对象。如运行截图所示,当选中Option 菜单下的...

    JInternalFrameDemo.java

    JInternalFrameDemo.java

    Swing 窗口与面版的使用

    介绍Frame和Panel容器的使用方法和时机。针对JFrame,JInternalFrame,JLayeredPane,JPanel,JScrollBar,JSplitPane,JTabbedPane写有详细的可执行代码。

    Swing的中自定义的窗体、内部窗体样式的设置

    本示例中使用6行代码左右实现了窗体和内部窗体换肤效果,以及让窗体不能调整大小、窗体置中,以及除去窗体的装饰条--看不到最小化、最大化和关闭按钮,以及光标的样式等的功能。 因为Apple的皮肤没有在网上找它相应...

    疯狂JAVA讲义

    学生提问:当我们使用编译C程序时,不仅需要指定存放目标文件的位置,也需要指定目标文件的文件名,这里使用javac编译Java程序时怎么不需要指定目标文件的文件名呢? 13 1.5.3 运行Java程序 14 1.5.4 根据...

    Java_Swing_Designer.rar_DEMO_Java_Swing_Designer_Swing Designer_

    精通Java Swing程序设计的帮助文档,包括:版面管理器,事件处理,JInternalFrame的使用,复选框、选项按钮、列表方框、下拉式列表的使用,树(Tree)的使用主要侧重以demo的方式说明。

    Java_Swing窗体种类简介

    Java_Swing窗体种类简介,这是非常好的资料,我想信对于学习javase开发的学者很有帮助

    oracle jdk自带swing 代码示例swingset3

    包含swing入门组件完整示例, 几乎包含swing所有组件介绍 ,可以带你入门了解swing的各种UI效果和使用示例,让你对swing有个整体了解. 顶层容器:JFrame/JDialog/JWINDOW 容器:JTabbedPane/JScrollPane/JSplitPane/...

    Father_and_son_form.rar_Father_java father son

    Java 的swing 组件创建父子窗口的例子,使用的结构是JDesktopPane-JInternalFrame。JDesktopPane 相当于一个“父窗口”,可以拥有多个作为“子窗口”的JInternalFrame 对象。如运行截图所示,当选中Option 菜单下的...

    Java创建产生关联的主窗体与子窗体.rar

    Java创建产生关联的主窗体与子窗体,使用的结构是JDesktopPane-JInternalFrame。JDesktopPane 相当于一个“父窗口”,可以拥有多个作为“子窗口”的JInternalFrame 对象。如运行截图所示,当选中Option 菜单下的...

    java实现点击按钮事件弹出子窗口

    主要为大家详细介绍了java实现点击按钮事件弹出子窗口,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    SuperPaint:使用Swing API的Java绘画程序

    超级彩绘 使用Swing API的Java绘画程序。... 使用Swing组件,例如JFrame,JPanel,JInternalFrame等。 非API链表数据结构 面向对象的编程实践(继承,多态性,封装的使用) 单击查看正在运行的程序。

    (java swing毕业设计)图书管管理系统(视频+源码).zip

    import java.awt.BorderLayout;...import javax.swing.JInternalFrame; import javax.swing.JLabel; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JToolBar; import javax.swi

    bikr:java中的种族(BikeRun)操作

    static JInternalFrame frame ; public void createAndShowGui(JDesktopPane desk) throws SQLException { //Δημιουργία tabed pane και εισαγωγή φορμών με εικόνες ...

    Swing组件下载(常用组件)

    内部框架:JInternalFrame 分层窗格:JLayeredPane 标签:JLabel 按钮:JButton 开启/关闭按钮:JToggleButton 复选框:JCheckBox 单选按钮:JRadioButton 按钮组:ButtonGroup 组合框:JComboBox 列表:JList ...

    swing-desktopScrollPane:知道如何将滚动条添加到摆动的JDesktopPane组件的滚动窗格

    如果JInternalFrame离开视口,则不会添加任何滚动条,并且您将失去“到达” JInternalFrame的能力。 该组件旨在解决该问题。 您只需将其传递给JDesktopPane并将其添加到应用中即可,而不是添加JDesktopPane。 该...

Global site tag (gtag.js) - Google Analytics