《Java程序設(shè)計》課程綜合性實驗報告簡易寫字板軟件設(shè)計

上傳人:仙*** 文檔編號:28048797 上傳時間:2021-08-23 格式:DOC 頁數(shù):24 大?。?88.56KB
收藏 版權(quán)申訴 舉報 下載
《Java程序設(shè)計》課程綜合性實驗報告簡易寫字板軟件設(shè)計_第1頁
第1頁 / 共24頁
《Java程序設(shè)計》課程綜合性實驗報告簡易寫字板軟件設(shè)計_第2頁
第2頁 / 共24頁
《Java程序設(shè)計》課程綜合性實驗報告簡易寫字板軟件設(shè)計_第3頁
第3頁 / 共24頁

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《《Java程序設(shè)計》課程綜合性實驗報告簡易寫字板軟件設(shè)計》由會員分享,可在線閱讀,更多相關(guān)《《Java程序設(shè)計》課程綜合性實驗報告簡易寫字板軟件設(shè)計(24頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、華北科技學院計算機系綜合性實驗報告 華北科技學院計算機系綜合性實驗 實 驗 報 告 課程名稱 Java程序設(shè)計 實驗學期 2011 至 2012 學年 第 1 學期 學生所在系部 基礎(chǔ)部 年級 2009 專業(yè)班級 計算B092 學生姓名 學號 任課教師 實驗成績

2、 計算機系制 《Java程序設(shè)計》課程綜合性實驗報告 開課實驗室: 基礎(chǔ)實驗室 2011 年 12 月 5 日 實驗題目 簡易寫字板軟件設(shè)計 一、 實驗目的 i. 通過編寫Java的應用系統(tǒng)綜合實例——簡易寫字板軟件,總結(jié)、回顧和實踐面向?qū)ο蟮木幊趟枷胍约熬幊谭椒ǎ⑼ㄟ^編寫程序來掌握Java語言編程技巧,將學習到的知識融會貫通,同時提高調(diào)試程序的能力,養(yǎng)成良好的編程習慣,并增強對程序設(shè)計整體思路的把握。 ii. 熟悉在集成開發(fā)環(huán)境下編寫Java程序。 二、 設(shè)備與環(huán)

3、境 iii. 硬件:多媒體計算機 iv. 軟件:Windows 2000以上的操作系統(tǒng)、JDK開發(fā)包、集成開發(fā)環(huán)境 三、 實驗內(nèi)容 v. 總體要求:程序功能基本完成,用戶界面友好,代碼的可維護性和可擴展性較好,最好包括必要的注釋和相應的文檔。 vi. 具體要求:基本的文本錄入,字符修改,刪除,換行,粘貼,復制,剪切等功能,主要包括: 2. 菜單欄設(shè)計及功能實現(xiàn):菜單欄主要包括文件、編輯、格式、幫助等常見菜單。其中文件菜單有新建、打開、保存、另存為、退出等功能;編輯菜單有剪切、復制、粘貼、等功能;格式菜單含有對文字字體、字型、字號及顏色等的設(shè)置功能,根據(jù)情況可在編輯菜單添加查找和查找

4、替換功能。 3. 編輯區(qū)設(shè)計:對文本的編輯處理區(qū)。 4. 工具欄設(shè)計:可根據(jù)需要增加該項功能。 5. 其他功能設(shè)計。 四、 實驗結(jié)果及分析 1. 主界面的設(shè)計與實現(xiàn) a) 整個界面共包括四個部分,包括:標題欄、菜單欄、編輯區(qū)、狀態(tài)欄以及滾動條,如圖1所示。 b) 6. 圖表 1記事本的整體布局 menuBar=new JMenuBar(); setJMenuBar(menuBar); menu=new JMenu[5]; menuItem=new JMenuItem[menu.length][]; menu[0]=new JMenu("文件

5、(F)"); menu[0].setMnemonic(F); menu[1]=new JMenu("編輯(E)"); menu[1].setMnemonic(E); menu[2]=new JMenu("格式(O)"); menu[2].setMnemonic(O); menu[3]=new JMenu("查看(V)"); menu[3].setMnemonic(V); menu[4]=new JMenu("幫助(H)"); menu[4].setMnemonic(H); 7. 菜單的設(shè)計 a) 本程序共設(shè)計四個菜單,分別是文

6、件、編輯、格式、幫助四個菜單的功能, b) 針對記事本的需求,文件菜單欄實現(xiàn)了新建、打開、保存、另存為、退出的功能。如圖二所示。 c) 8. 圖表 2文件菜單欄 menuItem[0]=new JMenuItem[5]; menuItem[1]=new JMenuItem[7]; menuItem[2]=new JMenuItem[2]; menuItem[3]=new JMenuItem[1]; menuItem[4]=new JMenuItem[1]; menuItem[0][0]=new JMenuItem("新建(N)"); menuI

