JScrollPane 问题,求助达人!

tof214 2007-04-17 06:24:24
frame = new JFrame();
frame.setTitle("Market Tool");
//frame.setResizable(false);
frame.setBounds(100, 100, 769, 528);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

//Dimension d=Toolkit.getDefaultToolkit().getScreenSize();


final JSplitPane splitPane = new JSplitPane();
splitPane.setResizeWeight(0.3);
splitPane.disable();
frame.getContentPane().add(splitPane, BorderLayout.CENTER);

list = new JList();
splitPane.setLeftComponent(list);

final JScrollPane scrollPane = new JScrollPane();
splitPane.setRightComponent(scrollPane);

final JPanel panel = new JPanel();
panel.setLayout(null);
scrollPane.setViewportView(panel);

final JButton button = new JButton();
button.setText("New JButton");
button.setBounds(148, 407, 184, 137);
panel.add(button);

为何无法显示下拉框以便显示完整的按钮?
Dimension d=Toolkit.getDefaultToolkit().getScreenSize();
panel.setPreferredSize(d);
加上这两句倒是可以显示整个按钮了,可是显示的panel太大,并不是我所需要的panel .求助达人!
...全文
219 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
insiku 2007-04-18
  • 打赏
  • 举报
回复
final JPanel panel = new JPanel();
panel.setLayout(null);

你的panel 设置成null了 换个别的 就有滚动条了
ziglet107 2007-04-18
  • 打赏
  • 举报
回复
int w = scrollPane.getWidth();
int h = scrollPane.getHeight();
panel.setSize(w, h);
mq612 2007-04-17
  • 打赏
  • 举报
回复
Dimension d=Toolkit.getDefaultToolkit().getScreenSize();
panel.setPreferredSize(d);
你上面这两句是把JPanel的默认Size设置成了屏幕大小,如果觉得太大,设小一点。
panel.setPreferredSize(new Dimension(200, 500)); // 数字根据情况自己设定
tof214 2007-04-17
  • 打赏
  • 举报
回复
所以需要下拉框出来呀,现在的问题是下拉框出不来,我想试试看在超出容器大小的情况下有没有下拉框拖拽。
Dimension d=Toolkit.getDefaultToolkit().getScreenSize();
panel.setPreferredSize(d);
加上这个是可以出来了,但是显示的是整个屏幕的大小。
insiku 2007-04-17
  • 打赏
  • 举报
回复
frame.setBounds(100, 100, 769, 528);
button.setBounds(148, 407, 184, 137);

你自己都设置了 都不明白为什么?
一个JAVA的学生资源管理系统 public class cxxj extends JFrame { Statement ps; ResultSet rs; Connection con; String url; JScrollPane jScrollPane1 = new JScrollPane(); Object[][] rowData = new Object[10][9]; String[] columnNames = { "学号", "姓名", "性别", "出生日期", "班号", "联系电话", "入校日期", "家庭住址", "备注"}; JTable jTable1 = new JTable(rowData, columnNames); JButton cancel = new JButton(); JButton ok = new JButton(); JTextField input = new JTextField(); ButtonGroup buttonGroup2 = new ButtonGroup(); JRadioButton xh = new JRadioButton(); JRadioButton xm = new JRadioButton(); JRadioButton bh = new JRadioButton(); public cxxj() { try { jbInit(); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { cxxj cxxj = new cxxj(); } private void jbInit() throws Exception { this.setLocale(java.util.Locale.getDefault()); this.getContentPane().setLayout(null); jScrollPane1.setBounds(new Rectangle(6, 0, 780, 400)); ok.setToolTipText("直接点击确定,可查询全部学生信息"); cancel.setBounds(new Rectangle(578, 412, 85, 30)); cancel.setFont(new java.awt.Font("Dialog", 0, 15)); cancel.setText("取 消"); cancel.addActionListener(new cxxj_cancel_actionAdapter(this)); ok.setBounds(new Rectangle(465, 412, 85, 34)); ok.setFont(new java.awt.Font("Dialog", 0, 15)); ok.setText("确 定"); ok.addActionListener(new cxxj_ok_actionAdapter(this)); input.setFont(new java.awt.Font("Dialog", 0, 15)); input.setText(""); input.setBounds(new Rectangle(291, 410, 124, 31)); xh.setFont(new java.awt.Font("Dialog", 0, 15)); xh.setRolloverEnabled(false); xh.setText("按学号"); xh.setBounds(new Rectangle(20, 417, 74, 34)); xm.setBounds(new Rectangle(95, 417, 74, 34)); xm.setText("按姓名"); xm.setRolloverEnabled(false); xm.setFont(new java.awt.Font("Dialog", 0, 15)); bh.setBounds(new Rectangle(174, 418, 74, 34)); bh.setText("按班号"); bh.setRolloverEnabled(false); bh.setFont(new java.awt.Font("Dialog", 0, 15)); this.getContentPane().add(jScrollPane1, null);

62,616

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