📄 netsetup.java
字号:
/**
*##############################################################################
*
* [ 项目名 ] : 阳光酒店管理系统
* [ 公司名 ] : 清华IT
* [ 模块名 ] : 系统设定对话框
* [ 文件名 ] : NetSetup.java
* [ 相关文件 ] :
* [ 文件实现功能] : 设置系统连接数据库的方式及参数
* [ 作者 ] : 顾俊
* [ 版本 ] : 1.1
* ----------------------------------------------------------------------------
* [ 备注 ] :
* ----------------------------------------------------------------------------
* [ 修改记录 ] :
*
* [ 日 期 ] [版本] [修改人] [修改内容]
* 2006/04/02 1.0 顾俊 创建
* 2006/04/06 1.1 顾俊 增加ODBC配置
* ##--------------------------------------------------------------------------
* 版权所有(c) 2006-2007, SunshineSOFT Corporation
* --------------------------------------------------------------------------##
*
* [ 函数说明 ] :
*
* [## public NetSetup (JFrame frame) {} ]:
* 功能: 组建系统设定对话框
*
* [## private JPanel buildDBA() {} ]:
* 功能: 组建数据库面板
*
* [## private JPanel buildSYS() {} ]:
* 功能: 组建系统设置面板
*
* [## private void setupInit(int fg) {} ]:
* 功能: 设置本对话框各组件的默认值
*
* [## private void ceShi() {} ]:
* 功能: 测试对话框里的设置能否正常连接数据库
*
*
* [ 遗留问题 ] : 在JDBC的连接测试时,如果IP不对,容易出现假死机现象
*
*##############################################################################
*/
package com.sunshine.netsetup;
import javax.swing.*;
import javax.swing.border.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import com.sunshine.sunsdk.swing.*;
import com.sunshine.sunsdk.system.*;
import com.sunshine.mainframe.*;
public class NetSetup
extends JDialog
implements ActionListener, MouseListener, KeyListener, ItemListener {
JTextField tf1, tf2, tf3, tf4, tf5, tf6, tf7, tf8;
JButton bt1, bt2, bt3, bt4;
JRadioButton rb1, rb2, rb3;
ButtonGroup bg;
JComboBox cb1, cb2;
JPanel stMain, dba, sys, bp;
JTabbedPane tp;
//INI文件中的键名
String ini[] = { "[SOFTINFO]", "UserName", "CompName", "[CONFIG]", "Soft_First",
"Default_Link" , "Default_Page", "Sys_style", "[NUMBER]",
"LodgName", "LodgNumber", "EngaName", "EngaNumber", "ChouName",
"ChouNumber", "[HABITUS]", "Ck_Habitus", "Ck_Minute", "[PARTTIME]",
"In_Room", "Out_Room1", "Out_Room2", "InsuDay", "ClockRoom1",
"ClockRoom2", "InsuHour1", "InsuHour2", "[JDBC]", "DBFname",
"UserID", "Password", "IP", "Access", "[ODBC]", "LinkName" };
/**=======================================================================**
* [## public NetSetup (JFrame frame) {} ]: 构造函数
* 参数 :JFrame 表示本对话框的父窗口
* 返回值 :无
* 修饰符 :public
* 功能 :组建系统设定对话框
**=======================================================================**
*/
public NetSetup (JFrame frame) {
super (frame, "网络设置", true);
bt1 = new TJButton ("pic/save.gif", " 保 存 ", "保存当前配置信息");
bt2 = new TJButton ("pic/exit.gif", " 返 回 ", "放弃修改");
bt3 = new TJButton ("pic/recall.gif", " 测 试 ", "以当前配置连接数库");
bt4 = new TJButton ("pic/recall.gif", " 测 试 ", "以当前配置连接数库");
tp = new JTabbedPane ();
stMain = new JPanel (new BorderLayout ());
bp = new JPanel (new FlowLayout (FlowLayout.RIGHT, 10, 8));
bp.add (bt1);
bp.add (bt2);
bt1.setEnabled (false);
bt1.addActionListener(this);
bt2.addActionListener(this);
bt3.addActionListener(this);
bt4.addActionListener(this);
bt1.addMouseListener(this);
bt2.addMouseListener(this);
bt3.addMouseListener(this);
bt4.addMouseListener(this);
//制作标签栏
sys = buildSYS ();
dba = buildDBA ();
tp.addTab ("参数设置", new ImageIcon ("pic/u05.gif"), sys);
tp.addTab ("JDBC连接设置", new ImageIcon ("pic/setup.gif"), dba);
//主面板
stMain.add ("Center", tp);
stMain.add ("South", bp);
//根据INI文件初起化默认值
setupInit(2); //第一次初始化默认值时,参数为2
this.setContentPane (stMain);
pack ();
this.setMinimumSize (new Dimension (579, 276));
sunswing.setWindowCenter(this);
}
/**=======================================================================**
* [## private JPanel buildDBA() {} ]: 制作标签栏DBA
* 参数 :无
* 返回值 :返回一个JPanel对象
* 修饰符 :private
* 功能 :组建数据库面板
**=======================================================================**
*/
private JPanel buildDBA() {
JLabel lb1, lb2, lb3, lb4, lb5;
JPanel bd, dnet, dbf;
JPanel jp1, jp2, jp3, jp4, jp5, jp6;
lb1 = new JLabel (" 服 务 器 IP :");
lb2 = new JLabel ("服务器端口:");
lb3 = new JLabel ("数据库名称:");
lb4 = new JLabel ("登录用户名:");
lb5 = new JLabel ("登 录 密 码 :");
tf1 = new TJTextField (15);
tf2 = new TJTextField (15);
tf3 = new TJTextField (15);
tf4 = new TJTextField (15);
tf5 = new TJTextField (15);
tf6 = new TJTextField ("测试结果:未测试 ...", 15);
tf6.setEditable(false); //设置测试文本框不可编辑
bd = new JPanel (new GridLayout(1, 2));
dnet = new JPanel (new GridLayout(3, 1));
dbf = new JPanel (new GridLayout(3, 1));
jp1 = new JPanel ();
jp2 = new JPanel ();
jp3 = new JPanel ();
jp4 = new JPanel ();
jp5 = new JPanel ();
jp6 = new JPanel ();
//加键盘监听
tf1.addKeyListener (this);
tf2.addKeyListener (this);
tf3.addKeyListener (this);
tf4.addKeyListener (this);
tf5.addKeyListener (this);
//数据库登录设置面板
jp1.add (lb3);
jp1.add (tf3);
jp2.add (lb4);
jp2.add (tf4);
jp3.add (lb5);
jp3.add (tf5);
dbf.add (jp1);
dbf.add (jp2);
dbf.add (jp3);
//网络连接设置面板
jp4.add (lb1);
jp4.add (tf1);
jp5.add (lb2);
jp5.add (tf2);
jp6.add (tf6);
jp6.add (bt3);
dnet.add (jp4);
dnet.add (jp5);
dnet.add (jp6);
//加标题框
dbf.setBorder (BorderFactory.createTitledBorder ("数据库登录设置" ));
dnet.setBorder (BorderFactory.createTitledBorder ("网络连接设置" ));
bd.add (dbf);
bd.add (dnet);
return bd; //返回一个JPanel
}
/**=======================================================================**
* [## private JPanel buildSYS() {} ]: 制作标签栏SYS
* 参数 :无
* 返回值 :返回一个JPanel对象
* 修饰符 :private
* 功能 :组建系统设置面板
**=======================================================================**
*/
private JPanel buildSYS() {
JLabel lb1, lb2, lb3;
JPanel bs, lt, rt, jp1, jp2, jp3, jp4, jp5, jp6;
rb1 = new JRadioButton ("Windwos 系统风格");
rb2 = new JRadioButton ("JAVA 默认风格");
rb3 = new JRadioButton ("JAVA 金属风格");
bg = new ButtonGroup ();
lb1 = new JLabel ("连 接 方 式 :");
lb2 = new JLabel ("数据源名称:");
lb3 = new JLabel ("系 统 起 始 页 为 :");
tf7 = new TJTextField (15);
tf8 = new TJTextField ("测试结果:未测试 ...", 14);
cb1 = new JComboBox ();
cb2 = new JComboBox ();
tf8.setEditable (false);
bs = new JPanel (new GridLayout(1, 2));
lt = new JPanel (new BorderLayout());
rt = new JPanel (new BorderLayout());
jp1 = new JPanel ();
jp2 = new JPanel (new GridLayout(2, 1));
jp3 = new JPanel ();
jp4 = new JPanel ();
jp5 = new JPanel ();
jp6 = new JPanel (new GridLayout(3, 1));
bg.add (rb1);
bg.add (rb2);
bg.add (rb3);
cb1.addItem (" ODBC 连 接 ");
cb1.addItem (" JDBC 连 接 ");
cb2.addItem (" 标 准 单 人 间 ");
cb2.addItem (" 标 准 双 人 间 ");
//加事件监听
rb1.addActionListener (this);
rb2.addActionListener (this);
rb3.addActionListener (this);
cb1.addItemListener (this);
cb2.addItemListener (this);
tf7.addKeyListener (this);
//左边面板
jp1.add (lb1);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -