高级组件——进度条 JProgressBar
JProgressBar pro=new JProgressBar();
pro.setIndeterminate(boolean); 设置不确定性
false,确定的进度条(显示进度,常用)。
true,不确定的进度条(一般用来提示等待,不常用)。
两种信息类型:
pro.setString("提示信息"); 文本信息
pro.setValue(100); 百分数信息,当前进度100%
信息是否显示(信息被绘制出)
pro.setStringPainted(boolean);
import javax.swing.*; import java.awt.*; public class Demo extends JFrame { JProgressBar pro3;//成员变量,自定义线程中需要使用 public Demo(){ setTitle("使用进度条"); setBounds(100,100,300,200); setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); Container c=getContentPane(); c.setLayout(new GridLayout(3,1,10,10)); JProgressBar pro1=new JProgressBar(); pro1.setIndeterminate(true);//不确定进度条 pro1.setStringPainted(true);//显示信息 pro1.setString("请耐心等待,连接中...");//提示信息 c.add(pro1); JProgressBar pro2=new JProgressBar(); pro2.setIndeterminate(false);//确定的进度条 pro2.setValue(20);//当前进度 pro2.setStringPainted(true);//信息被显示,20% c.add(pro2); pro3=new JProgressBar(); pro3.setStringPainted(true);//信息被显示 c.add(pro3); MyThread progress=new MyThread();//线程对象 progress.start();//启动线程 } class MyThread extends Thread{//自定义线程,实现进度的不断变化 @Override public void run() { for (int i=0;i<=100;i++){ pro3.setValue(i);//让进度不断变化 try { Thread.sleep(100); } catch (InterruptedException e) { e.printStackTrace(); } } } } public static void main(String[] args) { Demo frame=new Demo(); frame.setVisible(true); } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?