DebugFifteen1.java:15: 错误: 需要'('或'[' jpanel 图片panel2 = new JPanel; 怎么改啊

在JFrame中加入两个面板panel1和panel2,panel2无法显示_java吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:592,490贴子:
在JFrame中加入两个面板panel1和panel2,panel2无法显示收藏
情况大体是这样的,在JFrame中加入两个面板panel1,和panel2在panel1中是个tree,通过对tree的操作把数据在panel2中的table显示出来可是数据是正确的,在panel中始终显示不出来Panel2.updateUI();Panel2.repaint();Panel2.revalidate();Panel2.validate();都用过 就是没效果
千锋java,Java+大数据全项目实训,两周免费试听,0基础小班授课!千锋java零学费学习,Java+大数据培训,先入学后付款
这种问题你应该先把布局代码弄上来。
package cn.xitong.import java.awt.BorderLimport java.awt.Cimport java.sql.Cimport java.sql.DriverMimport java.sql.ResultSimport java.sql.Simport javax.swing.JFimport javax.swing.JPimport javax.swing.JScrollPimport javax.swing.JSplitPimport javax.swing.JT public class UserTable extends JFrame{
public void utable(){
String[] columnNames={"用户名","密码"}; //列名Object[][] rowData=new Object[5][2]; //表格数据
Class.forName("com.mysql.jdbc.Driver");
catch(ClassNotFoundException
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/gudzc","root","laosun155");
stmt = con.createStatement();
rs = stmt.executeQuery("select * from user ");
String name,
int count=0;
while (rs.next()) {
rowData[count][0]=rs.getString("name"); //初始化数组内容//rowData[count][1]=Integer.toString(rs.getInt("pwd"));
rowData[count][1]=rs.getString("pwd");count++;
System.out.println("chenggong");
//System.out.print(rs.getString(1) + "\\t");//rs.getString(1) 就是得到第一列
//System.out.println(rs.next());
} catch (Exception e) {
e.printStackTrace();
System.out.println("连接失败");
table=new JTable(rowData,columnNames); //实例化表格
JieMian jm=new JieMian();
System.out.println("dada");
//jm.reloadJPanel();
//jm.j2.paint(null);
//jm.j2.setVisible(false);
jm.j2.add(new JScrollPane(table),BorderLayout.CENTER);
jm.j2.revalidate();//
jm.j2.invalidate();//
jm.j2.removeAll();
//jm.Show();}}}
package cn.xitong.import java.awt.BorderLimport java.awt.Cimport java.awt.Timport java.text.SimpleDateFimport java.util.Dimport java.util.Timport javax.swing.JFimport javax.swing.JLimport javax.swing.JMimport javax.swing.JMenuBimport javax.swing.JPimport javax.swing.JScrollPimport javax.swing.JSplitPimport javax.swing.JTextAimport javax.swing.JTextFimport javax.swing.JTimport javax.swing.event.TreeSelectionEimport javax.swing.event.TreeSelectionLimport javax.swing.tree.DefaultMutableTreeNpublic class JieMian{//JMenu TimeShow = new JMenu(); //时间工具JFrame f=new JFrame("资源管理系统主界面");JPanel j1=new JPanel();JPanel j2=new JPanel();
JPanel j3=new JPanel();
JSplitPane splitPane1;
UserTable ut=new UserTable();JTextField TimeBox = new JTextField();
private Timer timer = new Timer() ;
public void Time() {
// 线程休眠方法
Display timedisplay = new Display();
timedisplay.start() ;
private class Display extends Thread {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
public Display() {
System.out.println("主界面打开");
public void run(){
while(true){
//System.out.println( "Thread is running..." );
TimeBox.setText(sdf.format(new Date()));
Thread.sleep(1000) ;
} catch (InterruptedException e) {
System.out.println("sleep error!!");
e.printStackTrace();
}public void Show(){int x=Toolkit.getDefaultToolkit().getScreenSize().int y=Toolkit.getDefaultToolkit().getScreenSize().
JMenuBar jmb=new JMenuBar();
JMenu jm1=new JMenu("修改密码");
JMenu jm2=new JMenu("帮助");
JMenu jm3=new JMenu("关于");
jmb.add(jm1);
jmb.add(jm2);
jmb.add(jm3);
//JieMian jm=new JieMian();
//调用time()方法;
JLabel jl=new JLabel("时间");
JTextField jtf=new JTextField();
j3.add(jl);
j3.add(TimeBox);
/*加入label1,label2到splitPane1中,并设置此splitPane1为水平分割且具有Continuous Layout的
splitPane1=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,false,j1,j2);
/*设置splitPane1的分隔线位置,0.3是相对于splitPane1的大小而定,因此这个值的范围在0.0~1.0
*中。若你使用整数值来设置splitPane的分隔线位置,如第34行所示,则所定义的值以pixel为计算单位
splitPane1.setDividerLocation(150);
/*设置JSplitPane是否可以展开或收起(如同文件总管一般),设为true表示打开此功能。
splitPane1.setOneTouchExpandable(true);
splitPane1.setDividerSize(10);//设置分隔线宽度的大小,以pixel为计算单位。
JSplitPane splitPane2=new JSplitPane(JSplitPane.VERTICAL_SPLIT,false,splitPane1,j3);
splitPane2.setDividerLocation(400);
//设置JSplitPane2是否可以展开或收起(如同文件总管一般),设为true表示打开此功能.
splitPane2.setOneTouchExpandable(true);
splitPane2.setDividerSize(5);
// 创建没有父节点和子节点、但允许有子节点的树节点,并使用指定的用户对象对它进行初始化。
// public DefaultMutableTreeNode(Object userObject)
//部门的设定
DefaultMutableTreeNode node1 = new DefaultMutableTreeNode("部门管理");
node1.add(new DefaultMutableTreeNode("美工组"));
node1.add(new DefaultMutableTreeNode("测试组"));
node1.add(new DefaultMutableTreeNode("项目组"));
node1.add(new DefaultMutableTreeNode("市场部"));
node1.add(new DefaultMutableTreeNode("研发部"));
node1.add(new DefaultMutableTreeNode("行政部"));
node1.add(new DefaultMutableTreeNode("财务部"));
DefaultMutableTreeNode node2 = new DefaultMutableTreeNode("物品管理");
node2.add(new DefaultMutableTreeNode("E1办公电子设备"));
node2.add(new DefaultMutableTreeNode("E2生活电子设备"));
DefaultMutableTreeNode node3 = new DefaultMutableTreeNode("人员管理");
DefaultMutableTreeNode top = new DefaultMutableTreeNode("管理分类");
top.add(node1);
top.add(node2);
top.add(node3);
final JTree tree = new JTree(top);
j1.add(tree);
//j2.getBounds(BorderLayout.CENTER);
//j2.setLayout(BorderLayout.CENTER);
f.setJMenuBar(jmb);
f.add(splitPane2);
f.setSize();
f.setLocation((x-1000)/2, (y-500)/2);
f.setDefaultCloseOperation(f.EXIT_ON_CLOSE);
f.setVisible(true);
//对树的监听;
tree.addTreeSelectionListener(new TreeSelectionListener() {
public void valueChanged(TreeSelectionEvent e) {
DefaultMutableTreeNode node = (DefaultMutableTreeNode) tree
.getLastSelectedPathComponent();
if (node == null)
//返回该节点的原始数据
Object object = node.getUserObject();
if (node.isLeaf()) {
if(object=="人员管理")
{System.out.println("成功");
ut.utable();
//f.setVisible(false);
//j2.setVisible(true);
public static void main(String[] args){JieMian jm=new JieMian();jm.show();}
好一大碗面条!在UserTable里new 了JieMian,JieMian里new了UserTable,子子孙孙无穷馈也!你在UserTable里向jm2添加了table不是你真正的界面吧?!建议先整理一下项目结构,让类的耦合性低一些。
interface DBAdapter{
//实现此接口
public boolean connect(String URI,String userName,String password);
public Object[][] getTable(String table);
public boolean close();}class AppFace extends JFrame{
private DBA
private JSplitPane splitP
private JT
public AppFace(){
adapter=new .......;
splitPane=new ......;
getContentPane().add.......;
setSize.........;
//如果启动时就加载数据库内容
//if(adapter.connect(..., ..., ...)){
//Object[][] data=adapter.getTable(...);
//table=......
tree=....;
panelLeft=new ......
....add(tree);
tree.addTreeSelectionListener(...);
setVisible(true);
public static void main(String[] args){
new AppFace();
//其它函数}
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或本帖子已过去太久远了,不再提供回复功能。

我要回帖

更多关于 jpanel 图片 的文章

 

随机推荐