运行这个application,窗体中会莫名其妙的出现无法点击的按键.

magus_yang magus_yang 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我在jdk1.3.1和jdk1.3.0_02的环境下分别编译和运行以下程序.除了自己添加的Start和Stop2个按键,在窗体的左上角会出现对点击没有反应的1个按键,可程序中并没有代码添加此按键.不知是什么原因?


//文件名 timerTest.java
//javax.swing.Timer测试,实现一个进度条
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.lang.*;

class controlPanel extends JPanel implements ActionListener
{
public controlPanel(Timer tmp)
{
t=tmp;

cmdStart=new JButton("Start");
cmdStop=new JButton("Stop");

add(cmdStart);
add(cmdStop);

cmdStart.addActionListener(this);
cmdStop.addActionListener(this);
}

public void actionPerformed(ActionEvent evt)
{
Object source=evt.getSource();
if(source==cmdStart)
t.start();
else
t.stop();
}

private JButton cmdStart;
private JButton cmdStop;
private Timer t;

}

class timerTestPanel extends JPanel implements ActionListener
{
public timerTestPanel()
{
int barLength=0;
}

public void actionPerformed(ActionEvent evt)
{
repaint();
}

public void paintComponent(Graphics g)
{
barLength++;
g.fillRect(0,0,barLength,barWidth);
}

private final int barWidth=20; //进度条的宽度.以象素为单位.
private int barLength; //进度条的长度,随时间的增加而增加.以象素为单位.

}

class timerTestFrame extends JFrame
{
public timerTestFrame()
{
setTitle("Timer(计时器)测试");
setSize(500,400);
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});

timerTestPanel myTimerTestPanel=new timerTestPanel();
delay=500;
t = new Timer(delay,myTimerTestPanel);

controlPanel myControlPanel=new controlPanel(t);

Container contentPane=getContentPane();
contentPane.add(myTimerTestPanel,"Center");
contentPane.add(myControlPanel,"South");
}
private Timer t;
private int delay; //计时器的间隔时间,以毫秒为单位.
}

public class timerTest
{
public static void main(String[] args)
{
JFrame myTimerTest=new timerTestFrame();
myTimerTest.show();
}
}
...全文

相关推荐

基于springboot+vue的摄影作品社区(项目源码)

基于springboot+vue的摄影作品社区(项目源码) 系统采用前后端分离的 B/S 架构。后端基于 Spring Boot 2.7.2 与 Java 1.8 构建,以 MyBatis-Plus 完成数据访问、PageHelper 实现分页,用 MySQL 8 存储业务数据;身份认证采用 Sa-Token 轻量级框架并整合 JWT 令牌,配合 Redis 实现图形验证码缓存与会话存储;前端使用 Vue 3 与 Naive UI 构建界面,由 Vite 完成构建,看板统计图表基于 ECharts 渲染。系统面向普通用户与管理员两类角色:用户端提供注册登录、作品上传与归档、多条件检索浏览、作品集管理、分类与标签管理、摄影圈专题、回收站、个人设置与公告查看等功能;管理端提供数据看板、用户管理与公告管理等功能。

加辣椒了吗?

Vue基于springboot的乡村生态旅游平台_k2864o48毕业设计源码数据库.zip

Vue基于springboot的乡村生态旅游平台_k2864o48毕业设计源码数据库

源码论文专家

Python3 datetime时区避坑指南

原生datetime.now()获取本地时间,不带时区属性,属于 naive时间,跨服务器比对会报错。带时区时间使用datetime.astimezone,强制绑定东八区时区。禁止手动加减8小时修改时差,夏令时更新会导致时间错误。时间计算:timedelta直接实现天数、小时增减,无需手动换算秒数。字符串解析使用strptime,格式化使用strftime,格式符号严格区分大小写,%Y四位年份、%y两位年份极易写错。线上时间异常大多源于时区不统一。 yc.ahsalar.com qsvsnks.yihucx.com tongjiang.xilaohan.com lq.aasmile.com xj.banutech.net

2601_97221268

前端开发基于history.js的HTML5与HTML4浏览器兼容方案:单页应用无刷新历史状态管理技术实现-jcbbroJ3l1792421687

内容概要:本文系统介绍了如何利用history.js实现单页应用(SPA)在HTML5c与HTML4浏览器间s草错发的无缝历史状态管理。通过封装原生History API并在不支持的浏览器中自动降级为哈希路由,history.js解决了因浏览器兼容性导致的后退按钮失效、URL混乱等问题。文章详细讲解了其核心机制,包括状态对象管理、自动模式切换(HTML5 pushState vs HTML4 哈希)、状态数据持久化以及针,对Safari、IE等浏\览器的兼容性修复方案,并提供了从入门到实战的完整示例,涵盖初始化、事,件监听、页面加载及性能优化技巧。;jcbbroJ3l1792421687 www.kfshiye.com www.wap.kfstjx.com www.kuaicai-mro.com lianyingjs.com www.kdd888.com

2601_97196180

MATLAB实现了约束感知混合水波和灰狼优化,用于作物规划。.zip

1.版本:matlab2014a/2019b/2024b 2.附赠案例数据可直接运行。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

海神之光
评论 4
收藏 已收藏
分享
返回顶部
magus_yang
Java SE 62,620 成员 307,251 内容