java 重绘_java进度条重绘要怎么编写?
进度条相信小伙伴们都知道,一些游戏在加载时经常能看见,在编写进度条时有时候因为一些不可抗拒原因出错就需要重绘进度条,下面跟小编看看如何重绘。
代码如下:package luojing;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.Timer;
import java.util.TimerTask;
public class NewClass
{
static JProgressBar jpb = null;
static JButton jb = null;
public static void main(String args[])
{
JFrame frm = new JFrame();
Container contentPane = frm.getContentPane();
jpb = new JProgressBar();
jpb.setOrientation(JProgressBar.HORIZONTAL);
jpb.setMaximum(100);
jpb.setMinimum(0);
jpb.setValue(0);
jpb.setStringPainted(true);
jpb.setPreferredSize(new Dimension(400, 50));
contentPane.add(jpb, BorderLayout.CENTER);
jb = new JButton("开始");
jb.addActionListener(new Change());
contentPane.add(jb, BorderLayout.SOUTH);
frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frm.pack();
frm.setTitle("进度条");
// 窗口居中
frm.setLocation((Toolkit.getDefaultToolkit()
.getScreenSize()
.width - frm.getSize()
.width) / 2, (Toolkit.getDefaultToolkit()
.getScreenSize()
.height - frm.getSize()
.height) / 2);
frm.setVisible(true);
}
static class Change implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
Timer timer = new Timer();
timer.schedule(new mytask(jpb), 100, 100);
jb.setEnabled(false);
// 下面这种方法达不到预定效果,因为线程sleep()时用户界面也不会响应,只会在actionPerformde()执行结束后才会响应
/*
* for (int i = 0; i <= 100; i++) { try { Thread.sleep(100);
*
* jpb.setValue(i);
*
* } catch (InterruptedException e1) { e1.printStackTrace(); }
*
* }
*/
// 采用新建一个一个线程来执行累加可以达到预定的效果
/*
* new Thread(new Runnable() { public void run() { for (int i = 1; i
* <=100; i++) { try { Thread.sleep(100); jpb.setValue(i); } catch
* (InterruptedException ie) { } } } }).start();
*/
}
}
}
class mytask extends TimerTask
{
JProgressBar jpb = null;
int i = 1;
public mytask(JProgressBar jp)
{
this.jpb = jp;
}
public void run()
{
this.jpb.setValue(i++);
}
}
以上就是本篇文章的所有内容,更多详细java常见问题及解决方法敬请关注奇Q工具网了解详情。
推荐阅读:
java 重绘_java进度条重绘要怎么编写?相关推荐
- MFC 进度条自绘按钮类
MFC 进度条自绘按钮类 废话不多说 先看效果 看看怎么调用 这当然先包含砸门的进度条绘图类 #include "MySlider.h"MySlider m_lider;//防在D ...
- MFC进度条重绘 (CProgressCtrl)
MFC进度条(CProgressCtrl) 重绘 先看一张图: 新建一个 继承自 CProgressCtrl 的类,然后添加 OnPaint 消息处理函数,此函数代码如下: void CNewProg ...
- java 进度条 不更新_java 进度条不能刷新解决方案 (已更新一次)
java期末考试都考完了,实验课却还没完,课程设计也还没开始做,本来打算把最后两次实验尽快做完,然后好好做课设,(我早就想写的坦克大战,过几天写好了,也肯定要整理发布出来).可却被多线程一题给坑了,题 ...
- Java 数据库进度条_java进度条
练习JProgressBar结合Timer使用. 代码如下: package luojing; import java.awt.*; import java.awt.event.*; import j ...
- java 进度条时间设置_java进度条
练习JProgressBar结合Timer使用. 代码如下: package luojing; import java.awt.*; import java.awt.event.*; import j ...
- vbs获取程序窗体句柄_[VBA][高阶应用][类模块]自绘窗体进度条类cProgressBar.cls
纯API自绘窗体的进度条类,废话少说,直接上代码 这个进度条类的调用方式: Private Declare Function FindWindow Lib "user32.dll" ...
- 16、Java Swing JProgressBar:进度条组件
**进度条(JProgressBar)**是一种以可视化形式显示某些任务进度的组件. JProgressBar 类实现了一个用于为长时间的操作提供可视化指示器的 GUI 进度条.在任务的完成进度中,进 ...
- Java Swing 实现loading进度条加载效果
前言必读 读者手册(必读)_云边的快乐猫的博客-CSDN博客 前言: 这个可以用来做一些页面的加载进度条还是很不错的,起到美观的作用,一些代码内容也是根据别的大佬拿来修改完成.这是在id ...
- java连连看(GUI有进度条加背景音乐)
<连连看>,看起来本来就傻乎乎的游戏,复习周的我,想不到手痒痒,竟然也连续玩了几天.玩的时候才发觉,原来看起来傻傻的游戏,要玩好,还是很困难的.(承认我眼神不好吧),话说平兄啊 ...
最新文章
- Javascript之学习笔记每日更新
- python大于等于怎么表示_如何在rejectdb中应用python lambda表达式中的大于等于
- 绝了!这款工具让 SpringBoot 不再需要Controller、Service、DAO、Mapper!
- Qt 多线程TCP服务端一键关闭所有客户端
- (二)git常用基本概念
- Linux(centos)的常用基本命令
- linux命令积累之egrep命令
- 前端学习(672):if-else
- bzoj1934: [Shoi2007]Vote 善意的投票(最小割)
- 综合演练 对象数组 对象的方法 我们9203班 0912
- 《RHEL6.3 FTP服务器虚拟用户的配置(含图)》——如此简单
- configserver配置中心三种配置方式
- 搜狗输入法纯净_最新PC端搜狗输入法,无广告弹窗纯净版
- UML统一建模语言(UML类图)
- 01,HelloWorld入门程序
- 《大道至简》第二章(是懒人创造了方法)读后感
- 思维导图工具XMind
- android 记录触屏坐标,android触摸屏坐标手工校准/调整成功
- Oracle数据库创建定时任务
- 2022/9/17——基于stm32mp157的按键中断实验