?? viewauthorityframe.java
字號:
package baseinforinterface;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import data.StockManagementData;
import user.User;
import maininterface.*;
public class ViewAuthorityFrame extends JFrame {
JPanel contentPane;
//創建標簽面板的布局
GridLayout baseInforGridLayout = new GridLayout();
GridLayout stockGridLayout = new GridLayout();
GridLayout stockManageGridLayout = new GridLayout();
GridLayout saleGridLayout = new GridLayout();
//創建標簽控件
JLabel jLabel1 = new JLabel();
JLabel jLabel2 = new JLabel();
JLabel jLabel3 = new JLabel();
JLabel jLabel4 = new JLabel();
//創建標簽面板
JPanel baseInforPanel = new JPanel();
JPanel stockPanel = new JPanel();
JPanel stockManagePanel = new JPanel();
JPanel salePanel = new JPanel();
//創建基礎信息模塊的標簽和標題數組
JLabel[] baseInforJLabels = new JLabel[12];
String[] baseInforJLabelTitles = {"用戶管理用戶", "數據備份用戶", "賬套管理用戶",
"商品數據管理用戶", "商品折扣管理用戶", "供應商數據管理用戶", "客戶數據管理用戶",
"客戶信用管理用戶", "倉庫數據管理用戶", "會計科目管理用戶",
"報表管理用戶", "用戶日志查看用戶"};
//創建進貨模塊的標簽和標題數組
JLabel[] stockJLabels = new JLabel[9];
String[] stockJLabelTitles = {"請購用戶", "訂購用戶", "驗收用戶",
"現金管理用戶", "現金日記賬查看用戶", "進貨單查詢用戶", "應付賬款查詢用戶",
"進貨會計分錄管理用戶", "進貨會計分錄查看用戶"};
//創建庫存模塊的標簽和標題數組
JLabel[] stockManageJLabels = new JLabel[12];
String[] stockManageJLabelTitles = {"商品調出用戶", "商品檢收用戶", "商品調價用戶",
"商品組合管理用戶", "庫存盤點計數用戶", "庫存盤點核查用戶", "庫存商品查詢用戶",
"庫存單據查詢用戶", "庫存警告設置用戶", "商品有效期查詢用戶", "庫存會計分錄管理用戶",
"庫存會計分錄查看用戶"};
//創建銷售模塊的標簽和標題數組
JLabel[] saleJLabels = new JLabel[7];
String[] saleJLabelTitles = {"前臺銷售用戶", "信用銷售用戶", "銷售收款用戶",
"銷售單查詢用戶", "應收帳款查詢用戶", "銷售會計分錄管理用戶", "銷售會計分錄查看用戶"};
//創建字體類
Font dialog13 = new java.awt.Font("Dialog", 0, 13);
//聲明數據類
StockManagementData stockManagementData = null;
//聲明用戶類
User user = null;
//聲明主窗口類
StockManagementMainFrame stockManagementMainFrame = null;
public ViewAuthorityFrame(StockManagementMainFrame stockManagementMainFrame) {
this.stockManagementMainFrame = stockManagementMainFrame;
//取得主窗口的數據類
stockManagementData = stockManagementMainFrame.getStockManagementData();
//取得主窗口的用戶類
user = stockManagementMainFrame.getUser();
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
private void jbInit() throws Exception {
contentPane = (JPanel) this.getContentPane();
contentPane.setLayout(null);
this.setSize(new Dimension(658, 620));
//設置標簽的屬性
jLabel1.setText("基礎信息模塊用戶權限:");
jLabel1.setBounds(new Rectangle(10, 30, 179, 16));
jLabel2.setText("進貨模塊用戶權限:");
jLabel2.setBounds(new Rectangle(10, 193, 140, 16));
jLabel3.setText("庫存模塊用戶權限:");
jLabel3.setBounds(new Rectangle(10, 314, 140, 16));
jLabel4.setText("銷售模塊用戶權限:");
jLabel4.setBounds(new Rectangle(10, 475, 140, 16));
//設置基礎信息模塊面板的布局的行數和列數
baseInforGridLayout.setRows(4); //行數
baseInforGridLayout.setColumns(3); //列數
baseInforPanel.setLayout(baseInforGridLayout);
baseInforPanel.setBounds(new Rectangle(152, 23, 476, 145));
//設置面板的邊框類型
baseInforPanel.setBorder(BorderFactory.createEtchedBorder());
//設置進貨模塊面板的布局的行數和列數
stockGridLayout.setRows(3); //行數
stockGridLayout.setColumns(3); //列數
stockPanel.setLayout(stockGridLayout);
stockPanel.setBounds(new Rectangle(152, 185, 476, 106));
//設置面板的邊框類型
stockPanel.setBorder(BorderFactory.createEtchedBorder());
//設置庫存模塊面板的布局的行數和列數
stockManageGridLayout.setRows(4); //行數
stockManageGridLayout.setColumns(3); //列數
stockManagePanel.setLayout(stockManageGridLayout);
stockManagePanel.setBounds(new Rectangle(152, 308, 476, 145));
//設置面板的邊框類型
stockManagePanel.setBorder(BorderFactory.createEtchedBorder());
//設置銷售模塊面板的布局的行數和列數
saleGridLayout.setRows(3); //行數
saleGridLayout.setColumns(3); //列數
salePanel.setLayout(saleGridLayout);
salePanel.setBounds(new Rectangle(152, 470, 476, 106));
//設置面板的邊框類型
salePanel.setBorder(BorderFactory.createEtchedBorder());
//為窗口面板加入各個控件
contentPane.add(baseInforPanel, null);
contentPane.add(stockPanel, null);
contentPane.add(stockManagePanel, null);
contentPane.add(salePanel, null);
contentPane.add(jLabel1, null);
contentPane.add(jLabel2, null);
contentPane.add(jLabel3, null);
contentPane.add(jLabel4, null);
//根據用戶權限顯示標簽
showAuthorityJLabel();
//設置窗口類的字體
setupFont();
}
//設置窗口類的字體
public void setupFont(){
Component[] components = contentPane.getComponents();
for(int i = 0; i < components.length; i++){
components[i].setFont(dialog13);
}
}
//顯示標簽的方法
public void showAuthorityJLabel(){
//顯示基礎信息模塊的標簽
for(int i = 0; i < baseInforJLabels.length; i++){
//創建標簽
baseInforJLabels[i] = new JLabel();
//設置標簽的標題
baseInforJLabels[i].setText(baseInforJLabelTitles[i]);
//設置標簽的字體
baseInforJLabels[i].setFont(dialog13);
//為面板加入標簽
baseInforPanel.add(baseInforJLabels[i]);
}
//顯示進貨模塊的標簽
for(int i = 0; i < stockJLabels.length; i++){
//創建標簽
stockJLabels[i] = new JLabel();
//設置標簽的標題
stockJLabels[i].setText(stockJLabelTitles[i]);
//設置標簽的字體
stockJLabels[i].setFont(dialog13);
//為面板加入標簽
stockPanel.add(stockJLabels[i]);
}
//顯示庫存模塊的標簽
for(int i = 0; i < stockManageJLabels.length; i++){
//創建標簽
stockManageJLabels[i] = new JLabel();
//設置標簽的標題
stockManageJLabels[i].setText(stockManageJLabelTitles[i]);
//設置標簽的字體
stockManageJLabels[i].setFont(dialog13);
//為面板加入標簽
stockManagePanel.add(stockManageJLabels[i]);
}
//設置銷售模塊的標簽
for(int i = 0; i < saleJLabels.length; i++){
//創建標簽
saleJLabels[i] = new JLabel();
//設置標簽的標題
saleJLabels[i].setText(saleJLabelTitles[i]);
//設置標簽的字體
saleJLabels[i].setFont(dialog13);
//為面板加入標簽
salePanel.add(saleJLabels[i]);
}
setAuthorityJLabel();
}
//設置標簽的方法
public void setAuthorityJLabel(){
//取得用戶類的權限數字
int baseInforFunction = user.getBaseInforFunction();
int stockFunction = user.getStockFunction();
int stockManageFunction = user.getStockManageFunction();
int saleFunction = user.getSaleFunction();
int power = 0;
//設置基礎信息模塊的標簽
for(int i = 0; i < baseInforJLabels.length; i++){
//將標簽的enabled屬性設為false
baseInforJLabels[i].setEnabled(false);
//求2的i次方
power = (int)Math.pow(2, i);
//根據用戶權限將標簽的enabled屬性設為true
if((baseInforFunction & power) == power){
baseInforJLabels[i].setEnabled(true);
}
}
//設置進貨模塊的標簽
for(int i = 0; i < stockJLabels.length; i++){
//將標簽的enabled屬性設為false
stockJLabels[i].setEnabled(false);
//求2的i次方
power = (int)Math.pow(2, i);
//根據用戶權限將標簽的enabled屬性設為true
if((stockFunction & power) == power){
stockJLabels[i].setEnabled(true);
}
}
//設置庫存模塊的標簽
for(int i = 0; i < stockManageJLabels.length; i++){
//將標簽的enabled屬性設為false
stockManageJLabels[i].setEnabled(false);
//求2的i次方
power = (int)Math.pow(2, i);
//根據用戶權限將標簽的enabled屬性設為true
if((stockManageFunction & power) == power){
stockManageJLabels[i].setEnabled(true);
}
}
//設置銷售模塊的標簽
for(int i = 0; i < saleJLabels.length; i++){
//將標簽的enabled屬性設為false
saleJLabels[i].setEnabled(false);
//求2的i次方
power = (int)Math.pow(2, i);
//根據用戶權限將標簽的enabled屬性設為true
if((saleFunction & power) == power){
saleJLabels[i].setEnabled(true);
}
}
}
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;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -