您的位置:首页 > 其它

swing界面设计之好友列表、消息对话框

2017-03-30 14:10 585 查看
如果有不清楚的地方,请参考本系列前述记录。

界面效果

好友列表



对话框



源码

com.lsh.view.BuddyListDialog

package com.lsh.view;

import java.awt.BorderLayout;
import java.awt.FlowLayout;

import javax.swing.ImageIcon;
import javax.swing.JDialog;
import javax.swing.JPanel;
import com.lsh.util.ImageScale;

import javax.swing.JLabel;
import java.awt.Font;
import javax.swing.JButton;
import javax.swing.JTabbedPane;
import javax.swing.JScrollPane;

@SuppressWarnings("serial")
public class BuddyListDialog extends JDialog {

private final JPanel contentPanel = new JPanel();

/**
* Launch the application.
*/
public static void main(String[] args) {
try
{
org.jb2011.lnf.beautyeye.BeautyEyeLNFHelper.launchBeautyEyeLNF();
}
catch(Exception e)
{
//TODO exception
System.out.println("加载炫彩皮肤失败!");
}
try {
BuddyListDialog dialog = new BuddyListDialog();
dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
dialog.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}

/**
* Create the dialog.
*/
public BuddyListDialog() {
setBounds(100, 100, 400, 650);
getContentPane().setLayout(new BorderLayout());
getContentPane().add(contentPanel, BorderLayout.CENTER);
contentPanel.setLayout(new BorderLayout(0, 0));

JPanel panel = new JPanel();
contentPanel.add(panel, BorderLayout.NORTH);
panel.setLayout(new BorderLayout(10, 10));

ImageIcon icon = new ImageIcon(BuddyListDialog.class.getResource("/res/login.jpg"));
JLabel lblNewLabel = new JLabel(ImageScale.getImage(icon, 64, 64));
panel.add(lblNewLabel, BorderLayout.WEST);

JPanel panel_1 = new JPanel();
panel.add(panel_1, BorderLayout.CENTER);
panel_1.setLayout(new BorderLayout(0, 0));

JLabel lblNewLabel_1 = new JLabel("lsh呵呵");
lblNewLabel_1.setFont(new Font("Dialog", Font.BOLD, 14));
panel_1.add(lblNewLabel_1, BorderLayout.CENTER);

JLabel lblNewLabel_2 = new JLabel("该家伙很懒,没有任何简介");
panel_1.add(lblNewLabel_2, BorderLayout.SOUTH);

JPanel panel_2 = new JPanel();
contentPanel.add(panel_2, BorderLayout.SOUTH);
panel_2.setLayout(new BorderLayout(0, 0));

JPanel panel_3 = new JPanel(new FlowLayout(FlowLayout.LEFT));
panel_2.add(panel_3, BorderLayout.CENTER);

JButton btnNewButton_1 = new JButton("设 置");
panel_3.add(btnNewButton_1);

JButton btnNewButton_2 = new JButton("查 找");
panel_3.add(btnNewButton_2);

JPanel panel_4 = new JPanel();
panel_2.add(panel_4, BorderLayout.EAST);

JButton btnNewButton = new JButton("退 出");
panel_4.add(btnNewButton);

JTabbedPane tabbedPane = new JTabbedPane(JTabbedPane.TOP);
contentPanel.add(tabbedPane, BorderLayout.CENTER);

JPanel panel_5 = new JPanel();
tabbedPane.addTab("我的好友", null, panel_5, null);
panel_5.setLayout(new BorderLayout(0, 0));

JScrollPane scrollPane = new JScrollPane();
panel_5.add(scrollPane, BorderLayout.CENTER);

JPanel panel_6 = new JPanel();
tabbedPane.addTab("消息列表", null, panel_6, null);

JLabel lblNewLabel_3 = new JLabel("暂未实现");
panel_6.add(lblNewLabel_3);
}

}


com.lsh.view.ChatFrame

package com.lsh.view;

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.UIManager;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.border.LineBorder;
import java.awt.Color;
import java.awt.Font;
import javax.swing.JSplitPane;
import javax.swing.JButton;
import javax.swing.JScrollPane;
import java.awt.FlowLayout;
import javax.swing.JTextArea;

@SuppressWarnings("serial")
public class ChatFrame extends JFrame {

private JPanel contentPane;

/**
* Launch the application.
*/
public static void main(String[] args) {
try
{
org.jb2011.lnf.beautyeye.BeautyEyeLNFHelper.launchBeautyEyeLNF();
UIManager.put("RootPane.setupButtonVisible", false);
}
catch(Exception e)
{
//TODO exception
System.out.println("加载炫彩皮肤失败!");
}
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
ChatFrame frame = new ChatFrame();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}

/**
* Create the frame.
*/
public ChatFrame() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 700, 600);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new BorderLayout(0, 0));
setContentPane(contentPane);

JPanel panel = new JPanel();
contentPane.add(panel, BorderLayout.NORTH);
panel.setLayout(new BorderLayout(5, 5));

JLabel lblNewLabel = new JLabel("");
lblNewLabel.setBorder(new LineBorder(new Color(0, 0, 0)));
lblNewLabel.setPreferredSize(new Dimension(64, 64));
panel.add(lblNewLabel, BorderLayout.WEST);

JPanel panel_1 = new JPanel();
panel.add(panel_1, BorderLayout.CENTER);
panel_1.setLayout(new BorderLayout(0, 0));

JLabel lblNewLabel_1 = new JLabel("张三丰");
lblNewLabel_1.setFont(new Font("Dialog", Font.BOLD, 14));
panel_1.add(lblNewLabel_1, BorderLayout.CENTER);

JLabel lblNewLabel_2 = new JLabel("埋下一座城,关了所有灯");
panel_1.add(lblNewLabel_2, BorderLayout.SOUTH);

JSplitPane splitPane = new JSplitPane();
splitPane.setResizeWeight(0.9);
splitPane.setOrientation(JSplitPane.VERTICAL_SPLIT);
contentPane.add(splitPane, BorderLayout.CENTER);

JPanel panel_2 = new JPanel();
splitPane.setRightComponent(panel_2);
panel_2.setLayout(new BorderLayout(0, 0));

JPanel panel_3 = new JPanel();
FlowLayout flowLayout = (FlowLayout) panel_3.getLayout();
flowLayout.setAlignment(FlowLayout.LEFT);
panel_2.add(panel_3, BorderLayout.NORTH);

JButton btnNewButton_1 = new JButton("字体");
panel_3.add(btnNewButton_1);

JButton btnNewButton = new JButton("震屏");
panel_3.add(btnNewButton);

JPanel panel_4 = new JPanel();
panel_2.add(panel_4, BorderLayout.CENTER);
panel_4.setLayout(new BorderLayout(0, 0));

JPanel panel_5 = new JPanel();
panel_4.add(panel_5, BorderLayout.EAST);
panel_5.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 5));

JButton button = new JButton("发 送");
panel_5.add(button);

JPanel panel_6 = new JPanel();
panel_4.add(panel_6, BorderLayout.CENTER);
panel_6.setLayout(new BorderLayout(0, 0));

JScrollPane scrollPane_1 = new JScrollPane();
panel_6.add(scrollPane_1, BorderLayout.CENTER);

JTextArea textArea = new JTextArea();
textArea.setLineWrap(true);
scrollPane_1.setViewportView(textArea);

JScrollPane scrollPane = new JScrollPane();
splitPane.setLeftComponent(scrollPane);
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