2024年10月jframe的所有方法(JAVA中JFrame有什么语法)
⑴jframe的所有方法(JAVA中JFrame有什么语法
⑵JAVA中JFrame有什么语法
⑶JFrame自己的API有很多,其API数目太多了。如下:protectedvoidaddImpl(ponentp,Objectconstraints,intindex)添加指定的子ponent。protectedJRootPanecreateRootPane()由构造方法调用,以创建默认的rootPane。protectedvoidframeInit()由构造方法调用,以适当地初始化JFrame。AessibleContextgetAessibleContext()获得与此JFrame关联的AessibleContext。ContainergetContentPane()返回此窗体的contentPane对象intgetDefaultCloseOperation()返回用户在此窗体上发起“close“时执行的操作。ponentgetGlassPane()返回此窗体的glassPane对象。JMenuBargetJMenuBar()返回此窗体上设置的菜单栏。JLayeredPanegetLayeredPane()返回此窗体的layeredPane对象。JRootPanegetRootPane()返回此窗体的rootPane对象。staticbooleanisDefaultLookAndFeelDecorated()如果新创建的JFrame应该由当前外观为其提供Window装饰,则返回true。protectedbooleanisRootPaneCheckingEnabled()返回是否将对add和setLayout的调用转发到contentPane。protectedStringparamString()返回此JFrame的字符串表示形式。protectedvoidprocessWindowEvent(WindowEvente)处理此组件上发生的窗口事件。voidremove(ponentp)从该容器中移除指定组件。voidsetContentPane(ContainercontentPane)设置contentPane属性。voidsetDefaultCloseOperation(intoperation)设置用户在此窗体上发起“close“时默认执行的操作。staticvoidsetDefaultLookAndFeelDecorated(booleandefaultLookAndFeelDecorated)提供一个关于新创建的JFrame是否应该具有当前外观为其提供的Window装饰(如边框、关闭窗口的小部件、标题等等的提示。voidsetGlassPane(ponentglassPane)设置glassPane属性。voidsetIconImage(Imageimage)设置此frame要显示在最小化图标中的图像。voidsetJMenuBar(JMenuBarmenubar)设置此窗体的菜单栏。voidsetLayeredPane(JLayeredPanelayeredPane)设置layeredPane属性。voidsetLayout(LayoutManagermanager)设置LayoutManager。protectedvoidsetRootPane(JRootPaneroot)设置rootPane属性。protectedvoidsetRootPaneCheckingEnabled(booleanenabled)设置是否将对add和setLayout的调用转发到contentPane。voidupdate(Graphicsg)只是调用paint(g)。它是Frame的子类,所以它的大部分功能来源于Frame的功能。如下:voidaddNotify()通过将此Frame连接到本机屏幕资源,从而使其成为可显示的。protectedvoidfinalize()移除输入方法和上下文,并从AppContext中移除此Frame。AessibleContextgetAessibleContext()获取与此Frame有关的AessibleContext。intgetCursorType()已过时。从JDKversion.开始,由ponent.getCursor()取代。intgetExtendedState()获取此frame的状态。staticFramegetFrames()返回一个数组,包含由应用程序创建的所有Frame。ImagegetIconImage()获取此frame显示在最小化图标中的图像。RectanglegetMaximizedBounds()获取此frame的最大化边界。MenuBargetMenuBar()获取此frame的菜单栏。intgetState()获取此frame的状态(已废弃。StringgetTitle()获得frame的标题。booleanisResizable()指示此frame是否可由用户调整大小。booleanisUndecorated()指示此frame是否未装饰。protectedStringparamString()返回表示此Frame状态的字符串。voidremove(Menuponentm)从此frame移除指定的菜单栏。voidremoveNotify()通过移除与本机屏幕资源的连接,将此Frame设置为不可显示的。voidsetCursor(intcursorType)已过时。从JDKversion.开始,由ponent.setCursor(Cursor)取代。voidsetExtendedState(intstate)设置此frame的状态。voidsetIconImage(Imageimage)设置此frame要显示在最小化图标中的图像。voidsetMaximizedBounds(Rectanglebounds)设置此frame的最大化边界。voidsetMenuBar(MenuBarmb)将此frame的菜单栏设置为指定的菜单栏。voidsetResizable(booleanresizable)设置此frame是否可由用户调整大小。voidsetState(intstate)设置此frame的状态(已废弃。voidsetTitle(Stringtitle)将此frame的标题设置为指定的字符串。voidsetUndecorated(booleanundecorated)禁用或启用此frame的装饰。此外,由于Frame继承了java.awt.Window类,所以也具有该类的功能,如下:voidaddNotify()通过创建到其本机屏幕资源的连接,使此窗口变得可显示。voidaddPropertyChangeListener(PropertyChangeListenerlistener)将PropertyChangeListener添加到侦听器列表。voidaddPropertyChangeListener(StringpropertyName,PropertyChangeListenerlistener)将PropertyChangeListener添加到某个特定属性的侦听器列表。voidaddWindowFocusListener(WindowFocusListenerl)添加指定的窗口焦点侦听器,以从此窗口接收窗口事件。voidaddWindowListener(WindowListenerl)添加指定的窗口侦听器,以从此窗口接收窗口事件。voidaddWindowStateListener(WindowStateListenerl)添加指定的窗口状态侦听器,以从此窗口接收窗口事件。voidapplyResourceBundle(ResourceBundlerb)已过时。从JSE.开始,由ponent.applyponentOrientation取代。voidapplyResourceBundle(StringrbName)已过时。从JSE.开始,由ponent.applyponentOrientation取代。voidcreateBufferStrategy(intnumBuffers)为此组件上的多缓冲创建一个新策略。voidcreateBufferStrategy(intnumBuffers,BufferCapabilitiescaps)根据所需缓冲功能为此组件上的多缓冲创建新策略。voiddispose()释放由此Window、其子组件及其拥有的所有子组件所使用的所有本机屏幕资源。protectedvoidfinalize()释放输入方法和上下文,并从GUI层次结构中移除此Window。AessibleContextgetAessibleContext()获取与此窗口关联的AessibleContext。BufferStrategygetBufferStrategy()booleangetFocusableWindowState()返回如果此窗口满足isFocusableWindow中列出的其他要求,其是否可以成为焦点窗口。ContainergetFocusCycleRootAncestor()始终返回null,原因是窗口没有祖先;它们表示组件层次结构的顶层。ponentgetFocusOwner()如果此窗口为焦点窗口,则返回其具有焦点窗口的子组件;否则返回null。Set《AWTKeyStroke》getFocusTraversalKeys(intid)获取此窗口的焦点遍历键。GraphicsConfigurationgetGraphicsConfiguration()此方法返回由此窗口使用的GraphicsConfiguration。InputContextgetInputContext()获取此窗口的输入上下文。《TextendsEventListener》TgetListeners(Class《T》listenerType)返回当前在此Window上注册为FooListener的所有对象的数组。LocalegetLocale()如果设置了区域,则获取与此窗口关联的Locale对象。ponentgetMostRecentFocusOwner()返回此窗口的子组件,该子组件在此窗口为焦点窗口时将接收焦点。WindowgetOwnedWindows()返回包含此窗口当前拥有的所有窗口的数组。WindowgetOwner()返回此窗口的所有者。ToolkitgetToolkit()返回此框架的工具包。StringgetWarningString()获取此窗口中显示的警告字符串。WindowFocusListenergetWindowFocusListeners()返回在此窗口注册的所有窗口焦点侦听器的数组。WindowListenergetWindowListeners()返回在此窗口注册的所有窗口侦听器的数组。WindowStateListenergetWindowStateListeners()返回在此窗口注册的所有窗口状态侦听器的数组。voidhide()已过时。从JDK开始,由ponent.setVisible(boolean)取代。booleanisActive()返回此窗口是否为活动窗口。booleanisAlwaysOnTop()返回此窗口是否为always-on-top窗口。booleanisFocusableWindow()返回此窗口是否可以成为焦点窗口,也就是说,此窗口或其任何子组件是否可以成为焦点所有者。booleanisFocusCycleRoot()始终返回true,原因是所有窗口必须为焦点遍历循环的根。booleanisFocused()返回此窗口是否为焦点窗口。booleanisLocationByPlatform()如果在此窗口下次可见时,显示在本机窗口操作系统的默认位置,则返回true。booleanisShowing()检查此窗口是否显示在屏幕上。voidpack()调整此窗口的大小,以适合其子组件的首选大小和布局。booleanpostEvent(Evente)已过时。从JDKversion.开始,由dispatchEvent(AWTEvent)取代。protectedvoidprocessEvent(AWTEvente)处理此窗口上的事件。protectedvoidprocessWindowEvent(WindowEvente)处理此窗口上发生的窗口事件,方法是将它们调度到任何注册的WindowListener对象。protectedvoidprocessWindowFocusEvent(WindowEvente)处理此窗口上发生的窗口焦点事件,方法是将它们调度到任何注册的WindowFocusListener对象。protectedvoidprocessWindowStateEvent(WindowEvente)处理此窗口上发生的窗口状态事件,方法是将它们调度到任何注册的WindowStateListener对象。voidremoveWindowFocusListener(WindowFocusListenerl)移除指定的窗口焦点侦听器,以便不再从此窗口接收窗口事件。voidremoveWindowListener(WindowListenerl)移除指定的窗口侦听器,以便不再从此窗口接收窗口事件。voidremoveWindowStateListener(WindowStateListenerl)移除指定的窗口状态侦听器,以便不再从此窗口接收窗口事件。voidsetAlwaysOnTop(booleanalwaysOnTop)更改始终位于顶层的窗口状态。voidsetBounds(intx,inty,intwidth,intheight)重绘组件的指定矩形区域。voidsetCursor(Cursorcursor)设置指定光标的光标图像。voidsetFocusableWindowState(booleanfocusableWindowState)设置如果此窗口满足isFocusableWindow中列出的其他要求,其是否可以成为焦点窗口。voidsetFocusCycleRoot(booleanfocusCycleRoot)不执行任何操作,原因是窗口必须始终为焦点遍历循环的根。voidsetLocationByPlatform(booleanlocationByPlatform)设置在下次窗口可见时,此窗口是应显示在本机窗口系统的默认位置,还是应显示在当前位置(由getLocation返回。voidsetLocationRelativeTo(ponentc)设置此窗口相对于指定组件的位置。voidshow()已过时。从JDK开始,由ponent.setVisible(boolean)取代。voidtoBack()如果此窗口是可视的,则将此窗口发送到后台,如果它是焦点窗口或活动窗口,则会导致丢失焦点或激活状态。voidtoFront()如果此窗口是可见的,则将此窗口置于前端,并可以将其设为焦点窗口。
⑷setDefaultCloseOperation的使用方法(JFrame
⑸set设置default系统默认closeoperation关的操作设置用户在此窗体上发起“close“时默认执行的操作。默认情况下,该值被设置为?HIDE_ON_CLOSE为“”或DO_NOTHING_ON_CLOSE(在WindowConstants中定义:donothing什么都不做不执行任何操作;要求程序在已注册的WindowListener对象的windowClosing方法中处理该操作,窗口无法关闭。为“”或HIDE_ON_CLOSE(在WindowConstants中定义:hide隐藏调用任意已注册的WindowListener对象后自动隐藏该窗体。未关闭。为“”或DISPOSE_ON_CLOSE(在WindowConstants中定义:dispose销毁释放调用任意已注册WindowListener的对象后自动隐藏并释放该窗体。为“”或EXIT_ON_CLOSE(在JFrame中定义:exit退出使用Systemexit方法退出应用程序。仅在应用程序中使用。publilassJFrameDemo{????publicstaticvoidmain(Stringargs){????????//新建一个窗体对象????????Jframe?f=newJFrame(“一个简单窗口“);????????//设置窗体大小位置等基本要求????????f.setLocation(,);??????????//离显示屏上边缘像素,里显示屏左边缘像素????????f.setSize(,);???????????//设置窗体的大小为*像素大小????????f.setResizable(false);??????//设置窗体是否可以调整大小,参数为布尔值????????f.setVisible(true);???//设置窗体可见,没有该语句,窗体将不可见,此语句必须有,否则没有界面就没有意义???????//用户单击窗口的关闭按钮时程序执行的操作???????f.setDefaultCloseOperation(f.EXIT_ON_CLOSE);//或者f.setDefaultCloseOperation()????}}
⑹关于javaJFrame类中的方法!!!
⑺EXIT_ON_CLOSE是JFrame类的一个静态的公有属性所以要用JFrame.EXIT_ON_CLOSE取得,当然用frame.EXIT_ON_CLOSE也不会有错,但是不符合Java规范如果是在类A里面用的话,因为A是继承了JFrame的,所以可以直接用父类中的EXIT_ON_CLOSE就是setDefaultCloseOperation(EXIT_ON_CLOSE);你的情况是在A类外面调用,所以只能用setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
⑻关于java中JFrame类的方法问题
⑼你理解错了.一个对象是不能同时调用两个方法的.在这里是这样的.你的k.getContentPane().add(button);k是一个对象首先它调用了getContentPane()这个方法.但是呢同时,getContentPane()这个方法会返回一个Container对象这时,你又用这个刚返回来的对象调用了add()方法这条语句相当于这两条语句Containerc=k.getContentPane();c.add(button);
⑽java里Jfarm是什么意思
⑾Jframe吧,你看APIpublilassJFrameextendsFrameimplementsWindowConstants,Aessible,RootPaneContainerjava.awt.Frame的扩展版本,该版本添加了对JFC/Swing组件架构的支持。有关使用JFrame的面向任务的文档,请参阅《TheJavaTutorial》中的HowtoMakeFrames一节。JFrame类与Frame轻微不兼容。与其他所有JFC/Swing顶层容器一样,JFrame包含一个JRootPane作为其惟一的子容器。根据规定,根窗格所提供的内容窗格应该包含JFrame所显示的所有非菜单组件。这不同于AWTFrame。作为add的便捷方法及其变体,已经重写了remove和setLayout,以在必要时将其转发到contentPane。这意味着可以编写:frame.add(child);子级将被添加到contentPane。内容窗格始终是非null的。试图将其设置为null会导致JFrame抛出异常。默认的内容窗格上会设置有BorderLayout管理器。有关添加、移除和设置JFrame的LayoutManager的详情,请参阅RootPaneContainer。与Frame不同,当用户试图关闭窗口时,JFrame知道如何进行响应。用户关闭窗口时,默认的行为只是简单地隐藏JFrame。要更改默认的行为,可调用方法setDefaultCloseOperation(int)。要使JFrame的行为与Frame实例相同,请使用setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE)。有关内容窗格和根窗格提供的其他功能的更多信息,请参阅《TheJavaTutorial》中的UsingTop-LevelContainers一节。
⑿java关于Frame类
⒀当需要扩展Frame的功能或者想在实例化的多做功能的时候,就写上extendsframe,譬如想在实例化Frame的同时设定sizepublilassMyFrameextendsFrame{publicMyFrame(Strings,intwidth,intheight){super(s);super.setSize(width,height);}}这样你实例化MyFrame的时候就已经设定好大小了,少写一些代码publicstaticvoidmain(Stringargs){MyFrameframe=newMyFrame(“MyFrame“,,);}同样功能的不继承,则需要publicstaticvoidmain(Stringargs){Frameframe=newFrame(“MyFrame“);frame.setSize(,);}clear?
⒁关于java的JFrame中的setTitle()方法
⒂java的JFrame中使用setTitle()方法设置窗体的标题:
⒃下面是一个计算器的例子:
⒄import?java.awt.BorderLayout;
⒅import?java.awt.Dimension;
⒆import?java.awt.GridLayout;
⒇import?java.awt.event.ActionEvent;
⒈import?java.awt.event.ActionListener;
⒉import?javax.swing.JButton;
⒊import?javax.swing.JFrame;
⒋import?javax.swing.JPanel;
⒌import?javax.swing.JTextField;
⒍import?javax.swing.SwingConstants;
⒎import?javax.swing.UIManager;
⒏public?class?ButtonArrayExample?extends?JFrame{?//继承窗体类JFrame
⒐private?static?final?long?serialVersionUID=L;
⒑private?JTextFieldtextField;
⒒public?static?void?main(Stringargs){
⒓UIManager.setLookAndFeel(“.sun.java.swing.plaf.nimbus.NimbusLookAndFeel“);
⒔}?catch?(Throwablee){
⒕e.printStackTrace();
⒖ButtonArrayExampleframe=?new?ButtonArrayExample();
⒗frame.setVisible(true);?//设置窗体可见,默认为不可见
⒘public?ButtonArrayExample(){
⒙super();?//继承父类的构造方法
⒚BorderLayoutborderLayout=(BorderLayout)getContentPane().getLayout();
⒛borderLayout.setHgap();
borderLayout.setVgap();
setTitle(“按钮数组实现计算器界面“);?//设置窗体的标题
setBounds(,?,?,?);?//设置窗体的显示位置及大小
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);?//设置窗体关闭按钮的动作为退出
textField=?new?JTextField();
textField.setHorizontalAlignment(SwingConstants.TRAILING);
textField.setPreferredSize(new?Dimension(,?));
getContentPane().add(textField,BorderLayout.NORTH);
textField.setColumns();
final?GridLayoutgridLayout=?new?GridLayout(,?);?//创建网格布局管理器对象
gridLayout.setHgap();?//设置组件的水平间距
gridLayout.setVgap();?//设置组件的垂直间距
JPanelpanel=?new?JPanel();?//获得容器对象
panel.setLayout(gridLayout);?//设置容器采用网格布局管理器
getContentPane().add(panel,BorderLayout.CENTER);
Stringnames={{?““,?““,?““,?“+“?},{?““,?““,?““,?“-“?},{?““,?““,?““,?“ד?},{?“.“,?““,?“=“,?“÷“?}};
for?(int?row=?;row《names.length;row++){
for?(int?col=?;col《names.length;col++){
buttons);?//创建按钮对象
buttons.addActionListener(new?ActionListener(){
public?void?actionPerformed(ActionEvente){
JButtonbutton=(JButton)e.getSource();
Stringtext=textField.getText();
textField.setText(text+button.getText());
panel.add(buttons);?//将按钮添加到面板中
调用jframe的什么方法使窗口最小化
答:?很多时候做java图形界面时,都会觉得外观和皮肤需要改进美化,?所以通常会去掉边框.然后自定义边框,但是副作用就是右上角的最小化,最大化,关闭按钮没有了,?需要我们自己写个按钮去实现这些功能.
jframe.setExtendedState(JFrame.ICONIFIED);//窗口最小化
import?java.awt.*;import?java.awt.event.*;import?javax.swing.*;public?class?JTFDemo?extends?JFrame?implements?ActionListener{JButton?jb,jb,jb;public?JTFDemo()?{JPanel?jp?=?new?JPanel(new?FlowLayout(FlowLayout.RIGHT));//流式布局,从右边开始jb?=?new?JButton(“小“);jb.addActionListener(this);jb?=?new?JButton(“大“);jb.addActionListener(this);jb?=?new?JButton(“关闭“);jb.addActionListener(this);jp.add(jb);jp.add(jb);jp.add(jb);add(jp);//窗口属性设置setUndecorated(true);//?不绘制边框setSize(,?);//?窗口大小setLocationRelativeTo(null);//?窗口居中setDefaultCloseOperation(EXIT_ON_CLOSE);//?窗口点击关闭时,退出程序setVisible(true);//?窗口可见}public?static?void?main(String?args)?{new?JTFDemo();?//创建窗口并显示}public?void?actionPerformed(ActionEvent?e)?{if(e.getSource()==jb)?{setExtendedState(ICONIFIED);//窗口最小化}else?if(e.getSource()==jb)?{setExtendedState(MAXIMIZED_BOTH);//窗口最大化}else?if(e.getSource()==jb)?{System.exit();//退出程序}}}
JAVA中关闭JFrame窗体常见四种关闭方式是什么分别起什么作用
使用JFrame的enableEvents和processWindowEvent.直接实现WindowListener接口.直接继承窗体适配器WindowAdapter.间接继承窗体适配器WindowAdapter.间接实现WindowListener接口.使用InnerClass详细:
javaswing如何获取jframe实例上的所有控件
可以通过setLocation(intx,inty);来设置JFrame窗口左上角启动的的x和y坐标。通过setSize(width,height);来设置JFrame的初始化大小。例如:publilassLocationTest{publicstaticvoidmain(Stringargs){JFrameframe=newJFrame();frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setLocation(,);frame.setSize(,);frame.setVisible(true);}}