当前位置:编程学习 > JAVA >>

怎么做 才能让 这些个 按钮不 会滑出界面???JScorllPane




大侠  们  请假 怎么 设置 不会出现 如图 这种现象  都 滑出界面了。。。。 --------------------编程问答-------------------- --------------------编程问答-------------------- 空布局,像素坐标定位!仅供参考 --------------------编程问答-------------------- 你这个是 JScrollPane ?
你怎么用的?
怎么看起来似乎有点不对啊

滚动条的位置大小有问题
楼主发代码看看呢 --------------------编程问答-------------------- 是 JScrollPane 啊   。我发下代码你们看看。。。。 --------------------编程问答-------------------- package com.tarena.miniqq.ui;

import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Color;
import java.awt.Component;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.ArrayList;
import java.util.List;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.border.Border;
import javax.swing.border.EmptyBorder;

/**
 *好友列表
 * 
 * @author tarena
 * 
 */
public class FriendList extends BaseFrame {
private JLabel listName;
List<Button> friendBt = new ArrayList<Button>();
private int size;

public List<Button> getFriendBt() {
return friendBt;
}

public JLabel getListName() {
return listName;
}

public FriendList(int size) {
this.size = size;
init();
}

private void init() {
setTitle("濂藉弸淇℃伅鍒楄〃");
setSize(210, 400);
setLocation(220, 0);
setResizable(false);
super.addImage(0, -15, "friends.png");
setContentPane(createContentPane());
setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
// TODO
clientContext.onCloseFriendListAction();
}
});
}

private Container createContentPane() {
JPanel p = new JPanel(new BorderLayout());
p.add(BorderLayout.NORTH, createLabelPane());
p.add(BorderLayout.CENTER, create1Pane());
return p;
}

private Component create1Pane() {
JPanel p=new JPanel(new BorderLayout());
p.add(BorderLayout.CENTER,createPane());
return p;
}

private Component createLabelPane() {
JPanel p = new JPanel(new BorderLayout());
// p.setBounds(0, 0, 210, 30);
p.add(BorderLayout.SOUTH,createJLPane());
return p;
}

private Component createJLPane() {
JPanel p=new JPanel();
JLabel jl = new JLabel("鎴戠殑濂藉弸");
jl.setFont(new Font("", Font.BOLD, 15));
p.add(jl,JLabel.CENTER);
return p;
}

private Component createPane() {
JScrollPane js = new JScrollPane();
js.setPreferredSize(new Dimension(190,300));
js.setBorder(new EmptyBorder(20,30,20,25));
js.getViewport().add(createFrientListPane(size));
return js;
}

private Component createFrientListPane(int size) {
JPanel p = new JPanel(new GridLayout(size, 1, 0, 10));
p.setBounds(0, 0, 200, 200);
for (int i = 0; i < size; i++) {
final Button button = new Button();
friendBt.add(button);
p.add(button);
button.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {
clientContext.onFriendAction(button.getLabel());
}
});
}
return p;
}

}
--------------------编程问答-------------------- 比较乱  你看下 咋个设置 。谢谢 哈。
补充:Java ,  Java相关
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,