
正文
自定义java滚动条代码 java中怎么滚动显示字
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
JAVA 添加滚动条
我调试自定义java滚动条代码了自定义java滚动条代码,下面修改可以。 不过FlowLayout布局效果不好自定义java滚动条代码,再多自定义java滚动条代码的图片自定义java滚动条代码,它也
是一子排开。 图片数量达到上百时,机器像蜗牛一样……
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
public class demotest extends JFrame{
JScrollPane scroll;
JPanel pan; //用此pan来添加图片,然后把它放入主窗口。
public demotest(String s){
pan = new JPanel();
pan.setLayout(new FlowLayout());
scroll = new JScrollPane(pan);
scroll.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);//设置何时显示滚动条
scroll.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS); //设置何时显示滚动条
Container container = getContentPane();
container.add(scroll);
File file = new File(s);
String[] picture = file.list();
int j,k;
int[] flag = new int[picture.length];
for(k = 0,j = 0;j picture.length;j++) {
if(picture[j].toLowerCase().endsWith(".jpg") || picture[j].toLowerCase().endsWith(".jpeg") || picture[j].toLowerCase().endsWith(".gif")
|| picture[j].toLowerCase().endsWith(".png")){
k++;
//System.out.println(picture[j]);
}
}
String[] pic = new String[k];
for(k = 0,j = 0;j picture.length;j++) {
if(picture[j].toLowerCase().endsWith(".jpg") || picture[j].toLowerCase().endsWith(".jpeg") || picture[j].toLowerCase().endsWith(".gif")
|| picture[j].toLowerCase().endsWith(".png")){
pic[k] = s + "\\" + picture[j];
flag[k] = j;
k++;
}
}
for(int i = 0;i pic.length;i++){
ImageIcon a = new ImageIcon(pic[i]);
Image b = a.getImage();
JLabel label = new JLabel(new ImageIcon(b.getScaledInstance(250,170,Image.SCALE_DEFAULT)));
JLabel label2 = new JLabel(picture[flag[i]],JLabel.CENTER);
JPanel jpanel = new JPanel();
jpanel.setLayout(new BorderLayout());
jpanel.add(label,BorderLayout.CENTER);
jpanel.add(label2,BorderLayout.SOUTH);
JScrollPane c = new JScrollPane();
c.setViewportView(jpanel);
pan.add(c);
}
container.add(scroll);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(800,660);
this.setVisible(true);
}
public static void main(String[] args){
demotest demo = new demotest("D:\\media\\photos");//(自己添加路径试试程序)
}
}
相关问答
Q1: 如何用java实现文本域滚动条
需要javax.swing里面的JScrollPane组件 。
例子如下:
import javax.swing.*;
public class TestScroll {
public TestScroll(){
JFrame jf=new JFrame("test");
JPanel jp=new JPanel();
JTextArea jta=new JTextArea(8,20);
JScrollPane jsp=new JScrollPane(jta);
//新建一个滚动条界面,将文本框传入
jp.add(jsp);//注意:将滚动条界面添加到组建中。
而不是添加文本框了
jf.add(jp);
jf.pack();
jf.setLocation(300,300);
jf.setVisible(true);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new TestScroll();
}
}
Q2: java GUI 滚动条
程序如下:
import java.awt.GridLayout;
import java.awt.Toolkit;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
public class JscrollDemo extends JFrame
{
private JScrollPane btnPanel;
private JPanel panel;
private JButton button;
int btnNum = 10; //按钮数,可以是任意数
int closNum = 4;//每行按钮数,可自定义
public JscrollDemo()
{
panel = new JPanel();
setTitle("滚动条测试");
setBounds((Toolkit.getDefaultToolkit().getScreenSize().width - 500)/2,
(Toolkit.getDefaultToolkit().getScreenSize().height - 500)/2, 500, 400);
panel.setLayout(new GridLayout(0,closNum));
for(int i=0;ibtnNum;i++)
{
button = new JButton("按钮" + (i+1));
button.setSize(100, 80);
panel.add(button);
}
if((btnNum*1.0/closNum) 3)
{
btnPanel = new JScrollPane(panel,
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
}
else
{
btnPanel = new JScrollPane(panel,
JScrollPane.VERTICAL_SCROLLBAR_NEVER,JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
}
add(btnPanel);
setVisible(true);
setResizable(false);
}
public static void main(String[] args)
{
new JscrollDemo();
}
}
有问题欢迎提问,满意请采纳,谢谢!
自定义java滚动条代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java中怎么滚动显示字、自定义java滚动条代码的信息别忘了在本站进行查找喔。






