清除组件

问题描述

在JPanel中添加了一个JScrollPane,在JScrollPane中newJScrollPane(jTable),在从新点击按钮时,想要清除JPanel中的所有组件,我用了jPanel.removeAll(),但是却实现不了。这是怎么回事?

解决方案

解决方案二:
importjava.awt.BorderLayout;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JPanel;importjavax.swing.JScrollPane;importjavax.swing.JTable;importjavax.swing.SwingUtilities;publicclassJPanelExample{publicJPanelExample(){finalJFrameframe=newJFrame("JPanelExample");JTabletable=newJTable();finalJScrollPanescroll=newJScrollPane(table);finalJPanelpanel=newJPanel();panel.add(scroll);frame.getContentPane().add(panel);finalJButtonbutton=newJButton("RemoveComponentinJPanel");button.addActionListener(newActionListener(){@OverridepublicvoidactionPerformed(ActionEvente){SwingUtilities.invokeLater(newRunnable(){@Overridepublicvoidrun(){frame.setVisible(false);panel.removeAll();panel.revalidate();//((JPanel)frame.getContentPane()).revalidate();button.setEnabled(false);frame.setVisible(true);}});}});frame.getContentPane().add(button,BorderLayout.SOUTH);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.pack();frame.setLocationRelativeTo(null);frame.setVisible(true);}publicstaticvoidmain(finalString[]args){SwingUtilities.invokeLater(newRunnable(){publicvoidrun(){newJPanelExample();}});}}

时间: 2024-09-25 05:23:33

清除组件的相关文章

使用VB创建ASP服务器端组件

创建|服务器 使用VB创建ASP服务器端组件 本篇文章通过与传统的设计方法相比较,介绍了如何在ASP代码中调用VB组件的方法.在本篇文章中,我们假设读者具有VB和ASP的相关入门知识. 服务器端组件和客户端组件的比较 服务器端组件和客户端组件有许多不同之处.服务器端组件是在计算机服务器上注册的DLL文件,客户端组件则在浏览器运行的计算机上注册,在IE中,这些客户端组件被称作ActiveX浏览器插件组件. ActiveX客户端组件可以使用VB编写,并通过互联网或内联网发送给浏览器,生成很精彩的效果

LibreOffice 中的六大实用扩展组件

LibreOffice 中的六大实用扩展组件 图片来源:Opensource.com LibreOffice 是最好的自由办公套件,并在所有的主要 Linux 发行版中得到应用.尽管 LibreOffice 已经拥有了大多数特性,它仍然可以通过添加一种叫做扩展extension的特定的附加组件来增加功能. LibreOffice 的扩展组件的网站是 extensions.libreoffice.org.扩展组件只是一些工具,可以在安装主体上进行独立添加或者移除,以便增加新功能或者让已有功能更容易

Visual Basic 6.0 控件和 .NET 控件的区别

visual|控件|区别 Visual Basic 6.0 控件和 .NET 控件的区别 摘要:本文简单介绍了 Microsoft Visual Basic 6.0 中的标准控件和等效的 Microsoft .NET 控件. 目标 了解哪些 Visual Basic 6.0 ActiveX 控件在 .NET 中具有等效控件. 了解 .NET 控件中哪些属性发生了变化. 了解 .NET 中有哪些新控件. 前提条件 要彻底理解本文内容,需要满足以下条件: 了解什么是 ActiveX 控件. 使用 V

Visual Basic 6.0 控件和 .NET 控件的区别后记

visual|控件|区别 Public Class frmTest    Inherits System.Windows.Forms.Form #Region " Windows Form Designer generated code "     Public Sub New()        MyBase.New()         'Windows 窗体设计器必需此调用.        InitializeComponent()         '调用 InitializeCom

从零学React Native之03页面导航

之前我们介绍了RN相关的知识: 是时候了解React Native了 从零学React Native之01创建第一个程序 从零学React Native之02状态机 本篇主要介绍页面导航 上一篇文章给大家介绍了简单界面的搭建, 这一篇我们需要两个界面, 一个是注册界面,一个是注册信息界面. 当然我们还需要一个组件去控制两个界面的切换. 每个界面其实就一个组件 , 可以通过下面的代码抽取相关的模块 module.exports=RegisterLeaf; 注册界面的代码: 主要代码 import

jQuery EasyUI API 中文文档 - Spinner微调器使用_jquery

扩展自 $.fn.validatebox.defaults,用 $.fn.spinner.defaults 重写了 defaults. 依赖 validatebox 用法 复制代码 代码如下: <input id="ss" value="2"> 复制代码 代码如下: $('#ss').spinner({ required:true, increment:10 }); 特性<?XML:NAMESPACE PREFIX = O /> 其特性扩展自

jQuery EasyUI API 中文文档 - ComboGrid 组合表格_jquery

扩展自 $.fn.combo.defaults 和 $.fn.datagrid.defaults,用 $.fn.combogrid.defaults 重写了 defaults . 文档 - ComboGrid 组合表格_jquery-easyui combogrid api">依赖 combo datagrid 用法 复制代码 代码如下: <select id="cc" name="dept" style="width:250px;&

jQuery EasyUI API 中文文档 - ComboTree组合树_jquery

扩展自 $.fn.combo.defaults 和 $.fn.tree.defaults.用 $.fn.combotree.defaults 重写了defaults. <?XML:NAMESPACE PREFIX = O /> 文档 - ComboTree组合树_jquery-easyui combotree api">依赖 combo tree 用法 <select id="cc" style="width:200px;">

【译】基于 Meteor1.3 和 React 创建简单 App

本文讲的是[译]基于 Meteor1.3 和 React 创建简单 App, 由于目前 Meteor 1.3 正式版仍在开发中,在这份 Meteor 指南里我们采用了目前可以获取到的 Meteor 1.3 beta 版本进行开发.尽管 Meteor 1.3 版本很棒并有着许多精彩的改进,但部分人对于到底应该如何使用它来进行开发仍有一些困惑. MDG(Meteor Development Group) 目前正在编写 Meteor 1.3 版指南,随着 1.3 正式版的发布,我们将会获得 Meteo