7、tem[0][0].setMnemonic(N); menuItem[0][1]=new JMenuItem("打開(O) ..."); menuItem[0][1].setMnemonic(O); menuItem[0][2]=new JMenuItem("保存(S)"); menuItem[0][2].setMnemonic(S); menuItem[0][3]=new JMenuItem("另存為(A) ..."); menuItem[0][3].setMnemonic(A); menuItem[0][4]=new JMenuItem

8、("關(guān)閉(C)"); menuItem[0][4].setMnemonic(C); a) 編輯欄中實現(xiàn)了常見的剪切、復制、粘貼、查找與替換、全選以及時間/日期的功能。如圖三所示。 b) 9. 圖表 3編輯菜單欄 menuItem[1][0]=new JMenuItem("剪切(X)"); menuItem[1][0].setMnemonic(X); menuItem[1][1]=new JMenuItem("復制(C)"); menuItem[1][1].setMnemonic(C); menuItem[1][2]=new JMenuItem("粘貼(

9、P)"); menuItem[1][2].setMnemonic(P); menuItem[1][3]=new JMenuItem("查找(F)"); menuItem[1][3].setMnemonic(F); menuItem[1][4]=new JMenuItem("替換(R)"); menuItem[1][4].setMnemonic(R); menuItem[1][5]=new JMenuItem("全選(A)"); menuItem[1][5].setMnemonic(A); menuItem[1][6]=new JMenuItem(

10、"時間/日期(T)"); menuItem[1][6].setMnemonic(T); a) 格式欄中實現(xiàn)了自動換行以及字體設(shè)置功能。如圖四所示 b) 10. 圖表 4格式菜單欄 menuItem[2][0]=new JCheckBoxMenuItem("自動換行(W)"); menuItem[2][0].setMnemonic(T); i. 在字體設(shè)置中實現(xiàn)了字體,字號、字形三個功能,如圖五所示。 11. 12. 13. 圖表 5字體設(shè)置選項 JTextArea ta; JScrollPane scr; JMenuBar menuBar;

11、 JMenu menu[]; JMenuItem menuItem[][], popupMenuItem[]; JPopupMenu popupMenu; JLabel lblStatus; JComboBox cbFont, cbSize, cbStyle; boolean changed; String curFileName; String schText[]=new String[2]; String[] strFonts; String[] strSize={"8","9","10","11","12","14","16","18","20","2

12、2","24","26","28","36","48","72"}; String[] strStyle={"常規(guī)","粗體","斜體","粗斜體"}; Container ctn; SchInfo schInfo; GraphicsEnvironment ge; Font defaultFont=new Font("宋體", Font.PLAIN, 12), fonts[]; public zhaoliyang514() { super("無標題 - 記事本"); changed=false; curFileName=""; lblStat

13、us=new JLabel("就緒"); ta=new JTextArea(); scr=new JScrollPane(ta); ctn=getContentPane(); ge=GraphicsEnvironment.getLocalGraphicsEnvironment(); strFonts=ge.getAvailableFontFamilyNames(); cbFont=new JComboBox(strFonts); cbFont.setFont(defaultFont); cbFont.setSelectedItem("宋體");

14、 cbSize=new JComboBox(strSize); cbSize.setFont(defaultFont); cbSize.setSelectedItem("12"); cbStyle=new JComboBox(strStyle); cbFont.setSelectedItem("常規(guī)"); cbStyle.setFont(defaultFont); cbFont.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent ie)

15、 { int size, style; String fontName; fontName=(String)cbFont.getSelectedItem(); style=cbStyle.getSelectedIndex(); size=Integer.parseInt((String)cbSize.getSelectedItem()); Font font=new Font(fontName, style, size); ta.setFont(font); } }); i. 幫助欄實現(xiàn)了關(guān)于記事本的介

16、紹功能,如圖六所示。 14. 15. 圖表 6幫助欄選項 if (ae.getSource()==menuItem[4][0]) { JOptionPane.showMessageDialog(null, "基礎(chǔ)部,計算B092 趙禮陽", "關(guān)于 記事本", JOptionPane.INFORMATION_MESSAGE); } 16. 編輯區(qū)設(shè)計 i. 在編輯區(qū)中通過getContentPane().add(new JScrollPane(text))成功實現(xiàn)了將要輸入的文本成功輸入到編輯區(qū)中,并且這句還增加了文本的滾動

17、條,增加了記事本的實用性。 2. 文件菜單中各項功能的實現(xiàn) ii. 在設(shè)計記事本中成功完成了文件欄中的新建、打開、保存、另存為、退出的功能。 17. 18. 圖表 7打開功能 public void open() { JFileChooser fc=new JFileChooser(); if (fc.showOpenDialog(this)==JFileChooser.APPROVE_OPTION) { String _curFileName=fc.getSelectedFile().getAbsolutePath(); File file

18、=new File(_curFileName); if (file.exists()) { curFileName=_curFileName; File f=new File(curFileName); setTitle(f.getName()+" - 記事本"); changed=false; readFile(file); } else JOptionPane.showMessageDialog(null, file.getAbsolutePath()+"\n找不到文件。\n請檢查所給的文

19、件名是否正確。\n", "打開失敗", JOptionPane.ERROR_MESSAGE); } } 19. 20. 圖表 8保存及另存為功能 public void saveAs() { JFileChooser fc=new JFileChooser(); fc.setDialogTitle("另存為"); if (fc.showSaveDialog(this)==JFileChooser.APPROVE_OPTION) { boolean overwrite=false; String _curFile

20、Name=fc.getSelectedFile().getAbsolutePath(); File file=new File(_curFileName); if (file.exists()) { int exit; exit=JOptionPane.showConfirmDialog( this, file.getAbsolutePath()+"已存在。\n要覆蓋它嗎? ", "另存為", JOptionPane.YES_NO_OPTION); if (exit==JOptionPane

21、.YES_OPTION) overwrite=true; } else overwrite=true; if (overwrite) { changed=false; saveFile(file); curFileName=_curFileName; File f=new File(curFileName); setTitle(f.getName()+" - 記事本"); } } } 21. 3、格式菜單中各項功能的實現(xiàn) i. 在設(shè)計記事本的格式欄中成功完成了自動換

22、行以及字體的設(shè)置功能。其中在字體中包括了字體、字號、字形三個設(shè)置,達到了對字體設(shè)置的基本要求。 22. 4、程序源代碼 import java.io.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; import java.util.*; class Searcher extends JDialog { private JLabel Sample = new JLabel(); private int curRow, cu

23、rCol; private JTextField tfS; private JCheckBox chkCaseSensible; private JButton btnOK; private JButton btnCancel; private Searcher dlg; public static SchInfo schInfo; private JTextArea ta; public Searcher(Frame parent, boolean modal, JTextArea _ta) { super(parent,modal); sch

24、Info=new SchInfo(); ta=_ta; Container ctn=getContentPane(); JPanel ctn1=new JPanel(); JPanel ctn2=new JPanel(); JPanel ctn3=new JPanel(); JPanel ctn4=new JPanel(); btnOK=new JButton("查找下一個"); btnCancel=new JButton("取消"); initAll(); chkCaseSensible=new JCheckBox("區(qū)分大小寫",

25、 false); tfS=new JTextField(10); ctn.setLayout(new FlowLayout()); ctn.add(ctn1); ctn.add(ctn2); ctn1.setLayout(new GridLayout(2, 1)); ctn1.add(ctn3); ctn1.add(ctn4); ctn3.setLayout(new FlowLayout()); ctn4.setLayout(new FlowLayout()); ctn3.add(new JLabel("查找內(nèi)容:")); ct

26、n3.add(tfS); ctn4.add(chkCaseSensible); ctn2.setLayout(new GridLayout(2, 1)); ctn2.add(btnOK); ctn2.add(btnCancel); setTitle("查找"); btnOK.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent ae) { schInfo.str=tfS.getText(); schIn

27、fo.caseSensible=chkCaseSensible.isSelected(); String str=ta.getText(); int index; if (schInfo.caseSensible) index=str.indexOf(schInfo.str, ta.getCaretPosition()); else index=str.toUpperCase().indexOf(schInfo.str.toUpperCase(), ta.getCaretPosition()); if (index!=-

28、1) { ta.select(index, index+schInfo.str.length()); } else JOptionPane.showMessageDialog(null, "找不到\""+schInfo.str+"\"", "記事本", JOptionPane.INFORMATION_MESSAGE); } }); btnCancel.addActionListener( new ActionListener() { public void a

29、ctionPerformed(ActionEvent ae) { schInfo.str=""; schInfo.caseSensible=false; setVisible(false); } }); setVisible(true); } private void initAll() { setSize(400,140); setLocation(350,150); addWindowListener(new WindowAdapter() { public void windowClos

30、ing(java.awt.event.WindowEvent e) { setVisible (false); } }); } } class SchInfo { public String str; public boolean caseSensible; } class Replacer extends JDialog { private JLabel Sample = new JLabel(); private int curRow, curCol; private JTextField tfS, tfR; pr

31、ivate JCheckBox chkCaseSensible; private JButton btnOK, btnReplace; private JButton btnCancel; private Replacer dlg; public static RplInfo schInfo; private JTextArea ta; public Replacer(Frame parent, boolean modal, JTextArea _ta) { super(parent,modal); schInfo=new RplInfo(); t

32、a=_ta; Container ctn=getContentPane(); JPanel ctn1=new JPanel(); JPanel ctn2=new JPanel(); JPanel ctn3=new JPanel(); JPanel ctn4=new JPanel(); JPanel ctn5=new JPanel(); btnOK=new JButton("查找下一個"); btnReplace=new JButton("替換"); btnCancel=new JButton("取消"); initAll();

33、chkCaseSensible=new JCheckBox("區(qū)分大小寫", false); tfS=new JTextField(10); tfR=new JTextField(10); ctn.setLayout(new FlowLayout()); ctn.add(ctn1); ctn.add(ctn2); ctn1.setLayout(new GridLayout(3,1)); ctn1.add(ctn3); ctn1.add(ctn4); ctn1.add(ctn5); ctn3.setLayout(new FlowLayo

34、ut()); ctn4.setLayout(new FlowLayout()); ctn5.setLayout(new FlowLayout()); ctn3.add(new JLabel("查找內(nèi)容:")); ctn3.add(tfS); ctn4.add(new JLabel("替換為:")); ctn4.add(tfR); ctn5.add(chkCaseSensible); ctn2.setLayout(new GridLayout(3, 1)); ctn2.add(btnOK); ctn2.add(btnReplace);

35、 ctn2.add(btnCancel); setTitle("替換"); btnOK.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent ae) { schInfo.str=tfS.getText(); schInfo.caseSensible=chkCaseSensible.isSelected(); String str=ta.getText(); int index; if (sch

36、Info.caseSensible) index=str.indexOf(schInfo.str, ta.getCaretPosition()); else index=str.toUpperCase().indexOf(schInfo.str.toUpperCase(), ta.getCaretPosition()); if (index!=-1) { ta.select(index, index+schInfo.str.length()); } else JOptionPane.showMes

37、sageDialog(null, "找不到\""+schInfo.str+"\"", "記事本", JOptionPane.INFORMATION_MESSAGE); } }); btnReplace.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent ae) { String str=ta.getSelectedText(); int index; schInfo

38、.str=tfS.getText(); if (str!=null && str.equals(tfS.getText())) index=ta.getCaretPosition()-tfS.getText().length(); else { schInfo.caseSensible=chkCaseSensible.isSelected(); str=ta.getText(); if (schInfo.caseSensible) index=str.indexOf(schInfo.str, ta.ge

39、tCaretPosition()); else index=str.toUpperCase().indexOf(schInfo.str.toUpperCase(), ta.getCaretPosition()); } str=ta.getText(); if (index!=-1) { str.replaceFirst(tfS.getText(), tfR.getText()); String strTemp=str.substring(0, index)+tfR.getText()+str.substr

40、ing((index+tfS.getText().length()), str.length()); str=strTemp; ta.setText(str); ta.setCaretPosition(index+tfR.getText().length()); } else JOptionPane.showMessageDialog(null, "找不到\""+schInfo.str+"\"", "記事本", JOptionPane.INFORMATION_MESSAGE);

41、 } }); btnCancel.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent ae) { schInfo.str=""; schInfo.caseSensible=false; setVisible(false); } }); setVisible(true); } private void initAll() { setSize(400,140); setLoc

42、ation(350,150); addWindowListener(new WindowAdapter() { public void windowClosing(java.awt.event.WindowEvent e) { setVisible (false); } }); } } class RplInfo extends SchInfo { public String strR; } public class zhaoliyang514 extends JFrame implements ActionListen

