📄 querycharge.java
字号:
package myprojects.queryCharge;
import org.eclipse.swt.*;
import org.eclipse.swt.graphics.*;
import org.eclipse.swt.events.*;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.custom.*;
import org.eclipse.swt.layout.*;
import myprojects.DBcon.*;
import myprojects.HomeManage.*;
public class queryCharge
{
private static DBcon DB=new DBcon();//连立与数据库的连接
private static Shell shell;
private Text txtYear;
private Text txtMonth;
private Text txtDay;
private Text txtDH;
private Text txtGroupDH;
private Text txtDetails;
private Text txtWriteTime;
private Text txtUseTime;
private Text txtPlace;
private Text txtPrice;
private Text txtCount;
private Text txtItemPrice;
private Text txtMark;
private Table table;
private Group group;
private Button btnDH;
private Button btnTime;
private Button btnQuery;
private Button btnReturn;
private Button btnSet;
private Button btnAlter;
private int AlterFlag=0;
private String[] tableHead={"记帐单号","编号","消费内容","消费日期","消费地点","单价","数量","金额","备注"};
public static void main(String[] args)
{
Display display=new Display();
shell=new Shell(display,SWT.MIN);
queryCharge objQuery=new queryCharge();
shell.setSize(530,355);
shell.setVisible(true);
shell.setText("家庭财务管理系统V1.0(测试版)");
try
{
shell.setImage(new Image(shell.getDisplay(),"image.ico"));
}
catch(Exception e)
{
}
shell.open();
if(!DB.getConnection())
{
MessageBox msBox = new MessageBox(shell,SWT.OK|SWT.ICON_ERROR);
msBox.setText("错误");
msBox.setMessage("数据库连接出错");
msBox.open();
return;
}
objQuery.creatText();
objQuery.creatTable();
objQuery.creatGroup();
while(!objQuery.shell.isDisposed())
{
if(!display.readAndDispatch())
{
display.sleep();
}
}
display.dispose();
}
private void creatText()
{
Label lblJZDH=new Label(shell,SWT.None);
lblJZDH.setText("请选择查询方式:");
lblJZDH.setBounds(20,35,100,15);
btnDH=new Button(shell,SWT.RADIO);
btnDH.setText("输入帐单");
btnDH.setBounds(120,20,70,15);
txtDH=new Text(shell,SWT.BORDER);
txtDH.setBounds(200,15,100,20);
Label lbl=new Label(shell,SWT.None);
lbl.setText("(形如:2005122301)");
lbl.setBounds(310,20,100,15);
btnTime=new Button(shell,SWT.RADIO);
btnTime.setText("输入日期");
btnTime.setBounds(120,45,70,15);
btnTime.setSelection(true);
txtYear=new Text(shell,SWT.BORDER|SWT.CENTER);
txtYear.setBounds(200,40,35,20);
Label lblYear=new Label(shell,SWT.None);
lblYear.setText("年");
lblYear.setBounds(240,45,15,15);
txtMonth=new Text(shell,SWT.BORDER|SWT.CENTER);
txtMonth.setBounds(260,40,25,20);
Label lblMonth=new Label(shell,SWT.None);
lblMonth.setText("月");
lblMonth.setBounds(290,45,15,15);
txtDay=new Text(shell,SWT.BORDER|SWT.CENTER);
txtDay.setBounds(310,40,25,20);
Label lblDay=new Label(shell,SWT.None);
lblDay.setText("日");
lblDay.setBounds(340,45,15,15);
btnQuery=new Button(shell,SWT.None);
btnQuery.setText("查询账单");
btnQuery.setBounds(360,35,70,25);
btnReturn=new Button(shell,SWT.None);
btnReturn.setText("回主菜单");
btnReturn.setBounds(435,35,70,25);
if(btnDH.getSelection())
{
txtYear.setEnabled(false);
txtMonth.setEnabled(false);
txtDay.setEnabled(false);
}
else
{
txtDH.setEnabled(false);
}
btnDH.addSelectionListener(new SelectionAdapter(){
public void widgetSelected(SelectionEvent set)
{
txtDH.setEnabled(true);
txtYear.setEnabled(false);
txtMonth.setEnabled(false);
txtDay.setEnabled(false);
}
});
btnTime.addSelectionListener(new SelectionAdapter(){
public void widgetSelected(SelectionEvent set)
{
txtDH.setEnabled(false);
txtYear.setEnabled(true);
txtMonth.setEnabled(true);
txtDay.setEnabled(true);
}
});
txtDH.addModifyListener(new ModifyListener(){
public void modifyText(ModifyEvent eve)
{
if(txtDH.getText().length()==0)
{
return;
}
if(txtDH.getText().length()==11)
{
showMessage("错误!","输入的账单长度不能超过10位!",SWT.ICON_INFORMATION);
txtDH.setText("");
btnQuery.setEnabled(false);
}
else
{
try
{
int DH=Integer.parseInt(txtDH.getText());
btnQuery.setEnabled(true);
}
catch(Exception e)
{
showMessage("错误!","输入的账单只能为0-9的数字!",SWT.ICON_INFORMATION);
txtDH.setText("");
btnQuery.setEnabled(false);
}
}
return;
}
});
txtDH.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent year)
{
if(year.keyCode==SWT.CR)
{
if(txtDH.getText().length()==0)
{
showMessage("错误!","记帐单号不能为空!",SWT.ICON_INFORMATION);
txtDH.setFocus();
}
else
{
btnQuery.setFocus();
}
}
}
});
txtYear.addModifyListener(new ModifyListener(){
public void modifyText(ModifyEvent eve)
{
if(txtYear.getText().length()==0)
{
return;
}
if(txtYear.getText().length()>4)
{
showMessage("错误!","输入的年形式为:\"2006\"!",SWT.ICON_INFORMATION);
txtYear.setText("");
}
else
{
try
{
int Year=Integer.parseInt(txtYear.getText());
}
catch(Exception e)
{
showMessage("错误!","输入的年份只能为0-9的数字!",SWT.ICON_INFORMATION);
txtYear.setText("");
}
}
return;
}
});
txtYear.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent year)
{
if(year.keyCode==SWT.CR)
{
if(txtYear.getText().length()==0)
{
showMessage("错误!","年份不能为空!",SWT.ICON_INFORMATION);
}
else if(Integer.parseInt(txtYear.getText())>2100|Integer.parseInt(txtYear.getText())<1900)
{
showMessage("错误!","年份需要在1900-2100中间!",SWT.ICON_INFORMATION);
}
else
{
txtMonth.setFocus();
}
}
}
});
txtMonth.addModifyListener(new ModifyListener(){
public void modifyText(ModifyEvent eve)
{
if(txtMonth.getText().length()==0)
{
return;
}
if(txtMonth.getText().length()>2)
{
showMessage("错误!","输入的月形式为:\"07\"!",SWT.ICON_INFORMATION);
txtMonth.setText("");
}
else
{
try
{
int Month=Integer.parseInt(txtMonth.getText());
}
catch(Exception e)
{
showMessage("错误!","输入的月份只能为0-9的数字!",SWT.ICON_INFORMATION);
txtMonth.setText("");
}
}
return;
}
});
txtMonth.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent month)
{
if(month.keyCode==SWT.CR)
{
if(txtMonth.getText().length()==0)
{
showMessage("错误!","月份不能为空!",SWT.ICON_INFORMATION);
}
else if(Integer.parseInt(txtMonth.getText())>12|Integer.parseInt(txtMonth.getText())<1)
{
showMessage("错误!","月份需要在1-12中间!",SWT.ICON_INFORMATION);
txtMonth.setText("");
}
else
{
txtDay.setFocus();
}
}
}
});
txtDay.addModifyListener(new ModifyListener(){
public void modifyText(ModifyEvent eve)
{
if(txtDay.getText().length()==0)
{
return;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -