标签:mysql 布局管理 窗体显示 amp seo cal text split WAD
第十四周课程总结&实验报告(简单记事本的实现)
实验代码:
package 记事本; import java.awt.BorderLayout; import java.awt.Color; import java.awt.ComponentOrientation; import java.awt.Container; import java.awt.Dialog; import java.awt.FlowLayout; import java.awt.Font; import java.awt.GraphicsEnvironment; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.FocusEvent; import java.awt.event.FocusListener; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import java.awt.event.MouseWheelEvent; import java.awt.event.MouseWheelListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStream; import java.io.PrintStream; import java.util.Calendar; import java.util.GregorianCalendar; import java.util.Scanner; ? import javax.swing.BorderFactory; import javax.swing.ButtonGroup; import javax.swing.Icon; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JCheckBox; import javax.swing.JColorChooser; import javax.swing.JComboBox; import javax.swing.JComponent; import javax.swing.JDialog; import javax.swing.JFileChooser; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JMenuItem; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JRadioButton; import javax.swing.JScrollPane; import javax.swing.JSplitPane; import javax.swing.JTabbedPane; import javax.swing.JTextArea; import javax.swing.JTextField; import javax.swing.KeyStroke; import javax.swing.event.CaretEvent; import javax.swing.event.CaretListener; import javax.swing.filechooser.FileNameExtensionFilter; import javax.swing.text.BadLocationException; import javax.swing.undo.UndoManager; ? public class Notepad implements ActionListener , CaretListener , ItemListener , MouseWheelListener{ ????//记事本窗口 ????static int windownum=0; //记录窗口数目 ????int pos,lineOfC,col,zishu,lastzishu; //行、列、字数、新建打开文本时的字数 ????boolean ischange; //记录文本域是否被改变过 ????JFrame HL = new JFrame("无标题 - 记事本"); //声明一个窗体对象 ????Container cont =HL.getContentPane(); //得到窗体容器 ????JTextArea jta = new JTextArea(); //构造一个文本域 ????JScrollPane scr = new JScrollPane(jta, ????????????JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, ????????????JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);//滚动条组件,按需要出现 ????JMenu menuFile = new JMenu("文件(F)"); //定义JMenu组件 ????JMenu editFile = new JMenu("编辑(E)"); //定义JMenu组件 ????JMenu formatFile = new JMenu("格式(O)"); //定义JMenu组件 ????JMenu visonFile = new JMenu("查看(V)"); //定义JMenu组件 ????JMenu zoomFile = new JMenu("缩放(Z)"); //定义JMenu组件 ????JMenu helpFile = new JMenu("帮助(H)"); //定义JMenu组件 ????JMenuBar menuBar = new JMenuBar(); //定义JMenuBar ????JMenuItem newItem = new JMenuItem("新建(N)");//创建JMenuItem ????JMenuItem windowItem = new JMenuItem("新窗口(W)");//创建JMenuItem ????JMenuItem openItem = new JMenuItem("打开(O)");//创建JMenuItem ????JMenuItem exitItem = new JMenuItem("退出(E)");//创建JMenuItem ????JMenuItem typeface = new JMenuItem("字体(F)");//创建JMenuItem ????JMenuItem saveItem = new JMenuItem("保存(S)");//创建JMenuItem ????JMenuItem osaveItem = new JMenuItem("另存为(B)");//创建JMenuItem //文件 ????File file = null; //接收打开的文件 ????int result = 0; //接收操作的结果 ????JFileChooser fileChooser = new JFileChooser();//实例化文件选择框 ? public Notepad(){ ????????windownum++; ????//记事本窗口数加一 ????????ischange=true; //文本域没被改变过 ????????//记事本窗体 ????????HL.setLayout(new BorderLayout());//设置布局管理器 saveItem.addActionListener(this); //加入菜单项监听 ????????osaveItem.addActionListener(this); //加入菜单项监听 ????????openItem.addActionListener(this); //加入菜单项监听 openItem.setMnemonic(‘O‘); //设置快捷键O ????????saveItem.setMnemonic(‘S‘); //设置快捷键S ????????osaveItem.setMnemonic(‘B‘); //设置快捷键A ????????openItem.setAccelerator(KeyStroke.getKeyStroke(‘O‘, java.awt.Event.CTRL_MASK));//Ctrl+O ????????saveItem.setAccelerator(KeyStroke.getKeyStroke(‘S‘, java.awt.Event.CTRL_MASK));//Ctrl+S ????????osaveItem.setAccelerator(KeyStroke.getKeyStroke(‘B‘, java.awt.Event.CTRL_MASK));//Ctrl+A menuFile.add(saveItem); //加入菜单项 ????????menuFile.add(osaveItem); //加入菜单项 ????????menuFile.add(openItem); //加入菜单项 menuBar.add(menuFile); //加入menu HL.setJMenuBar(menuBar); //加入菜单栏 ????????HL.add(scr,BorderLayout.CENTER); //文本加入到窗体 HL.setSize(800,700); //设置窗体大小 ????????HL.setLocation(600,200); //设置窗体显示位置 ????????HL.setVisible(true); //让组件显示 ????????HL.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);//退出应用程序不做任何事情,由窗口监听进行处理 //文件 ????????fileChooser.addChoosableFileFilter(new FileNameExtensionFilter("文本文档(*.txt)", "txt"));//文件过滤器 //????????fileChooser.setFileFilter(new FileNameExtensionFilter("文本文档(*.txt)", "txt")); //同上 fileChooser.setSelectedFile(new File("*.txt")); // 设置打开文件选择框后默认输入的文件名 } public void actionPerformed(ActionEvent e) { //动作事件 if(e.getSource()==osaveItem ||e.getSource()==saveItem){ //判断触发源是否是提交保存按钮 ????????????result = fileChooser.showSaveDialog(this.frame); //显示保存文件框 ????????????}else{ ????????????????if(file!=null){ ????????????????????try{ ????????????????????????PrintStream out = new PrintStream( //实例化打印流对象 ????????????????????????????????new FileOutputStream(file)); ????????????????????????out.print(this.jta.getText()); //输出全部内容 ????????????????????????out.close(); //关闭输出流 ????????????????????????lastzishu=jta.getText().length(); //得到文本长度 ????????????????????????ischange=true; ????????????????????}catch(Exception ex){ //文件保存失败 ???????????????? //do nothing ????????????????????} ????????????????} ????????????????HL.setTitle(file.getName()+" - 记事本"); //更改HL窗口标题 ???????????????? ????????????} ????????????if(result==JFileChooser.APPROVE_OPTION){ //判断是否选择的是保存 ????????????????file = fileChooser.getSelectedFile(); //选择要保存的文件 ????????????????if(file!=null){ ????????????????????try{ ????????????????????????PrintStream out = new PrintStream( //实例化打印流对象 ????????????????????????????????new FileOutputStream(file)); ????????????????????????out.print(this.jta.getText()); //输出全部内容 ????????????????????????out.close(); //关闭输出流 ????????????????????????lastzishu=jta.getText().length(); //得到文本长度 ????????????????????????ischange=true; ????????????????????}catch(Exception ex){ //文件保存失败 ???????????????? //do nothing ????????????????????} ????????????????} ????????????????HL.setTitle(file.getName()+" - 记事本"); //更改HL窗口标题 ???????????????? ????????????} ????????}else if(e.getSource()==openItem){ ????????????if(ischange||HL.getTitle().equals("无标题 - 记事本")&&zishu==0){ ????????????????this.jta.setText(""); //清空文本中的原有内容 ????????????????fileChooser.setApproveButtonText("确定"); //定义确定按钮信息 ????????????????fileChooser.setDialogTitle("打开文件"); //设置文件选择框标题 ????????????????result = fileChooser.showOpenDialog(this.HL);//显示打开对话框 ????????????????if(result==JFileChooser.APPROVE_OPTION){ //表示选择了确定按钮 ????????????????????file = fileChooser.getSelectedFile(); //得到选择的File对象 ????????????????}else if(result==JFileChooser.CANCEL_OPTION){ //表示选择了取消按钮 ???????????????????? //do nothing ????????????????}else{//result==JFileCHooser.ERROR_OPTION //出现错误 ???????????????????? //do nothing ????????????????} ????????????????if(file!=null){ ????????????????????HL.setTitle(file.getName()+" - 记事本"); //更改HL窗口标题 ????????????????????try{ ????????????????????????Scanner scan = new Scanner( ????????????????????????????????new FileInputStream(file)); //设置输入流 ????????????????????????scan.useDelimiter("\n"); //设置换行分隔符 ????????????????????????while(scan.hasNext()){ //循环读取 ????????????????????????????this.jta.append(scan.next()); //读取内容到文本区 ????????????????????????} ????????????????????????scan.close(); //关闭 ????????????????????????lastzishu=jta.getText().length(); //得到文本长度 ????????????????????????ischange=true; ????????????????????}catch(Exception ex){ ???????????????????????? //do nothing ????????????????????} ????????????????} ???????? }else{ ???????? ????ispass=2; ???????? ????isSave.setVisible(true); //跳出isSave窗口 ????????????} ????????} } |
运行结果:
课程总结:
老师以较快的速度讲解了JDBC,所以我只是大概了解,还需要按照课本加以网络的指导完成数据库的安装和基础使用操作。
?
常用SQL操作命令符
增insert删delete改update查select ?update 更新? ?alter? 改变 ? ? ? 创建数据库? ? ? ? ? create database?数据库; 查看指定数据库? ?show create database?数据库; 查看数据库(所有的) show databases; 修改数据库编码? ? alter database?数据库 default character set? 新编码方式 collate?新编码方式_bin; 使用数据库? ? ? ? ? use db 删除数据库? ? ? ? ? drop database?数据库;(不能一次删除多个!) ? ? ? 创建表? ? ? ? ? ? ? ? ?create table 表名(列名 数据类型 [not null] [primary key],列名 数据类型 [not null],..)? 查看所有表? ? ? ? ? ?show tables 查看一个表数据? ? ?select * from 表名? ? ? ? *代表所有列? 也可以select? 列名 from 表名 删除表? ? ? ? ? ? ? ? ?drop table 表名 更改表名? ? ? ? ? ? ? rename?table 旧表名 to?新表名 ? ? ? 增加表内容 插入数据? ? ?insert? into? 表名(列名,列名...)values(值,值...) 修改列中的一条记录? ? ? update? 表名? set? ?列=值? ?where? ?列=值? ? 删除列中的一条记录? ? ? delete? from? 表名? ?where? ?列=值?? ? ? ? 增加一个列? ? ? ? ? ? ? ? ? Alter table 表名 add 列名 数据类型 删除一个列? ? ? ? ? ? ? ? ? Alter table 表名?drop column 列名? 修改一个列名? ? ? ? ? ? ? Alter table? 表名 change 列名? 新列名 数据类型; ? ? ? desc 降序排列 asc? ?升序排列 ? ? ? delete 删除记录? 结构依然存在? ?即还可以找到? ?执行后有提交过程 drop? ?结构和数据都删除? ? ?一步操作完成 |
MySQL基本数据类型
|
|
|
|
标签:mysql 布局管理 窗体显示 amp seo cal text split WAD
原文地址:https://www.cnblogs.com/hlywzj/p/11957887.html