| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 632 人关注过本帖
标题:[求助]关于容器大小的
取消只看楼主 加入收藏
tiancaion3
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2006-10-25
收藏
 问题点数:0 回复次数:4 
[求助]关于容器大小的
我现在正在写一个Bean,JPanel a,b。a包含b(都一样)要求是需要先A不显示,在B触发UI后显示A
现在问题就来了,我在使用BDK测试的时候,始终都要拖动几下才能正常显示,请教有没什么办法解决这个显示的问题
现在试过的方法有:调用setSize,setBounds等
在这先谢过了
搜索更多相关主题的帖子: 容器 
2007-03-11 04:30
tiancaion3
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2006-10-25
收藏
得分:0 

不好意思,是我打错了,是DBK,图标是一个企鹅的形状的,是一个专门测试Bean的玩意,好象这东西就是sun以前自己搞的,不过现在由于在推NetBeans,所以就没出新版本,一直在NetBeans上做了

2007-03-11 13:06
tiancaion3
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2006-10-25
收藏
得分:0 
还是不行,难道是DBK的问题?
2007-03-11 13:12
tiancaion3
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2006-10-25
收藏
得分:0 

package temp;

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.Date;

public class PassAddBean extends JPanel implements ActionListener,PassEventListener
{
JLabel bel_PassengerNumber,bel_name,bel_address,bel_phone;
JTextField Tfield_PassengerNumber,Tfield_name,Tfield_address,Tfield_phone;
JButton but_PassengerSubmit;
JPanel panl_massage;

JLabel bel_date,bel_place,bel_number,bel_tiete;
JTextField Tfield_place,Tfield_number;
JFormattedTextField formaTfile;
GridBagConstraints gbc;
JButton but_submit;

String[] st_message = {"","",""};
int i_temp,i_counter;

public PassAddBean()
{
i_counter = 2;
//this.setSize(800,300);

panl_massage = new JPanel();

bel_PassengerNumber = new JLabel("Passenger Number:");
bel_name = new JLabel("Passenger Name:");
bel_address = new JLabel("Passenger Address:");
bel_phone = new JLabel("Passenger Phone:");

Tfield_PassengerNumber = new JTextField(15);
Tfield_PassengerNumber.setEditable(false);
Tfield_name = new JTextField(15);
Tfield_address = new JTextField(15);
Tfield_phone = new JTextField(15);
but_PassengerSubmit = new JButton("Submit");
but_PassengerSubmit.setPreferredSize(new Dimension(350, 23));

panl_massage.setLayout(new java.awt.GridLayout(5,2));
panl_massage.add(bel_PassengerNumber);panl_massage.add(Tfield_PassengerNumber);
panl_massage.add(bel_name);panl_massage.add(Tfield_name);
panl_massage.add(bel_address);panl_massage.add(Tfield_address);
panl_massage.add(bel_phone);panl_massage.add(Tfield_phone);
panl_massage.add(but_PassengerSubmit);

bel_date = new JLabel("Enter Date of Travel:");
bel_place = new JLabel("Enter Place of Travel:");
bel_number = new JLabel("Enter Number of seats to be booled:");
bel_tiete = new JLabel("Fly My Way AirLines");
bel_tiete.setFont(new Font("宋体", 0, 24));

//JFormattedTextField的使用翻API
formaTfile = new JFormattedTextField();
formaTfile.setPreferredSize(new Dimension(250, 23));
formaTfile.setValue(new Date());
Tfield_place = new JTextField(18);
Tfield_number = new JTextField(7);
but_submit = new JButton("BOOK SEATS");

setLayout(new java.awt.GridBagLayout());

GridBagConstraints gbc=new GridBagConstraints();
gbc.anchor=GridBagConstraints.WEST;

diy_add(1,0,bel_tiete,gbc);
diy_add(0,1,bel_date,gbc);diy_add(3,1,formaTfile,gbc);
diy_add(0,2,bel_place,gbc);diy_add(3,2,Tfield_place,gbc);
diy_add(0,3,bel_number,gbc);diy_add(3,3,Tfield_number,gbc);
diy_add(1,4,but_submit,gbc);

gbc.gridx=0;
gbc.gridy=8;
gbc.gridwidth=4;
add(panl_massage,gbc);

but_PassengerSubmit.addActionListener(this);
but_submit.addActionListener(this);
panl_massage.setVisible(false);
}
//因为不固定是那个Component所以得传GridBagConstraints进去,
//Component是传递进去对象的上限,再往上就认不到了...
void diy_add(int x,int y,JComponent c,GridBagConstraints gbc)
{
gbc.gridx=x;
gbc.gridy=y;
add(c,gbc);
}
public void actionPerformed(ActionEvent evt)
{
Object obj=evt.getSource();
if(obj==but_PassengerSubmit)
{
if (i_counter<=i_temp)
{
Tfield_PassengerNumber.setText(st_message[0]+st_message[1]+i_counter);
Tfield_name.setText("");
Tfield_address.setText("");
Tfield_phone.setText("");
i_counter++;
return;
}
else
{
String st_temp = "Number Passenger Added:"+(i_counter-1);
JOptionPane.showMessageDialog(null,st_temp);
panl_massage.setVisible(false);
but_submit.setEnabled(true);
firePassAddEvent();
}
}
if(obj==but_submit)
{
st_message[0] = formaTfile.getText();
st_message[1] = Tfield_place.getText();
st_message[2] = Tfield_number.getText();
if (st_message[1].equals("") || st_message[2].equals(""))
JOptionPane.showMessageDialog(null,"请输入你的信息");
else
{
try{
i_temp = Integer.parseInt(st_message[2]);
}
catch(NumberFormatException e)
{
JOptionPane.showMessageDialog(null,"请不要在票数眶里面输入非数字");
return;
}
if (i_temp == 0)
{
JOptionPane.showMessageDialog(null,"无效的定票数量");
return;
}
panl_massage.setVisible(true);
Tfield_PassengerNumber.setText(st_message[0]+st_message[1]+1);
but_submit.setEnabled(false);
this.setSize(800,300);
SwingUtilities.updateComponentTreeUI(this);
//this.repaint();
}
}
}
PassEventListener PelObj;

public void addPassEventListener(PassEventListener Pel)
{
PelObj=Pel;
}

public void firePassAddEvent()
{
}

public void Pass(PassAddEvent evt)
{
}
/*public static void main(String args[])
{
JFrame f= new JFrame("");
PassAddBean p= new PassAddBean();
f.getContentPane().add(p);
f.setSize(710,300);
f.setVisible(true);
}*/
}

yJB6M7Oc.rar (9.32 KB)

[此贴子已经被作者于2007-3-11 13:34:32编辑过]

2007-03-11 13:33
tiancaion3
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2006-10-25
收藏
得分:0 

那可能就是BDK的问题吧,因为我们学校现在测试打分是用那个在做

2007-03-11 14:50
快速回复:[求助]关于容器大小的
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023425 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved