?? usermanageframe.java
字號:
}else{
baseInforCheckBoxes[i].setSelected(false);
}
}
}
//設置進貨模塊復選框的方法
public void setStockAuthorityCheckBox(int stockFunction){
int power = 0;
//設置進貨模塊的復選框
for(int i = 0; i < stockCheckBoxes.length; i++){
power = (int)Math.pow(2, i);
if((stockFunction & power) == power){
stockCheckBoxes[i].setSelected(true);
}else{
stockCheckBoxes[i].setSelected(false);
}
}
}
//設置庫存模塊復選框的方法
public void setStockManageAuthorityCheckBox(int stockManageFunction){
int power = 0;
//設置庫存模塊的復選框
for(int i = 0; i < stockManageCheckBoxes.length; i++){
power = (int)Math.pow(2, i);
if((stockManageFunction & power) == power){
stockManageCheckBoxes[i].setSelected(true);
}else{
stockManageCheckBoxes[i].setSelected(false);
}
}
}
//設置銷售模塊復選框的方法
public void setSaleAuthorityCheckBox(int saleFunction){
int power = 0;
//設置銷售模塊的復選框
for(int i = 0; i < saleCheckBoxes.length; i++){
power = (int)Math.pow(2, i);
if((saleFunction & power) == power){
saleCheckBoxes[i].setSelected(true);
}else{
saleCheckBoxes[i].setSelected(false);
}
}
}
protected void processWindowEvent(WindowEvent e) {
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
exit();
}
}
//退出方法
public void exit(){
//隱藏窗口
this.setVisible(false);
}
//設置用戶的方法
public void setUser(User user) {
this.user = user;
}
//恢復所有復選框的方法
public void restoreAllCheckBoxes(){
setBaseInforAuthorityCheckBox(baseInforFunction);
setStockAuthorityCheckBox(stockFunction);
setStockManageAuthorityCheckBox(stockManageFunction);
setSaleAuthorityCheckBox(saleFunction);
}
//選擇所有復選框的方法
public void selectAllCheckBoxes(){
setBaseInforAuthorityCheckBox(4095);
setStockAuthorityCheckBox(511);
setStockManageAuthorityCheckBox(4095);
setSaleAuthorityCheckBox(127);
}
//清空界面方法
public void clearInterface(){
//清空編輯框
jTextField2.setText("");
jTextField3.setText("");
//清空權限變量
baseInforFunction = 0;
stockFunction = 0;
stockManageFunction = 0;
saleFunction = 0;
//清空復選框
restoreAllCheckBoxes();
}
public void searchUser(){
//清空列表框和用戶類數組
listData.clear();
selectedUsers = null;
String userName = jTextField1.getText().trim();
String[][] userNames = stockManagementData.getUserByUserName(userName);
//創建用戶類數組
selectedUsers = new User[userNames.length];
for(int i = 0; i < userNames.length; i++){
//添加列表框的內容
listData.addElement(userNames[i][0]);
//創建用戶
selectedUsers[i] = new User(userNames[i][0], userNames[i][1],
Integer.parseInt(userNames[i][2]),
Integer.parseInt(userNames[i][3]),
Integer.parseInt(userNames[i][4]),
Integer.parseInt(userNames[i][5]));
}
}
//動作接收器的方法
public void actionPerformed(ActionEvent e) {
//取得按鈕的動作字符串
String actionCommand = e.getActionCommand().trim();
//單擊查詢按鈕
if (actionCommand.equals("search")) {
searchUser();
}
else if (actionCommand.equals("selectAllCheckboxes")) {
selectAllCheckBoxes();
}
else if (actionCommand.equals("restoreAllCheckBoxes")) {
restoreAllCheckBoxes();
}
else if (actionCommand.equals("baseInforSelectCheckBoxes")) {
setBaseInforAuthorityCheckBox(4095);
}
else if (actionCommand.equals("baseInforRestoreCheckBoxes")) {
setBaseInforAuthorityCheckBox(baseInforFunction);
}
else if (actionCommand.equals("stockSelectCheckBoxes")) {
setStockAuthorityCheckBox(511);
}
else if (actionCommand.equals("stockRestoreCheckBoxes")) {
setStockAuthorityCheckBox(stockFunction);
}
else if (actionCommand.equals("stockManageSelectCheckBoxes")) {
setStockManageAuthorityCheckBox(4095);
}
else if (actionCommand.equals("stockManageRestoreCheckBoxes")) {
setStockManageAuthorityCheckBox(stockManageFunction);
}
else if (actionCommand.equals("saleSelectCheckBoxes")) {
setSaleAuthorityCheckBox(127);
}
else if (actionCommand.equals("saleRestoreCheckBoxes")) {
setSaleAuthorityCheckBox(saleFunction);
}
else if (actionCommand.equals("add")) {
//清空界面
clearInterface();
//檢查按鈕狀態
checkBtn(true);
action = "add";
}
else if (actionCommand.equals("update")) {
if(jList1.getSelectedIndex() == -1){
JOptionPane.showMessageDialog(null, "請選擇用戶.");
return;
}
checkBtn(true);
action = "update";
}
else if (actionCommand.equals("delete")) {
if(jList1.getSelectedIndex() == -1){
JOptionPane.showMessageDialog(null, "請選擇用戶.");
return;
}
checkBtn(true);
action = "delete";
}
else if (actionCommand.equals("ok")) {
String userName = jTextField2.getText().trim();
String userPassword = jTextField3.getText().trim();
if((userName.length() == 0) | (userPassword.length() == 0)){
JOptionPane.showMessageDialog(null, "用戶名和密碼不能為空.");
return;
}
if (action.equals("update") | action.equals("delete")) {
//取得列表框的用戶類的名字
String selectedUserName = (String) listData.getElementAt(jList1.
getSelectedIndex());
if (!selectedUserName.equals(userName)) {
JOptionPane.showMessageDialog(null, "列表框的選擇用戶名和編輯框的用戶名不相同,不能進行更新和刪除操作.");
return;
}
}
//取得用戶權限數字
int tempBaseInforFunction = 0;
int tempStockFunction = 0;
int tempStockManageFunction = 0;
int tempSaleFunction = 0;
//取得基礎信息模塊的權限
for(int i = 0; i < baseInforCheckBoxes.length; i++){
if(baseInforCheckBoxes[i].isSelected()){
tempBaseInforFunction += Math.pow(2, i);
}
}
//取得進貨模塊的權限
for(int i = 0; i < stockCheckBoxes.length; i++){
if(stockCheckBoxes[i].isSelected()){
tempStockFunction += Math.pow(2, i);
}
}
//取得庫存模塊的權限
for(int i = 0; i < stockManageCheckBoxes.length; i++){
if(stockManageCheckBoxes[i].isSelected()){
tempStockManageFunction += Math.pow(2, i);
}
}
//取得銷售模塊的權限
for(int i = 0; i < saleCheckBoxes.length; i++){
if(saleCheckBoxes[i].isSelected()){
tempSaleFunction += Math.pow(2, i);
}
}
//創建用戶類
User tempUser = new User(userName, userPassword, tempBaseInforFunction,
tempStockFunction, tempStockManageFunction, tempSaleFunction);
//執行添加操作
if(action.equals("add")){
int result = stockManagementData.createUser(tempUser);
if(result == 1){
//為列表框添加用戶名
listData.addElement(userName);
//更新用戶數組
User[] tempUsers = new User[selectedUsers.length + 1];
System.arraycopy(selectedUsers, 0, tempUsers, 0, selectedUsers.length);
tempUsers[selectedUsers.length] = tempUser;
selectedUsers = tempUsers;
JOptionPane.showMessageDialog(null, "成功添加用戶(" + userName + ").");
}else{
JOptionPane.showMessageDialog(null, "添加用戶失敗.");
}
}
//執行更新操作
else if(action.equals("update")){
int result = stockManagementData.updateUser(tempUser);
if(result == 1){
JOptionPane.showMessageDialog(null, "成功更新用戶(" + userName + ").");
//更新用戶列表的用戶類
selectedUsers[jList1.getSelectedIndex()] = tempUser;
}else{
JOptionPane.showMessageDialog(null, "更新用戶失敗.");
}
}
//執行刪除操作
else if(action.equals("delete")){
int result = stockManagementData.deleteUser(tempUser);
if(result == 1){
int selectedIndex = jList1.getSelectedIndex();
//為列表框刪除用戶名
listData.remove(selectedIndex);
//更新用戶數組
User[] tempUsers = new User[selectedUsers.length - 1];
int line = 0;
for(int i = 0; i < selectedUsers.length; i++){
if(i == selectedIndex){
continue;
}else{
tempUsers[line] = selectedUsers[i];
line++;
}
}
selectedUsers = tempUsers;
JOptionPane.showMessageDialog(null, "成功刪除用戶(" + userName + ").");
}else{
JOptionPane.showMessageDialog(null, "刪除用戶失敗.");
}
}
checkBtn(false);
}
else if (actionCommand.equals("cancel")) {
checkBtn(false);
//激活列表框的選擇方法
userNameList_valueChanged(null);
}
else if (actionCommand.equals("exit")) {
exit();
}
}
//檢查按鈕enabled狀態的方法
public void checkBtn(boolean manipulated){
//增、刪、改狀態
if(manipulated){
jButton12.setEnabled(false);
jButton13.setEnabled(false);
jButton14.setEnabled(false);
jButton15.setEnabled(true);
jButton16.setEnabled(true);
}else{
jButton12.setEnabled(true);
jButton13.setEnabled(true);
jButton14.setEnabled(true);
jButton15.setEnabled(false);
jButton16.setEnabled(false);
}
}
//列表內容改變方法
void userNameList_valueChanged(ListSelectionEvent e) {
//取得選擇項的位置
int selectIndex = jList1.getSelectedIndex();
if(selectIndex > -1){
//顯示用戶名和密碼
jTextField2.setText(selectedUsers[selectIndex].getUserName());
jTextField3.setText(selectedUsers[selectIndex].getUserPassword());
//根據用戶重新設置所有復選框
setAllAuthorityCheckBox(selectIndex);
}else{
//使所有控件回復到空狀態
clearInterface();
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -