社区
Java SE
帖子详情
不能显示主窗口上的控件
colorful3000
2003-09-13 02:57:29
哪位大虾帮帮忙,我的应用程序运行完全正确,但是在刚开始运行时,只出现主窗口的轮廓,上面的所有控件均没有显示出来,一旦经鼠标拖放改变大小后,窗口上的所有控件均显示出来,且估计不是窗口大小设置问题
...全文
122
9
打赏
收藏
不能显示主窗口上的控件
哪位大虾帮帮忙,我的应用程序运行完全正确,但是在刚开始运行时,只出现主窗口的轮廓,上面的所有控件均没有显示出来,一旦经鼠标拖放改变大小后,窗口上的所有控件均显示出来,且估计不是窗口大小设置问题
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
colorful3000
2003-09-14
打赏
举报
回复
非常感谢各位高手的帮忙,按照大家的提示我已经把问题解决了,再次向所有帮助过我的人表示万分的感谢
maomaoxiong
2003-09-14
打赏
举报
回复
大家能不能讲一下原因呀
hui3zhihui
2003-09-14
打赏
举报
回复
setVisible(true);
setSize(450,200);
把这两行换一下位置就可以了
也就是
setSize(450,200);
setVisible(true);
sun2927
2003-09-14
打赏
举报
回复
你的程序我亲自试过,你进行下面的更改就可以了
把setVisible(true);去掉
在setsize(450.200)后面加上show();
cwell
2003-09-13
打赏
举报
回复
在setSize(450,200);后面加一句this.show()就可以了。
colorful3000
2003-09-13
打赏
举报
回复
此为聊天室程序的一个登录界面,其它程序还包括服务器程序,注册界面,聊天室界面,所有的程序均能运行正常,但界面程序都存在上面提到的问题,这里仅贴出较短的登录界面的程序,还请大家帮忙看看
import java.io.*;
import java.net.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import javax.swing.*;
import javax.swing.Timer;
// CustomerLogin Class
public class ChatLogin extends JFrame implements ActionListener
{
//declare componets
JLabel lblUserName;
JLabel lblUserPassword;
JTextField txtUserName;
JPasswordField txtUserPassword;
JButton btnLogin;
JButton btnRegister;
JButton btnCancel;
String strUserName;
String strUserPassword;
char[] arrayUserPassword;
Socket socketToServer;
ObjectInputStream streamFromServer;
PrintStream streamToServer;
//构造函数
public ChatLogin()
{
//窗口标题
this.setTitle("登录");
JPanel panel=new JPanel();
panel.setLayout(new GridBagLayout());
GridBagConstraints gbCons=new GridBagConstraints();
//添加控件
//用户名
gbCons.gridx=0;
gbCons.gridy=0;
lblUserName=new JLabel("用户姓名");
panel.add(lblUserName,gbCons);
gbCons.gridx=1;
gbCons.gridy=0;
txtUserName=new JTextField(20);
panel.add(txtUserName,gbCons);
//用户密码
gbCons.gridx=0;
gbCons.gridy=1;
lblUserPassword=new JLabel("用户密码");
panel.add(lblUserPassword,gbCons);
gbCons.gridx=1;
gbCons.gridy=1;
txtUserPassword=new JPasswordField(20);
panel.add(txtUserPassword,gbCons);
//功能按钮
JPanel btnPanel=new JPanel();
//登录按钮
btnLogin=new JButton("登录");
btnPanel.add(btnLogin);
btnLogin.addActionListener(this);
//注册按钮
btnRegister=new JButton("注册");
btnPanel.add(btnRegister);
btnRegister.addActionListener(this);
//取消按钮
btnCancel=new JButton("取消");
btnPanel.add(btnCancel);
btnCancel.addActionListener(this);
//将所有按钮作为一个控件添加
gbCons.gridx=1;
gbCons.gridy=3;
gbCons.anchor=GridBagConstraints.EAST;
panel.add(btnPanel,gbCons);
getContentPane().add(panel);
setVisible(true);
setSize(450,200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}//结束构造函数
//显示窗口
void showDlg()
{
JOptionPane.showMessageDialog(this,"Invalid Password or Login name","Message",
JOptionPane.ERROR_MESSAGE);
}
//按钮事件处理程序
public void actionPerformed(ActionEvent e1)
{
//取得鼠标点击对象资源
JButton btn1=(JButton)e1.getSource();
//点击取消
if(btn1.equals(btnCancel))
{
this.dispose();
}
else if(btn1.equals(btnRegister))
{
//点击注册
new ChatRegister();
this.dispose();
}
//点击登录
else
{
try
{
//创建套接字和输入输出流
socketToServer=new Socket("colorful",1001);
streamFromServer=new ObjectInputStream(socketToServer.getInputStream());
streamToServer=new PrintStream(socketToServer.getOutputStream());
//向服务器发出通知信息
streamToServer.println("LoginInfo");
strUserName=txtUserName.getText();
arrayUserPassword=txtUserPassword.getPassword();
strUserPassword=new String(arrayUserPassword);
// 向服务器提交登录信息
streamToServer.println(strUserName+":"+strUserPassword);
//从服务器读取信息
String strFromServer=(String)streamFromServer.readObject();
if(strFromServer.equals("Welcome"))
{
//如通过服务器验证,则转到聊天室界面
new ChatRoom(strUserName);
this.dispose();
}
else
{
//如没通过验证,则出错
showDlg();
}
}
catch(Exception e)
{
//发生异常
System.out.println("Exception Occurred:"+e);
}
}//end of if..else
}//end of actionPerformed
//主函数
public static void main(String args[])
{
new ChatLogin();
}
}//end of class ChatLogin
mq612
2003-09-13
打赏
举报
回复
把代码贴出来看看。
colorful3000
2003-09-13
打赏
举报
回复
具体怎么解决?我是新手,请大发慈悲,说的再详细点,不胜感激
YuLimin
2003-09-13
打赏
举报
回复
paint()的问题?
[精仿]QQ2013局域网通讯(10.30更新版-带最新版界面库)
21.MessageBox提示框的美化,并继承调用
窗口
的色调与背景,MessageBox可所谓已达到帅气的
不能
再帅气的境界了。 22.天气皮肤自动变,所有窗体根据当地天气自动决定皮肤背景,CC最帅气功能之一。 23.个人资料卡及聊天...
Qt中父
窗口
调用子
窗口
的
控件
比如:当父
窗口
触发某个事件时,子
窗口
显示
,并且设置子
窗口
中的
控件
显示
特定的内容,这就是本文想要讨论的问题。 方法: 父
窗口
为a9Mechanical,它用来查询数据库中满足条件的数据,并且
显示
在
控件
tableView中,...
朱老师QT系列课程-1.4.QT标准
控件
之DisplayWidget
包括纯文本和富文本
显示
控件
TextBroswer,QT5后
主
推的绘图
控件
GraphicsView,QT日历
控件
CalendarView、模仿传统数码管的外观的数字
显示
控件
LCDNumber、进度条
控件
ProgressBar、屏幕
显示
分隔线HorizontalLine和...
Qt在视频
窗口
上
显示
半透明
控件
场景:视频
窗口
QLabel的句柄传给DXVA,由DXVA渲染。在视频
窗口
上
显示
半透明的...首先视频
窗口
和透明
控件
不能
是父子对象关系,否则子对象(透明
控件
)会直接隐藏,所以必须是同级的。 解决方法: 子类化QLabel,设置.
PyQt5实例:在
主
窗口
中
显示
自定义表格
控件
用 QTableWidget 类表格化
显示
数据,并可以
主
窗口
中与其它
控件
一同
显示
Java SE
62,614
社区成员
307,327
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章