新闻详细
新闻当前位置:新闻详细

如何吧jframe作为jdialog的父类,jpanel和jframe的区别

专业互联网培训机构——完成蜕变以后轻松拿高薪

电话+V: 152079-09430 ,欢迎咨询jframe和jdialog的区别,[python实用课程],[C++单片机原理],[C#、PHP网站搭建],[Nodejs小程序开发],[ios游戏开发],[安卓游戏开发],[教会用大脑用想法赚钱实现阶层跨越]

一、如何吧jframe作为jdialog的父类

  • JFrame窗口,JDialog对话框,两者都是顶层容器,但是java是单继承的,JDialog的父类是Dialog,所以不能把JFrame作为JDialog的父类

  • 通常,我们是把JFrame作为JDialog的父窗口.比如点击JFrame上的按钮,弹出某个JDialog的对话框等.

  • 效果图

  • 参考代码

  • 1

    二、java的容器控件有哪些

    1.顶层容器

    什么是顶层容器?当我们使用Java进行图形编程的时候,图在哪里绘制呢?我们需要一个能够提供图形绘制的容器,这个容器就被称为顶层容器,你

    也可以把它想象成一个窗口。顶层容器是进行图形编程的基础,一切图形化的东西,都必然包括在顶层容器中。在Swing中,我们有三种可以使用的顶层容器,

    它们分别是:

    JFrame:用来设计类似于Windows系统中的窗口形式的应用程序。

    JDialog:和JFrame类似,只不过JDialog是用来设计对话框。

    JApplet:用来设计可以在嵌入在网页中的Java小程序。

    如果需要使用Swing制作一个窗口类程序,我们的代码看起来应该是这样:

    importjavax.swing.*;

    publicclassKyodaiUI

    extendsJFrame{

    ……

    }

    2.控件

    控件是构成应用程序界面的基本元素,按钮、文本框、进度条等,这些都是控件。控件(这里我们只讨论可视化控件)又可以分为容器控件和非容器控件。从字面

    意义上来理解,容器控件就是能包含其他控件的特殊控件,例如,Java中的JPanel控件就属于容器型控件,我们可以在JPanel中放置按钮、文本框

    等非容器控件,你甚至可以在JPanel中再放置若干个JPanel控件(值得注意的是,顶层容器也是容器型控件,每一个窗口应用程序中有且只能有一个顶

    层容器控件,换句话说,顶层容器不能包括在其他的控件中)。

    Java中的容器控件有很多,除刚才提到的JPanel外,还有

    JTabbedPane、JScrollPane等,非容器控件有JButton、JLabel、JTextField等。如果你需要向某个容器型的控件

    中添加控件,你可以使用add(Componentcomp)方法来实现,如:

    JPanelpanel=newJPanel();

    JButtonbutton=newJButton();

    panel.add(button);

    3.边框

    虽然我们使用了不同前景色来区别不同的区域,然而却没有层次感,加上边框一定会漂亮许多。

    三、jpanel和jframe的区别

    JPanel和JFrame虽然都是java.swing包里的常用的组件,他们之间的区别还是很大的.

    1. JPanel是轻量级的容器,需要放置到顶层容器里,才能显示,比如JFrame,JDialog,JWindow等.

    2. JFrame是顶层容器可以容纳JPanel等组件

    3. JPanel可以嵌套JPanel,JFrame里却不能放置JFrame等顶层容器

    4. JPanel默认是流式布局FlowLayout,JFrame默认是边界布局BorderLayout

    5. JPanel默认的显示状态是true,JFrame要显示需要调用setVisable(true);方法才能显示

    6. JFrame有窗口的边框,具有标题栏,边框最大化按钮,最小化按钮,关闭按钮.JPanel默认状态下没有边框,没有这些按钮

    【FUTURE PROGRAMMING COURSE】尊享对接老板

    电话+V: 152079-09430

    机构由一批拥有10年以上开发管理经验,且来自互联网或研究机构的IT精英组成,负责研究、开发教学模式和课程内容。公司具有完善的课程研发体系,一直走在整个行业发展的前端,在行业内竖立起了良好的品质口碑。

    jframe和jdialog的区别
    Copyright2023未知推广科技