JAVA生成投票图片 我想写一个程序,类似投票。就是根据提供的数字大小来画出进度条的长度。数字越大,进度条越长。最好能有源码。谢谢各位! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 JFreechart网上好多例子 自己google下 其实JFreechart用起来也不是很爽,样式不是很好看,如果你觉得自己NB可以自己画,自己定位坐标和勾勒图像,用BufferedImage来实现,但是很伤神。 不知道这个行不行?代码如下:import javax.swing.*;import javax.swing.event.*;//定义该类继承自JFramepublic class Test extends JFrame implements ChangeListener{ private static final long serialVersionUID = 1L; //创建JPanel容器 private JPanel jp=new JPanel(); //创建进度条与滑块 private JProgressBar jpb=new JProgressBar(0,1000); private JSlider js=new JSlider(0,1000); //创建标签数组 private JLabel[] jlArray={new JLabel("请拖动滑块"),new JLabel("进度指示条")}; public Test() { //为容器JPanel设置布局管理器 jp.setLayout(null); //设置标签的大小位置,并将标签添加进JPanel容器 for(int i=0;i<jlArray.length;i++) { jlArray[i].setBounds(20,20+i*100,80,30); jp.add(jlArray[i]); } //设置滑块的大小位置 js.setBounds(20,40,450,50); //将滑块添加进JPanel jp.add(js); //设置进度条的大小位置 jpb.setBounds(20,150,450,26); //将进度条添加进容器JPanel jp.add(jpb); //设置滑块到绘制刻度标记以及主刻度标签的状态 js.setPaintTicks(true); js.setPaintLabels(true); //分别设置主副刻度标记的间隔 js.setMajorTickSpacing(200); js.setMinorTickSpacing(40); //为滑块注册ChangeEvent事件监听器 js.addChangeListener(this); //设置进度条的初始值 jpb.setValue(500); //设置进度条将显示信息字符串 jpb.setStringPainted(true); //将JPanel添加进窗体 this.add(jp); //设置窗体的标题、大小位置以及可见性 this.setTitle("滑块与进度条示例"); this.setResizable(false); this.setBounds(100,100,500,250); this.setVisible(true); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public void stateChanged(ChangeEvent e) { //设置当滑块滑动后进度条将指示滑块的当前值 jpb.setValue(js.getValue()); } public static void main(String[] args) { //创建Sample23_3窗体对象 new Test(); }} JFreechart,方便,设置下数据源,一个图片就出来了 如果是 web 上用的话, 如果仅仅要进度条形式的话, 用 Html 的表格表示就好了 JFrame如何实现小键盘输入? JAVA问题求解 求高手解决字符串截取的问题 java绘图后菜单栏看不见,鼠标点一下才能看见 关于Graphics 把applet打包成jar了的,里面有图片,偶尔会出现读取出错,是什么问题呢? 有点低级的问题 java小问题 jad 能否带子目录反编译? jBarcodeBean怎么设置宽度 java如何生成可执行的jar文件 父类有个静态变量name,那子类可以命名一个变量叫name吗?
import javax.swing.*;
import javax.swing.event.*;
//定义该类继承自JFrame
public class Test extends JFrame implements ChangeListener
{
private static final long serialVersionUID = 1L;
//创建JPanel容器
private JPanel jp=new JPanel();
//创建进度条与滑块
private JProgressBar jpb=new JProgressBar(0,1000);
private JSlider js=new JSlider(0,1000);
//创建标签数组
private JLabel[] jlArray={new JLabel("请拖动滑块"),new JLabel("进度指示条")};
public Test()
{
//为容器JPanel设置布局管理器
jp.setLayout(null);
//设置标签的大小位置,并将标签添加进JPanel容器
for(int i=0;i<jlArray.length;i++)
{
jlArray[i].setBounds(20,20+i*100,80,30);
jp.add(jlArray[i]);
}
//设置滑块的大小位置
js.setBounds(20,40,450,50);
//将滑块添加进JPanel
jp.add(js);
//设置进度条的大小位置
jpb.setBounds(20,150,450,26);
//将进度条添加进容器JPanel
jp.add(jpb);
//设置滑块到绘制刻度标记以及主刻度标签的状态
js.setPaintTicks(true);
js.setPaintLabels(true);
//分别设置主副刻度标记的间隔
js.setMajorTickSpacing(200);
js.setMinorTickSpacing(40);
//为滑块注册ChangeEvent事件监听器
js.addChangeListener(this);
//设置进度条的初始值
jpb.setValue(500);
//设置进度条将显示信息字符串
jpb.setStringPainted(true);
//将JPanel添加进窗体
this.add(jp);
//设置窗体的标题、大小位置以及可见性
this.setTitle("滑块与进度条示例");
this.setResizable(false);
this.setBounds(100,100,500,250);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void stateChanged(ChangeEvent e)
{
//设置当滑块滑动后进度条将指示滑块的当前值
jpb.setValue(js.getValue());
}
public static void main(String[] args)
{
//创建Sample23_3窗体对象
new Test();
}
}