




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Timer.java文件package common;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.text.SimpleDateFormat;import java.util.Date;import javax.swing.Timer;import javax.swing.JTextField;public class TimeDate now ; Timer timer; JTextField lbl; public Time( JTextField l) lbl=l; timer = new Timer(1000, new ActionListener() public void actionPerformed(ActionEvent e) now = new Date(now.getTime() - 1000); SimpleDateFormat formatter = new SimpleDateFormat(HH:mm:ss); lbl.setText(formatter.format(now); ); SuppressWarnings(deprecation)public void time_start() / lbl.setText(00:00:10); now = new Date(); now.setHours(0); now.setMinutes(0); now.setSeconds(10); timer.start(); public void time_stop() timer.stop(); lbl.setText(00:00:10); public void time_restart(); timer.stop();this.time_start(); ARQ.java文件import java.awt.*;import java.awt.event.*;import javax.swing.BoxLayout;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JButton;import javax.swing.JScrollPane;import javax.swing.JTextField;import javax.swing.JPanel;import javax.swing.JRadioButton;import javax.swing.ButtonGroup;import javax.swing.JTable;import javax.swing.event.DocumentEvent;import javax.swing.event.DocumentListener;import javax.swing.table.*;import javax.swing.text.Document;import java.io.FileWriter;import java.io.IOException;import common.Time;public class ARQ extends JFrame private static final long serialVersionUID = -5437589209629747957L; private int NUM; private Time T; private JTextField status; private JButton b; private JRadioButton r; DefaultTableModel m_data; JTable m_view; FileWriter f1; FileWriter f2; FileWriter f3;public ARQ() throws IOException super(ARQ); NUM=0; Container c=getContentPane(); c.setLayout(new FlowLayout(); JPanel P=new JPanel2; P0=new JPanel(); P0.setLayout(new BoxLayout(P0,BoxLayout.X_AXIS); c.add(P0); P1=new JPanel(); c.add(P1); JPanel Q=new JPanel2; Q0=new JPanel(); Q0.setLayout(new BoxLayout(Q0,BoxLayout.Y_AXIS); P0.add(Q0); Q1=new JPanel(); Q1.setLayout(new BoxLayout(Q1,BoxLayout.Y_AXIS); P0.add(Q1); JPanel R=new JPanel4; R0=new JPanel(); R0.setLayout(new FlowLayout(FlowLayout.LEFT); Q0.add(R0); R1=new JPanel(); R1.setLayout(new FlowLayout(FlowLayout.LEFT); Q0.add(R1); R2=new JPanel(); R2.setLayout(new FlowLayout(FlowLayout.LEFT); Q0.add(R2); R3=new JPanel(); R3.setLayout(new FlowLayout(FlowLayout.CENTER); Q0.add(R3); /文件 f1=new FileWriter(f1.txt,true); f2=new FileWriter(f2.txt,true); f3=new FileWriter(f3.txt,true); /数据发送状态 JTextField s=new JTextField(新数据,7), new JTextField(重发,7) , new JTextField(倒计时,4), new JTextField(00:00:10,10), new JTextField(数据,4), new JTextField(,15) ; /数据发送住状态 status=s; status0.setEditable(false); status1.setEditable(false); status2.setEditable(false); status4.setEditable(false); status1.setEnabled(false); JLabel l=new JLabel(状态: ); R0.add(l); R0.add(status0); R1.add(status2); R1.add(status3); R2.add(status4); R2.add(status5); b=new JButton(发送); b.setEnabled(false); R3.add(b); JLabel l1=new JLabel(选择操作); Q1.add(l1); / 选择操作 JRadioButton r1=new JRadioButton(ACK), new JRadioButton(NAK), new JRadioButton(不处理), new JRadioButton(初始) ; r=r1; ButtonGroup rg=new ButtonGroup(); for(int i=0;ir.length-1;i+) Q1.add(ri); rg.add(ri); rg.add(r3); / /数据收发住状态列表 m_data=new DefaultTableModel(); m_view=new JTable(m_data); m_view.setPreferredScrollableViewportSize(new Dimension(300,230); /表格大小 m_view.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); JScrollPane sPane=new JScrollPane(m_view); P1.add(sPane); T=new Time(status3); /发送操作 b.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) T.time_start(); newtore();status0.setText(新数据);r3.setSelected(true); ); / 时间显示 监听 Document dt = status3.getDocument(); dt.addDocumentListener(new DocumentListener() public void changedUpdate(DocumentEvent e) ; public void insertUpdate(DocumentEvent e) if(status3.getText().toString().equals(00:00:00) T.time_restart(); newtore(); String s=status5.getText().toString(); mb_addRow(s, 超时,重发,); public void removeUpdate(DocumentEvent e) ; ); /输入监听 Document dt1 = status5.getDocument(); dt1.addDocumentListener(new DocumentListener() public void changedUpdate(DocumentEvent e) public void insertUpdate(DocumentEvent e) if(!status5.getText().toString().equals() b.setEnabled(true); ; public void removeUpdate(DocumentEvent e) if(status5.getText().toString().equals() b.setEnabled(false); ; ); /按钮监听 r0.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) T.time_stop(); retonew(); status5.setText(); status5.requestFocus(); ); r0.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) String s=status5.getText().toString();NUM+; mb_addRow(s, ACK,接受 +NUM,s); /NUM+ int装化为string ); r1.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) T.time_restart();newtore(); ); r1.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) String s=status5.getText().toString(); mb_addRow(s, NCK,重发,); /NUM+ int装化为string ); r2.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) T.time_restart();newtore(); ); r2.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) String s=status5.getText().toString(); mb_addRow(s, 不处理,重发,); /NUM+ int装化为string ); / /获取焦点 this.addWindowListener(new java.awt.event.WindowAdapter() public void windowActivated(java.awt.event.WindowEvent e) status5.requestFocusInWindow(); mb_addColumn(); ); /关闭文件 this.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) try f1.close();f2.close(); f3.close(); catch (IOException e1) e1.printStackTrace(); ); /重发状态public void newtore()status0.setText(重发);b.setEnabled(false);r0.setEnabled(true);r1.setEnabled(true);r2.setEnabled(true);|/新信息状态public void retonew()status0.setText(新数据);b.setEnabled(true);r0.setEnabled(false);r1.setEnabled(false);r2.setEnabled(false);/添加一行public vo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广东省汕头市潮阳一中明光学校2025-2026学年高三上学期9月月考数学试题含答案
- 安全IDE标准制定-洞察及研究
- 食品溯源平台优化-洞察及研究
- 赛事数据实时分析与可视化呈现技术-洞察及研究
- 基于拓扑优化的凹片形端头结构在有限空间内的散热效能提升方案
- 基于AI算法的减速阀故障预测与自愈控制架构创新
- 地理空间制图与智慧城市BIM系统对接的语义鸿沟修复策略
- 国际标准差异导致的出口设备适应性改造技术路径
- 可降解材料在低温环境下的性能稳定性研究
- 反射型陶瓷金卤灯在植物补光应用中的光质调控与生物效应关联性研究
- 场景速写课件讲解
- 2025广东惠州惠城区招聘社区工作站工作人员66人笔试备考题库及答案解析
- (2025秋新版)教科版三年级上册科学全册教案
- 2025年新西师大版数学三年级上册全册课件
- 食品安全总监、食品安全员考核考试测试题及答案
- 第8课 西溪湿地教学设计-2025-2026学年小学地方、校本课程浙教版(2021)人·自然·社会
- 江淮十校2026届高三第一次联考物理试卷(含答案解析)
- 网络货运行业知识培训课件
- 人体十二经络系统解析
- 1.8《天气的影响》教学设计-教科版三上科学(新教材)
- 消防系统信号传输方案
评论
0/150
提交评论