① 在java的圖形化界面中怎麼在文本框上添加滾動條,這是我的程序怎麼沒有
JTextArea txaDisplay = new JTextArea();
JScrollPane scroll = new JScrollPane(txaDisplay);
//把定義的JTextArea放到JScrollPane裡面去
//分別設置水平和垂直滾動條自動出現
scroll.setHorizontalScrollBarPolicy(
JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
scroll.setVerticalScrollBarPolicy(
JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
//分別設置水平和垂直滾動條總是出現
scroll.setHorizontalScrollBarPolicy(
JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
scroll.setVerticalScrollBarPolicy(
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
//分別設置水平和垂直滾動條總是隱藏scroll.setHorizontalScrollBarPolicy(
JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
scroll.setVerticalScrollBarPolicy(
JScrollPane.VERTICAL_SCROLLBAR_NEVER);
② java局部panel添加滾動條
把panel放到ScrollPane中,設置ScrollPane的位置及大小,再通過panel的setPreferredSize設置panel大小即可,當設置的大小超過ScrollPane大小時,ScrollPane就會出現滾動條,注意ScrollPane採用默認LayoutManager即可,不用去設置LayoutManager
③ JAVA 添加滾動條
我調試了,下面修改可以。 不過FlowLayout布局效果不好,再多的圖片,它也
是一子排開。 圖片數量達到上百時,機器像蝸牛一樣……
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");//(自己添加路徑試試程序)
}
}
④ Java swing鎬庝箞鎼炲嚭婊氬姩鏉
澧炲姞婊氬姩鏉$殑鏂規硶錛
//鍒嗗埆璁劇疆姘村鉤鍜屽瀭鐩存粴鍔ㄦ潯鎬繪槸鍑虹幇
scroll.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
scroll.setVerticalScrollBarPolicy( JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
//鍒嗗埆璁劇疆姘村鉤鍜屽瀭鐩存粴鍔ㄦ潯鑷鍔ㄥ嚭鐜
//scroll.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
//scroll.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
⑤ java如何向下拉列表添加滾動條
Java中可以使用JComboBox,每一塊會根據您的內容長度設置滾動條,如果您想把所有的都在一個滾動條里,您可以將其寫在一個塊里,然後注意控制項高度一定要寫成固定的。
JComboBox組件把編輯工作交給實現ComboBoxEdit介面的一個對象來處理。列表支持三個選取模式,並把選取工作實現ListSelectionModel介面的一個對象來處理。組合框在一個時刻只有一個可選取的項,而且選取工作由組合框模型來處理。另一方面,組合框支持鍵選取,即在某項上按下一下鍵就可以選取這個項,但列表不能這樣做。