43、er { JTextArea ta; JScrollPane scr; JMenuBar menuBar; JMenu menu[]; JMenuItem menuItem[][], popupMenuItem[]; JPopupMenu popupMenu; JLabel lblStatus; JComboBox cbFont, cbSize, cbStyle; boolean changed; String curFileName; String schText[]=new String[2]; String[] strFonts; S

44、tring[] strSize={"8","9","10","11","12","14","16","18","20","22","24","26","28","36","48","72"}; String[] strStyle={"常規(guī)","粗體","斜體","粗斜體"}; Container ctn; SchInfo schInfo; GraphicsEnvironment ge; Font defaultFont=new Font("宋體", Font.PLAIN, 12), fonts[]; public zhaoliyang514() { super

45、("無標題 - 記事本"); changed=false; curFileName=""; lblStatus=new JLabel("就緒"); ta=new JTextArea(); scr=new JScrollPane(ta); ctn=getContentPane(); ge=GraphicsEnvironment.getLocalGraphicsEnvironment(); strFonts=ge.getAvailableFontFamilyNames(); cbFont=new JComboBox(strFonts);

46、cbFont.setFont(defaultFont); cbFont.setSelectedItem("宋體"); cbSize=new JComboBox(strSize); cbSize.setFont(defaultFont); cbSize.setSelectedItem("12"); cbStyle=new JComboBox(strStyle); cbFont.setSelectedItem("常規(guī)"); cbStyle.setFont(defaultFont); cbFont.addItemListener(new ItemLis

47、tener() { public void itemStateChanged(ItemEvent ie) { int size, style; String fontName; fontName=(String)cbFont.getSelectedItem(); style=cbStyle.getSelectedIndex(); size=Integer.parseInt((String)cbSize.getSelectedItem()); Font font=new Font(fontName, style,

48、size); ta.setFont(font); } }); cbSize.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent ie) { int size, style; String fontName; fontName=(String)cbFont.getSelectedItem(); style=cbStyle.getSelectedIndex(); size=Integer.parse

49、Int((String)cbSize.getSelectedItem()); Font font=new Font(fontName, style, size); ta.setFont(font); } }); cbStyle.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent ie) { int size, style; String fontName; fontName=(String)cbFont.

50、getSelectedItem(); style=cbStyle.getSelectedIndex(); size=Integer.parseInt((String)cbSize.getSelectedItem()); Font font=new Font(fontName, style, size); ta.setFont(font); } }); cbFont.setToolTipText("在這里設(shè)置字體"); cbSize.setToolTipText("在這里設(shè)置字體大小"); cbStyle.setToolTi

51、pText("在這里設(shè)置字體風格"); JPanel panel=new JPanel(); panel.add(cbFont); panel.add(cbSize); panel.add(cbStyle); ctn.setLayout(new BorderLayout()); ctn.add(panel, BorderLayout.NORTH); ctn.add(scr, BorderLayout.CENTER); ctn.add(lblStatus, BorderLayout.SOUTH); showMenu(); schText

52、[0]=new String(""); schText[1]=new String(""); lblStatus.setFont(defaultFont); ta.setFont(defaultFont); ta.getDocument().addDocumentListener(new DocumentListener() { public void changedUpdate(DocumentEvent de) { lblStatus.setText("行數(shù):"+ta.getLineCount()); changed=tru

53、e; } public void insertUpdate(DocumentEvent de) { lblStatus.setText("行數(shù):"+ta.getLineCount()); changed=true; } public void removeUpdate(DocumentEvent de) { lblStatus.setText("行數(shù):"+ta.getLineCount()); changed=true; } } ); addWindowListener( n

54、ew WindowAdapter() { public void windowClosing(WindowEvent we) { closeAndSave(); System.exit(0); } }); ta.addMouseListener( new MouseAdapter() { public void mouseReleased(MouseEvent me) { if (me.isPopupTrigger()) { popupMenu.show(zh

55、aoliyang514.this, me.getX()+10, me.getY()+80); } } } ); } public void showMenu() { menuBar=new JMenuBar(); setJMenuBar(menuBar); menu=new JMenu[5]; menuItem=new JMenuItem[menu.length][]; menu[0]=new JMenu("文件(F)"); menu[0].setMnemonic(F); menu[1]=new JMen

56、u("編輯(E)"); menu[1].setMnemonic(E); menu[2]=new JMenu("格式(O)"); menu[2].setMnemonic(O); menu[3]=new JMenu("查看(V)"); menu[3].setMnemonic(V); menu[4]=new JMenu("幫助(H)"); menu[4].setMnemonic(H); menuItem[0]=new JMenuItem[5]; menuItem[1]=new JMenuItem[7]; menuItem[2]=new JM

57、enuItem[2]; menuItem[3]=new JMenuItem[1]; menuItem[4]=new JMenuItem[1]; menuItem[0][0]=new JMenuItem("新建(N)"); menuItem[0][0].setMnemonic(N); menuItem[0][1]=new JMenuItem("打開(O) ..."); menuItem[0][1].setMnemonic(O); menuItem[0][2]=new JMenuItem("保存(S)"); menuItem[0][2].setMne

58、monic(S); menuItem[0][3]=new JMenuItem("另存為(A) ..."); menuItem[0][3].setMnemonic(A); menuItem[0][4]=new JMenuItem("關(guān)閉(C)"); menuItem[0][4].setMnemonic(C); menuItem[1][0]=new JMenuItem("剪切(X)"); menuItem[1][0].setMnemonic(X); menuItem[1][1]=new JMenuItem("復制(C)"); menuItem[1][

59、1].setMnemonic(C); menuItem[1][2]=new JMenuItem("粘貼(P)"); menuItem[1][2].setMnemonic(P); menuItem[1][3]=new JMenuItem("查找(F)"); menuItem[1][3].setMnemonic(F); menuItem[1][4]=new JMenuItem("替換(R)"); menuItem[1][4].setMnemonic(R); menuItem[1][5]=new JMenuItem("全選(A)"); menuItem

60、[1][5].setMnemonic(A); menuItem[1][6]=new JMenuItem("時間/日期(T)"); menuItem[1][6].setMnemonic(T); menuItem[2][0]=new JCheckBoxMenuItem("自動換行(W)"); menuItem[2][0].setMnemonic(T); menuItem[2][1]=new JMenuItem(" 字體..."); menuItem[2][1].setEnabled(false); menuItem[3][0]=new JCheckBoxM

61、enuItem("狀態(tài)欄(S)", true); menuItem[3][0].setMnemonic(S); menuItem[4][0]=new JMenuItem("關(guān)于(A) ..."); menuItem[4][0].setMnemonic(S); popupMenuItem=new JMenuItem[4]; popupMenuItem[0]=new JMenuItem("剪切(X)"); popupMenuItem[0].setMnemonic(X); popupMenuItem[1]=new JMenuItem("復制(C)");

62、 popupMenuItem[1].setMnemonic(C); popupMenuItem[2]=new JMenuItem("粘貼(P)"); popupMenuItem[2].setMnemonic(P); popupMenuItem[3]=new JMenuItem("全選(A)"); popupMenuItem[3].setMnemonic(A); popupMenu=new JPopupMenu(); for(int i=0; i

63、[i].setFont(defaultFont); for (int j=0; j

64、 (int i=0; i

65、fferedReader in=new BufferedReader(new FileReader(file)); String read; char[] readBuf=new char[20480]; int n=0; while (true) { n=in.read(readBuf, 0, 20480); if (n==-1) break; read=new String(readBuf, 0, n); ta.append(read); } in.close(); ta.s

66、etCaretPosition(0); } catch (IOException ioe) { JOptionPane.showMessageDialog(null, "I/O 錯誤:"+ioe+"。\n", "打開失敗", JOptionPane.ERROR_MESSAGE); } } public void saveFile(File file) { try { FileWriter fw_out=new FileWriter(file); PrintWriter out=new PrintWriter(new BufferedWriter(fw_out)); String outData=ta.getText(); String[] outLine; outLine=outData.spli

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!