导航:首页 > 编程语言 > javaswing圆形进度条

javaswing圆形进度条

发布时间:2024-11-20 03:55:15

java中如何实现进度条效果

核心代码如下:
timer = new Timer(DEFAULT_TIMEOUT, new ActionListener() {
public void actionPerformed(ActionEvent evt) {
if (!uploadThread.isAlive()) {
timer.stop();
boolean isSuccess = false;
// StringBuffer serverOutMsg =
// uploadThread.getServerOutput();
if (uploadThread.getServerOutput().length() == 0) {
JOptionPane.showMessageDialog(JUploadPanel.this, "上传完毕");
filePanel.removeAll();
isSuccess = true;
} else {
// JOptionPane.showMessageDialog(JUploadPanel.this, "上传" + uploadThread.getTotalFileCount() + "个文件,失败" + uploadThread.getFailureCount() + "个,请查看日志。");
JOptionPane.showMessageDialog(JUploadPanel.this, "上传失败,请重新登录后继续上传。");
}

uploadThread.close();
uploadThread = null;
// set progress bar to 0%.
progress.setString(null);
progress.setValue(0);
// set stop button disabled
stop.setEnabled(false);
if (!isSuccess) {
remove.setEnabled(true);
removeAll.setEnabled(true);
upload.setEnabled(true);
}
browse.setEnabled(true);
}
}
});
timer.start();
基本上就是线程控制progress.setValue,value值就是进度条

⑵ Java中如何实现进度条效果

代码如下:import java.awt.Color; import java.awt.Toolkit; import javax.swing.ImageIcon; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JProgressBar; import javax.swing.JWindow; @SuppressWarnings("serial") public class Demo extends JWindow implements Runnable { // 定义加载窗口大小 public static final int LOAD_WIDTH = 455; public static final int LOAD_HEIGHT = 295; // 获取屏幕窗口大小 public static final int WIDTH = Toolkit.getDefaultToolkit().getScreenSize().width; public static final int HEIGHT = Toolkit.getDefaultToolkit().getScreenSize().height; // 定义进度条组件 public JProgressBar progressbar; // 定义标签组件 public JLabel label; // 构造函数 public Demo() { // 创建标签,并在标签上放置一张图片 label = new JLabel(new ImageIcon("images/background.jpg")); label.setBounds(0, 0, LOAD_WIDTH, LOAD_HEIGHT - 15); // 创建进度条 progressbar = new JProgressBar(); // 显示当前进度值信息 progressbar.setStringPainted(true); // 设置进度条边框不显示 progressbar.setBorderPainted(false); // 设置进度条的前景色 progressbar.setForeground(new Color(0, 210, 40)); // 设置进度条的背景色 progressbar.setBackground(new Color(188, 190, 194)); progressbar.setBounds(0, LOAD_HEIGHT - 15, LOAD_WIDTH, 15); // 添加组件 this.add(label); this.add(progressbar); // 设置布局为空 this.setLayout(null); // 设置窗口初始位置 this.setLocation((WIDTH - LOAD_WIDTH) / 2, (HEIGHT - LOAD_HEIGHT) / 2); // 设置窗口大小 this.setSize(LOAD_WIDTH, LOAD_HEIGHT); // 设置窗口显示 this.setVisible(true); } public static void main(String[] args) { Demo t = new Demo(); new Thread(t).start(); } @Override public void run() { for (int i = 0; i < 100; i++) { try { Thread.sleep(100); } catch (InterruptedException e) { e.printStackTrace(); } progressbar.setValue(i); } JOptionPane.showMessageDialog(this, "加载完成"); this.dispose(); } } 效果图:

⑶ JavaGUI——Java图形用户界面

GUI(Graphical User Interface,图形用户界面)是计算机操作界面的直观形式,相较于命令行界面,图形界面更易于用户理解与操作。

Java图形界面主要由AWT(Abstract Windows ToolKit,抽象窗口工具包)和Swing(AWT的扩展)两个核心库组成。AWT依赖于本地系统方法实现功能,属重量级控件,而Swing则完全由Java实现,增强了移植性,属轻量级组件。

容器是组件的子类,用于将组件组织为整体结构。容器包括窗口(JFrame)、弹窗(JDialog)、面板(JPanel)、滚动面板(JScrollPanel)等四种类型。窗口(JFrame)为具有标题栏的框架,可独立存在。弹窗(JDialog)则为自定义或标准对话框,JOptionPane提供快速创建对话框的静态方法。

面板作为容器的一种,不能独立存在,只能置于窗口中。面板用于容纳其他组件,实现特定布局。滚动面板(JScrollPane)支持水平和垂直滚动视图,文本区域、表格等组件可使用其包裹以实现滚动显示。分隔面板(JSplitPane)将两个组件通过水平/垂直分隔条分别左右或上下显示,并可调整分隔区域大小。选项卡面板(JTabbedPane)允许用户通过点击标题在一组组件间切换显示。

布局管理器控制组件在容器中的排列方式。流式布局(FlowLayout)按水平方向依次排列组件。网格布局(GridLayout)以矩形网格形式布置组件,一个网格中放置一个组件,组件自动撑满网格。边界布局(BorderLayout)将容器分为5个区域,每个区域放置一个组件。

基本组件如标签(JLabel)、按钮列表(JComboBox)、列表框(JList)、文本框(JTextField)、密码框(JPasswordField)、文本区域(JTextArea)、进度条(JProgressBar)、滑块(JSlider)等,用于展示文本、图片、文本输入与选择、进度显示等。复杂组件包括文件选取器(JFileChooser)、颜色选取器(JColorChooser)、菜单栏(JMenuBar)、工具栏(JToolBar)等,为用户提供了更多功能。

事件监听包括鼠标监听、键盘监听、窗口监听等。鼠标监听事件用于响应鼠标操作,键盘监听事件用于监听按键输入,窗口监听事件则关注窗口的激活与关闭。

阅读全文

与javaswing圆形进度条相关的资料

热点内容
网络交友有哪些优势 浏览:183
如何从数据切入私域 浏览:76
微信公众号设计需求分析报告 浏览:646
glc怎么创建配置文件 浏览:167
怎么学计算编程 浏览:900
ai编程和艺术哪个好 浏览:24
淘宝跑腿的app叫什么 浏览:292
布吉网站建设要多少钱 浏览:501
iphone4s突然掉电 浏览:650
iphone4s手机如何杀毒 浏览:65
编程里trace是什么意思 浏览:434
苹果平板电脑文件管理在哪 浏览:43
虹口区文件柜多少钱 浏览:641
日记账下载什么app 浏览:925
linux复制重命名文件 浏览:406
hl编程怎么用 浏览:141
phpforeach数据库 浏览:16
手机打开js文件 浏览:309
手机程序一键退出 浏览:269
苹果平板导出数据存放在哪里了 浏览:261

友情链接