📄 frmbrjf.java
字号:
}
table.removeAll();
setTable(1);
}
});
}
////////////////创建保存,返回,放弃按钮函数实体/////////////////
private void createButton(){
//增加一个空的label占位
Label freeLabel = new Label(shell,SWT.None);
//声明一个composite用于放置3个按钮
compositeBUTTON = new Composite(shell,SWT.SHADOW_ETCHED_IN);
//设置composite显示格式
GridData gridData0 = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
gridData0.horizontalSpan=1;
compositeBUTTON.setLayoutData(gridData0);
//设置composite布局
GridLayout gridLayout = new GridLayout();
gridLayout.numColumns = 3;
compositeBUTTON.setLayout(gridLayout);
//增加保存按钮
btnSAVE = new Button(compositeBUTTON,SWT.None);
btnSAVE.setText(" 保存 ");
btnSAVE.setEnabled(false);
//保存按钮的监视器
btnSAVE.addSelectionListener(new SelectionAdapter(){
public void widgetSelected(SelectionEvent e){
//如果输入的是数字就调用提交函数
if(CheckNumber(txtJE.getText())){
commitrecord();
}
}
});
//增加放弃按钮
btnFQ = new Button(compositeBUTTON,SWT.None);
btnFQ.setText(" 放弃 ");
btnFQ.setEnabled(false);
//增加放弃按钮监视器,放回到初始状态
btnFQ.addSelectionListener(new SelectionAdapter(){
public void widgetSelected(SelectionEvent e){
txtZYH.setFocus();
txtZYH.setText("");
txtBRXM.setText("");
txtJFRQ.setText("");
txtJE.setText("");
txtJFHJ.setText("");
txtFYHJ.setText("");
txtBRXM.setEnabled(false);
txtJFRQ.setEnabled(false);
cobJFXS.setEnabled(false);
txtJE.setEnabled(false);
txtJFHJ.setEnabled(false);
txtFYHJ.setEnabled(false);
radioBRFY.setEnabled(false);
radioBRJF.setEnabled(false);
radioBRFY.setSelection(false);
radioBRJF.setSelection(false);
radioYSJ.setSelection(true);
table.removeAll();
setTable(1);
zyhc=false;
btnSAVE.setEnabled(false);
btnFQ.setEnabled(false);
}
});
//增加返回按钮
btnBACK = new Button(compositeBUTTON,SWT.None);
btnBACK.setText(" 返回 ");
//添加"返回"按钮监听器
btnBACK.addSelectionListener(new SelectionAdapter()
{
public void widgetSelected(SelectionEvent event)
{
shell.getDisplay().dispose();
shell.dispose();
FrmMenu menu=new FrmMenu();
menu.main();
return;
}
});
}
//////////////////////创建表格的第1-6列//////////////////////
public void colBuild1(){
//定义表格列名
String[] columns={"序号",
"住院号",
"缴费日期",
"缴费形式",
"收费员",
"金额"
};
//添加表格第1列
col1 = new TableColumn(table,SWT.LEFT);
col1.setText(columns[0]);
col1.setWidth(50);
//添加表格第2列
col2 = new TableColumn(table,SWT.LEFT);
col2.setText(columns[1]);
col2.setWidth(132);
//添加表格第3列
col3 = new TableColumn(table,SWT.LEFT);
col3.setText(columns[2]);
col3.setWidth(150);
//添加表格第4列
col4 = new TableColumn(table,SWT.LEFT);
col4.setText(columns[3]);
col4.setWidth(100);
//添加表格第5列
col5 = new TableColumn(table,SWT.LEFT);
col5.setText(columns[4]);
col5.setWidth(100);
//添加表格第6列
col6= new TableColumn(table,SWT.LEFT);
col6.setText(columns[5]);
col6.setWidth(100);
//初始化时表格显示的数据
setTable(1);
}
///////////创建表格的第7-20列/////////////////////////////////
public void colBuild2(){
//定义列名
String[] columnss={"序号",
"住院号",
"处方日期",
"住院科室",
"科目类别",
"科目",
"单价",
"数量",
"自费比例",
"分类代码",
"记价单位",
"规格",
"产地",
"厂家"};
//实例化第7-20列
col7= new TableColumn(table,SWT.LEFT);
col7.setText(columnss[0]);
col7.setWidth(40);
col8= new TableColumn(table,SWT.LEFT);
col8.setText(columnss[1]);
col8.setWidth(100);
col9= new TableColumn(table,SWT.LEFT);
col9.setText(columnss[2]);
col9.setWidth(80);
col10= new TableColumn(table,SWT.LEFT);
col10.setText(columnss[3]);
col10.setWidth(80);
col11= new TableColumn(table,SWT.LEFT);
col11.setText(columnss[4]);
col11.setWidth(80);
col12= new TableColumn(table,SWT.LEFT);
col12.setText(columnss[5]);
col12.setWidth(80);
col13= new TableColumn(table,SWT.LEFT);
col13.setText(columnss[6]);
col13.setWidth(80);
col14= new TableColumn(table,SWT.LEFT);
col14.setText(columnss[7]);
col14.setWidth(80);
col15= new TableColumn(table,SWT.LEFT);
col15.setText(columnss[8]);
col15.setWidth(80);
col16= new TableColumn(table,SWT.LEFT);
col16.setText(columnss[9]);
col16.setWidth(80);
col17= new TableColumn(table,SWT.LEFT);
col17.setText(columnss[10]);
col17.setWidth(80);
col18= new TableColumn(table,SWT.LEFT);
col18.setText(columnss[11]);
col18.setWidth(80);
col19= new TableColumn(table,SWT.LEFT);
col19.setText(columnss[12]);
col19.setWidth(80);
col20= new TableColumn(table,SWT.LEFT);
col20.setText(columnss[13]);
col20.setWidth(80);
}
///////////////////删除表格1-6列函数//////////////////////////
public void dispose1()
{
col1.dispose();
col2.dispose();
col3.dispose();
col4.dispose();
col5.dispose();
col6.dispose();
}
///////////////////删除表格7-20列函数//////////////////////////
public void dispose2()
{
col7.dispose();col8.dispose(); col9.dispose(); col10.dispose();
col11.dispose();col12.dispose();col13.dispose();col14.dispose();
col15.dispose(); col16.dispose();col17.dispose();col18.dispose();
col19.dispose();col20.dispose();
}
///////////////////检查金额输入筐是否正确函数///////////////////
public boolean CheckNumber(String number){
//是否有错的标志变量
boolean flg=false;
//如果输入金额实"."开头弹出错误筐
if(number.charAt(0)=='.'){
errorBox("金额格式不正确!");
txtJE.setText("");
btnSAVE.setEnabled(false);
flg=false;
txtJE.setFocus();
return flg;
}
try{
//如果输入是负数时
float je=Float.valueOf(number).floatValue();
if(je<=0){
errorBox("金额必须大于零");
txtJE.setText("");
btnSAVE.setEnabled(false);
flg=false;
txtJE.setFocus();
return flg;
}
flg=true;
}
//如果不是输入数字时
catch(java.lang.NumberFormatException e){
errorBox("金额必须为数字!");
txtJE.setText("");
flg=false;
txtJE.setFocus();
btnSAVE.setEnabled(false);
}
return flg;
}
//////////////////错误对话框通用函数////////////////////////////////
public void errorBox(String ms){
MessageBox mb = new MessageBox(shell, SWT.ICON_ERROR | SWT.OK);
mb.setText("Error");
mb.setMessage(ms);
mb.open();
}
//////////////////数据提交数据库函数/////////////////////////////////
public void commitrecord(){
//当点击保存按钮时弹出确定对话框
MessageBox messageBox = new MessageBox(shell, SWT.ICON_QUESTION |SWT.YES |SWT.NO);
messageBox.setMessage("是否保存数据?");
int ms= messageBox.open();
switch (ms){
//如果选"YES"触发的事件
case SWT.YES:
//如果数据库更新成功,弹出对话筐.并且初始化所有控件
if(Db.update(txtZYH.getText(),cobJFXS.getText(),txtSFY.getText(),
Float.parseFloat(txtJE.getText()))){
//插入成功提示对话框
MessageBox msg = new MessageBox(shell, SWT.ICON_INFORMATION|SWT.OK);
msg.setMessage("插入记录成功!");
msg.open();
//返回初始化状态
txtZYH.setFocus();
txtZYH.setText("");
txtBRXM.setText("");
txtJFRQ.setText("");
txtJE.setText("");
txtJFHJ.setText("");
txtFYHJ.setText("");
txtBRXM.setEnabled(false);
txtJFRQ.setEnabled(false);
cobJFXS.setEnabled(false);
txtJE.setEnabled(false);
txtJFHJ.setEnabled(false);
txtFYHJ.setEnabled(false);
radioBRFY.setEnabled(false);
radioBRJF.setEnabled(false);
btnSAVE.setEnabled(false);
btnFQ.setEnabled(false);
table.removeAll();
//更新数据表格
Db.getTableItem(1);
radioBRJF.setSelection(false);
radioBRFY.setSelection(false);
radioYSJ.setSelection(true);
//更新上缴金额筐
txtSFYYSJ.setText(String.valueOf(Db.getysjje()));
}
//数据库时间类型最小精确到分钟,所以一分钟一个住院号只能
//插入一次。
else errorBox("插入错误! 提示:同一分钟内同一病人只能缴费一次");
break;
case SWT.NO:
break;
}
}
public void setTable(int lx){
switch(lx){
case 1:
Db.getTableItem(1);
int i=0;//显示的序号
try{
while(Db.rs.next()){
//将记录逐一的显示到表格
TableItem item=new TableItem(table, SWT.NONE);
int c=0;
item.setText(c++,String.valueOf(++i));
item.setText(c++,Db.rs.getString(1));
item.setText(c++,Db.rs.getString(2));
item.setText(c++,Db.rs.getString(3));
item.setText(c++,Db.rs.getString(4));
item.setText(c++,Db.rs.getString(5));
}
}
catch (SQLException se){
System.out.println(se.getMessage());
se.printStackTrace();
errorBox("查询出错");
//查询出错
}
break;
case 2:
Db.getTableItem(2,txtZYH.getText());
i=0;
try{
while(Db.rs.next()){
//从JFJL表中取出当前病人未结帐的记录,逐一显示到表格
TableItem item=new TableItem(table, SWT.NONE);
int c=0;
item.setText(c++,String.valueOf(++i));
item.setText(c++,Db.rs.getString(1));
item.setText(c++,Db.rs.getString(2));
item.setText(c++,Db.rs.getString(3));
item.setText(c++,Db.rs.getString(4));
item.setText(c++,Db.rs.getString(5));
}
}
catch (SQLException se){
System.out.println(se.getMessage());
se.printStackTrace();
errorBox("查询出错");
//查询出错
}
break;
case 3:
Db.getTableItem(3,txtZYH.getText());
i=0;
try{
while(Db.rs.next()){
//从视图View_WJZFY中取得当前病人费用记录,逐一显示到表格
TableItem item=new TableItem(table, SWT.NONE);
int c=0;
item.setText(c++,String.valueOf(++i));
item.setText(c++,Db.rs.getString(1));
item.setText(c++,Db.rs.getString(2));
item.setText(c++,Db.rs.getString(3));
item.setText(c++,Db.rs.getString(4));
item.setText(c++,Db.rs.getString(5));
item.setText(c++,Db.rs.getString(6));
item.setText(c++,Db.rs.getString(7));
item.setText(c++,Db.rs.getString(8));
item.setText(c++,Db.rs.getString(9));
item.setText(c++,Db.rs.getString(10));
item.setText(c++,Db.rs.getString(11));
item.setText(c++,Db.rs.getString(12));
item.setText(c++,Db.rs.getString(13));
}
}
catch (SQLException se){
System.out.println(se.getMessage());
se.printStackTrace();
errorBox("查询出错");
//查询出错
}
break;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -