科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道用按钮调用jsp代码怎么写?

用按钮调用jsp代码怎么写?

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

//导入JAVA类包   import java.awt.*;   import java.awt.event.*;

作者:www.soft6.com 来源:www.soft6.com 2007年9月23日

关键字: JSP Page_Load Marshal Data Pump

  • 评论
  • 分享微博
  • 分享邮件
 //导入JAVA类包

  import java.awt.*;

  import java.awt.event.*;

  import javax.swing.*;

  import java.io.*;

  class EditFile

  {

  //默认构造函数

  EditFile(){}

  //保存文件函数

  void SaveFile(String name,String str)

  {

  try

  {

  //声明文件输出对象

  FileOutputStream fos = new FileOutputStream(name);

  //输出保存文件

  fos.write(str.getBytes());

  }

  catch (IOException e)

  {

  //发生错误打印错误信息

  System.out.println(e.toString());

  }

  }

  //打开文件函数

  String OpenFile(String name)

  {

  //定义字符串str来保存文件内容

  String str=null;

  //定义计数器

  int ch=0;

  try

  {

  //声明文件输入对象

  FileInputStream fis = new FileInputStream(name);

  //遍历输入对象,将内存存储到str中

  while ((ch=fis.read())!=-1)

  {

  str=str+(char)ch;

  }

  //关闭文件对象

  fis.close();

  }

  catch (IOException e)

  {

  //发生错误打印错误信息

  System.out.println(e.toString());

  }

  //返回str

  return str;

  }

  }

  class MyMainFrame extends JFrame implements ActionListener

  {

  //文件名

  String filename=null;

  //查找字符串

  String findtxt=null;

  //替换字符串

  String replacetxt=null;

  //查找开始位

  int findtxton=-1;

  //查找结束位

  int findtxtoff=-1;

  //中间面版

  Container c=getContentPane();

  //菜单

  JMenuBar mainMb=new JMenuBar();

  //菜单按钮

  JMenu fileMenu=new JMenu("文件");

  JMenu editMenu=new JMenu("编辑");

  JMenu typeMenu=new JMenu("格式");

  JMenuItem newItem=new JMenuItem("新建");

  JMenuItem openItem=new JMenuItem("打开");

  JMenuItem saveItem=new JMenuItem("保存");

  JMenuItem saveasItem=new JMenuItem("另存为");

  JMenuItem exitItem=new JMenuItem("退出");

  JMenuItem findItem=new JMenuItem("查找");

  JMenuItem findnextItem=new JMenuItem("查找下一个");

  JMenuItem changeItem=new JMenuItem("替换");

  JCheckBoxMenuItem changelineItem=new JCheckBoxMenuItem("自动换行",false);

  //文本域

  JTextArea txt=new JTextArea();

  JTextArea txt2=new JTextArea();

  //滚动条

  JScrollPane jsp;

  //文件操作对象

  EditFile ef=new EditFile();

  //构造函数

  MyMainFrame()

  {

  //绘制界面

  c.setLayout(new BorderLayout());

  jsp= new JScrollPane(txt);

  jsp.setHorizontalScrollBarPolicy(jsp.HORIZONTAL_SCROLLBAR_AS_NEEDED);

  c.add(jsp,BorderLayout.CENTER);

  mainMb.add(fileMenu);

  fileMenu.add(newItem);

  fileMenu.add(openItem);

  fileMenu.add(saveItem);

  fileMenu.add(saveasItem);

  fileMenu.addSeparator();

  fileMenu.add(exitItem);

  mainMb.add(editMenu);

  editMenu.add(findItem);

  editMenu.add(findnextItem);

  editMenu.add(changeItem);

  mainMb.add(typeMenu);

  typeMenu.add(changelineItem);

  setJMenuBar(mainMb);

  //为菜单添加事件监听

  newItem.addActionListener(this);

  openItem.addActionListener(this);

  saveItem.addActionListener(this);

  saveasItem.addActionListener(this);

  exitItem.addActionListener(this);

  findItem.addActionListener(this);

  findnextItem.addActionListener(this);

  changeItem.addActionListener(this);

  changelineItem.addActionListener(this);

  }

  //事件处理函数

  public void actionPerformed(ActionEvent e)

  {

  //建立一个文件操作对象

  EditFile ef=new EditFile();

  //如果点击按钮为新建

  if(e.getActionCommand()=="新建")

  {

  //将文本域置为空

  txt.setText(null);

  //文件名为空

  filename=null;

  }

  //如果点击按钮为打开

  if(e.getActionCommand()=="打开")

  {

  //定义一个文件窗体

  FileDialog openDialog=new FileDialog(this,"打开文件...",FileDialog.LOAD);

  //显示窗体

  openDialog.show();

  //如果返回文件不为空

  if(openDialog.getFile()!=null)

  {

  //获得文件名

  filename=openDialog.getFile();

  //获得文件内容

  txt.setText(ef.OpenFile(openDialog.getFile()));

  }

  }

  //如果点击按钮为保存

  if(e.getActionCommand()=="保存")

  {

  //如果没有文件名

  if(filename==null)

  {

  //定义一个文件窗体

  FileDialog saveDialog=new FileDialog(this,"另存为...",FileDialog.SAVE);

  //显示窗体

  saveDialog.show();

  //如果返回文件不为空

  if(saveDialog.getFile()!=null)

  {

  //获得文件名

  filename=saveDialog.getFile();

  //保存文件

  ef.SaveFile(filename,txt.getText());

  }

  }

  else

  {

  //直接保存文件

  ef.SaveFile(filename,txt.getText());

  }

  }

  //如果点击按钮为另存为

  if(e.getActionCommand()=="另存为")

  {

  //定义一个文件窗体

  FileDialog saveDialog=new FileDialog(this,"另存为...",FileDialog.SAVE);

  //显示窗体

  saveDialog.show();

  //如果返回文件不为空

  if(saveDialog.getFile()!=null)

  {

  //获得文件名

  filename=saveDialog.getFile();

  //保存文件

  ef.SaveFile(filename,txt.getText());

  }

  }

  //如果点击按钮为推出

  if(e.getActionCommand()=="退出")

  {

  //退出

  System.exit(0);

  }

  //如果点击按钮为查找

  if(e.getActionCommand()=="查找")

  {

  //定义一个对话框

  JOptionPane inputdia=new JOptionPane();

  //定义对话框获得查找文本

  findtxt=inputdia.showInputDialog("请输入要查找的文本",null);

  //定义其实坐标

  findtxton=-1;

  findtxtoff=-1;

  //调用查找函数

  find();

  }

  //如果点击按钮为查找下一个

  if(e.getActionCommand()=="查找下一个")

  {

  //调用查找函数

  find();

  }

  //如果点击按钮为替换

  if(e.getActionCommand()=="替换")

  {

  //定义一个对话框

  JOptionPane inputdia=new JOptionPane();

  //获得查找和替换文本

  findtxt=inputdia.showInputDialog("请输入要被替换的文本",null);

  replacetxt=inputdia.showInputDialog("请输入替换后的文本",null);

  //备份内容

  txt2.setText(replacetxt);

  txt2.selectAll();

  txt2.copy();

  //调用查找函数

  find();

  //如果没找到

  if(findtxton==-1&&findtxtoff==-1)

  {

  }

  //如果找到

  else

  {

  //替换

  txt.paste();

  }

  findtxton=-1;

  findtxtoff=-1;

  }

  //如果点击按钮为自动换行

  if(e.getActionCommand()=="自动换行")

  {

  //判断当前状态

  if(changelineItem.isSelected()==true)

  {

  //设置滚动条状态

  jsp.setHorizontalScrollBarPolicy(jsp.HORIZONTAL_SCROLLBAR_NEVER);

  //设置是否换行

  txt.setLineWrap(true);

  }

  else

  {

  jsp.setHorizontalScrollBarPolicy(jsp.HORIZONTAL_SCROLLBAR_AS_NEEDED);

  txt.setLineWrap(false);

  }

  }

  }

  //查找函数

  public void find()

  {

  //定义临时字符串

  String tempstr;

  //查找文本不为空的话

  if(findtxt!=null)

  {

  try

  {

  //进行查找

  tempstr=txt.getText(findtxton+1,(txt.getText().length()-findtxton-1));

  findtxton=findtxton+1+tempstr.indexOf(findtxt);

  }

  catch(Exception e)

  {

  }

  //如果开始位有变化,即找到

  if(findtxton!=-1)

  {

  //设置结束位

  findtxtoff=findtxton+findtxt.length();

  }

  else

  {

  //否则显示没有找到

  findtxtoff=-1;

  JOptionPane.showMessageDialog(null,"没有找到");

  }

  //将找到部分进行选择

  txt.select(findtxton,findtxtoff);

  }

  }

  }

  public class TextEdit

  {

  //主函数

  public static void main(String args[])

  {

  //声明设置主窗体

  MyMainFrame f=new MyMainFrame();

  f.setSize(640,480);

  f.setTitle("文本编辑器");

  //显示主窗体

  f.setVisible(true);

  }

  }

  /*

  JTextArea的自动换行方面的问题

  --------------------------------------------------------------------------------

  如果水平滚动条设置为JSctollpane.

  ,则添加了这种JSctollpane对象的JTextArea将具备换行功能

  是这样吗?

  --------------------------------------------------------------------------------

  JTextArea.setLineWrap(boolean wrap)

  --------------------------------------------------------------------------------

  JTextArea.setLineWrap(boolean wrap)//一般的换行。

  JTextArea.setWrapStyleWorld(boolean world)//以单词边缘为界限分行

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章