freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于java計(jì)算器小軟件設(shè)計(jì)(編輯修改稿)

2025-06-12 19:44 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 blic void initPanel(int width, int height){ getPanelDemo().setSize(width, height)。 getPanelDemo().setOpaque(false)。 } public JPanel getPanelDemo(){ return panel。 } 10 public JFrame getFrame(){ return frame。 } public void initialize(){ ().setLayout(null)。 getPanelDemo().setLocation(30, 10)。 getPanelDemo().setBorder((Color.white, 1))。 ().add(getPanelDemo())。 (false)。 ()。 (620, 630)。 (true)。 } } 總的控制模塊 在此模塊中 , 實(shí)現(xiàn)了 窗口的基本操作, 即關(guān)閉按鈕、 最小 化按鈕 、窗口移動(dòng) ,由于考慮到界面的美觀性, 最大化按鈕未實(shí)現(xiàn) 。 總的控制類 ControlPanel 的 主要代碼如下 : private int mouseX, mouseY。 public ControlPanel(Calculator caculator){ super(caculator)。 initPanel(420, 31)。 getPanelDemo().setLayout(null)。 ImageIcon exit_image = ( + control\\)。 ImageIcon deiconify_image = ( + control\\)。 11 ImageIcon iconify_image = ( + control\\)。 JLabel exit = new JLabel(exit_image)。 JLabel deiconify = new JLabel(deiconify_image)。 JLabel iconify = new JLabel(iconify_image)。 (385, 2, 30, 30)。 (360, 2, 30, 30)。 (335, 0, 30, 30)。 (new CloseMouseListener(exit))。 (new IconifyMouseListener(getFrame(), iconify))。 getPanelDemo().add(exit)。 getPanelDemo().add(deiconify)。 getPanelDemo().add(iconify)。 getPanelDemo().addMouseListener(new MouseListener(){ public void mouseClicked(MouseEvent e) {} public void mousePressed(MouseEvent e) { mouseX = ()。 mouseY = ()。 } public void mouseReleased(MouseEvent e) {} public void mouseEntered(MouseEvent e) {} public void mouseExited(MouseEvent e) {} })。 getPanelDemo().addMouseMotionListener(new MouseMotionListener(){ public void mouseDragged(MouseEvent e) { if(() == ){ getFrame().setLocation(() mouseX, 12 () mouseY)。 } } public void mouseMoved(MouseEvent e) {} })。 } 顯示模塊 顯示模塊是與用戶交互的模塊之一, 它的作用 很 大, 用戶輸入的算式 、 算式所計(jì)算的結(jié)果 和錯(cuò)誤信息 是通過此模塊顯示的 。 顯示類 EditorPanel 的 主要代碼如下 : private JEditorPane editorPane = new JEditorPane()。 public EditorPanel(Calculator caculator) { super(caculator)。 (300, 300)。 getPanelDemo().setLayout(null)。 (false)。 (false)。 (false)。 (new Font(楷體 _GB2312, , 14))。 (new Color(230, 230, 230))。 } public JEditorPane getEditorPanel(){ return editorPane。 } public void initialize(){ ().setLayout(null)。 getEditorPanel().setLocation(100, 10)。 getEditorPanel().setBorder((hite, 1))。 13 ().add(getEditorPanel())。 (false)。 ()。 (420, 630)。 (true)。 } 圖 8 顯示模塊 的 界面 截圖 鍵盤輸入模塊 鍵盤輸入模塊提供了一個(gè)相對(duì)來(lái)說(shuō)功能較為簡(jiǎn)單的 虛擬鍵盤, 用戶通過用鼠標(biāo)單擊此鍵盤 輸入算式, 此模塊中提供了簡(jiǎn)單的校驗(yàn)機(jī)制, 以防止輸入錯(cuò)誤, 違背我們的計(jì)算規(guī)則。 鍵盤類 KeysPanel 的 主要代碼如下: public KeysPanel(Calculator caculator) { super(caculator)。 initPanel(320, 116)。 getPanelDemo().setLayout(null)。 JPanel numberKeysPanel = new NumberKeysPanel(caculator).getPanelDemo()。 JPanel operatorKeysPanel = new OperatorKeysPanel(caculator).getPanelDemo()。 (0, 0)。 (140, 0)。 getPanelDemo().add(numberKeysPanel)。 14 getPanelDemo().add(operatorKeysPanel)。 } 數(shù)字鍵盤類 NumberKeysPanel 的代碼如下 public class NumberKeysPanel extends PanelDemo{ private String path = + key\\number\\。 public NumberKeysPanel(Calculator caculator){ super(caculator)。 GridLayout gridLayout = new GridLayout(4, 3)。 (3)。 (3)。 (140, 120)。 getPanelDemo().setLayout(gridLayout)。 initNumberPanel()。 } public void initNumberPanel(){ String[] numberName = {7, 8, 9, 4, 5, 6, 1, 2, 3, 0, dian, zhengfu}。 JLabel[] labels = new JLabel[12]。 for(int i=0。 i12。 i++){ labels[i] = new JLabel((path + numberName[i] +.png))。 labels[i].addMouseListener(new NumberKeysMouseListener(labels[i], numberName[i]))。 getPanelDemo().add(labels[i])。 } } public static void main(String[] args){ NumberKeysPanel numberKeysPanel = new NumberKeysPanel(null)。 ()。 15 } } 操作符 鍵盤 類 OperatorKeysPanel 的代碼如下: public class OperatorKeysPanel extends PanelDemo{ private String path = + key\\char\\。 public OperatorKeysPanel(Calculator caculator){ super(caculator)。 (180, 120)。 BoxLayout boxLayout = new BoxLayout(getPanelDemo(), )。 getPanelDemo().setLayout(boxLayout)。 getPanelDemo().add(initLeftPanel())。 getPanelDemo().add((new Dimension(2, 1)))。 getPanelDemo().add(initRightPanel())。 } public JPanel initLeftPanel(){ JPanel leftPanel = new JPanel()。 GridLayout gridLayout = new GridLayout(4, 3)。 (3)。 (3)。 (false)。 (gridLayout)。 (180, 120)。 String[] leftNames = {m+, m, mc, zuokuohao, youkuohao, mr, jia, jian, daoshu, cheng, chu, pingfang}。 JLabel[] labels = new JLabel[12]。 for(int i=0。 i12。 i++){ labels[i] = new JLabel((path + leftNames[i] +.png))。 16 labels[i].addMouseListener(new OperatorKeysMouseListener(labels[i], leftNames[i]))。 (labels[i])。 } return leftPanel。 } public JPanel initRightPanel(){ JPanel rightPanel = new JPanel()。 BoxLayout boxLayout = new BoxLayout(rightPanel, )。 (false)。 (boxLayout)。 (40, 120)。 String[] rightNames = {tuige, ac, dengyu}。 JLabel[] labels = new JLabel[3]。 Dimension HGAP3 = new Dimension(1, 4)。 for(int i=0。 i3。 i++){ labels[i] = new JLabel((path + rightNames[i] +.png))。 labels[i].addMouseListener(new OperatorKeysMouseListener(labels[i], rightNames[i]))。 (labels[i])。 if(i == 0){ ((HGAP3))。 }else if(i == 1){ ((new Dimension(1, 6)))。 }else if(i == 2){ ((new Dimension(1, 4)))。 } } 17 return rightPanel。 } public static void main(String[] args){ OperatorKeysPanel controlCharPanel = new OperatorKeysPanel(null)。 ()。 } 圖 9 鍵盤輸入 模塊 的 界面 截圖 直接輸入模塊 為了更快的 輸入 (粘貼算式、 快速輸入等 ), 本系統(tǒng)提供了一個(gè)文本框, 用以輸入算式, 在此文本框中輸入算式時(shí),不提供任何的校驗(yàn)機(jī)制, 但是, 在計(jì)算時(shí),如果出現(xiàn)錯(cuò)誤,則會(huì)進(jìn)行錯(cuò)誤提示。直接輸入類 InputPanel 的 主要代碼如下: private JPanel panel。 private JEditorPane editorPanel。 public InputPanel(Calculator caculator){ super(caculator)。 panel = new BackgroundPanel(320, 116, E:\\Caculator\\Image\\input\\)。 (null)。 JLabel dengyu = new JLabel((E:\\Caculator\\Image\\input\\))。 (260, 33)
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1