package com.practice;
import java.awt.Toolkit;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import com.exercise.dbo.DBManage;
/**
*
*功能:事件应答操作
* @author dreamer
*DATE 2016年4月28日上午12:00:19
*
*/
public class MainFrame extends JFrame{
private String currentId=null;
private JLabel[] lblFriends =null;
private JLabel lblQQId1 = new JLabel("QQ号码:");
public MainFrame(String currentId){
if(currentId==null){
this.currentId="10000";
}else{
this.currentId=currentId;
}
//默认关闭窗体
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//设置标题
this.setTitle("QQ登录");
//设置大小
this.setSize(300, 600);
//设置窗体居中
setCenterLocation();
//显示窗体
this.setVisible(true);
//设置窗体用户名
setCurrTilt();
//显示好友信息
setFriends();
}
private void setCurrTilt() {
String sql =String.format("select * from Users where id=%s",this.currentId);
ResultSet rs = DBManage.myexecuteQuery(sql);
try {
if(rs.next()){
this.setTitle(rs.getInt("id")+":"+rs.getString("NickName"));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
//关闭数据连接
DBManage.CloseConnection();
}
}
private void setFriends(){
JPanel contentPane =(JPanel) getContentPane();
contentPane.setLayout(null);
contentPane.setLayout(null);
String sql =String.format
("select * from Users where id in(select FriendID from friends Where HostId=%s) ;"
,this.currentId);
ResultSet rs= DBManage.myexecuteQuery(sql);
try {
List <String> friendList = new ArrayList<String>();
while(rs.next()){
int id = rs.getInt("id");
String nickName = rs.getString("NickName");
String strFaceId =rs.getString("faceId");
//判断是否为空
if(strFaceId.isEmpty()){
strFaceId="1";
}
StringBuffer sb=new StringBuffer();
sb.append(id);
sb.append(",");
sb.append(nickName);
sb.append(",");
sb.append(strFaceId);
//添加到数据集合
friendList.add(sb.toString());
}
//为集合指定长度
lblFriends=new JLabel[friendList.size()];
for(int i=0;i<lblFriends.length;i++){
lblFriends[i]=new JLabel(friendList.get(i));
if(i==0){
lblFriends[i].setBounds(30,40,150,100);
}else{
lblFriends[i].setBounds(30,lblFriends[i-1].getY()+40,150,100);
}
String faceId = friendList.get(i).split(",")[2];
//图片路径
String imgUrl = String.format("p_w_picpaths/%s.jpg",faceId);
lblFriends[i].setIcon(new ImageIcon(imgUrl));
lblFriends[i].setIconTextGap(JLabel.BOTTOM);
contentPane.add(lblFriends[i]);
}
lblQQId1.setIcon(new ImageIcon("p_w_picpaths/1-1.jpg"));
lblQQId1.setIconTextGap(JLabel.BOTTOM);
lblQQId1.setBounds(10, 5, 80, 50);
contentPane.add(lblQQId1);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
//关闭数据连接
DBManage.CloseConnection();
}
}
/**
* 设置窗体居中
*/
private void setCenterLocation(){
this.setLocation(
((int)Toolkit.getDefaultToolkit().getScreenSize().getWidth()-this.getWidth())/2,
((int)Toolkit.getDefaultToolkit().getScreenSize().getHeight()-this.getHeight())/2
);
}
}
JAVA界面好难控制呀,写着写着就不知道该怎么继续了........
原创
©著作权归作者所有:来自51CTO博客作者synchronism的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
#HarmonyOS NEXT体验官# 鸿蒙next 数据持久化 你不知道的事情数据 持久化 首选项
-
简历写着熟悉 Dubbo,居然连 Dubbo 线程池监控都不知道?
程序员的成长之路互联网/程序员/技术/资料共享
java redis spring 分布式 编程语言 -
测试用例写着写着我就睡着了!
每当写测试用例时我都感觉到我在做文员?码着码着一双发现BUG
测试用例 用例 测试设计 -
我也不知道该怎么回答这个问题,还学MYSQL 吗?
开头还是介绍一下群,如果感兴趣polardb ,mongodb ,mysql ,postgresql ,redis 等有
mysql 数据库 mongodb 开发者 PostgreSQL -
不知道了,
恩这个可以了,
职场 休闲 -
学妹跟我说不知道该咋学计算机网络
年一样依旧搞了一个寒假打卡学习班,当天就有超过 300 人进入,后来看到其中不少小白...
算法 java 编程语言 人工智能 python -
秋招看到github上不错的项目,但不知道该咋学?
作者:阿秀阿秀的学习笔记:https://interviewguide.cn你好,我是阿秀。昨天的文章中提到了校招过程中简历上相对而言是...
数据库 java 编程语言 人工智能 react