1.请问如何在Panel上把文字排在自己想要的位置上??
我现在只知道用g.drawString(arg1,arg2,arg3);这个方法....很麻烦啊,还要算好像素什么的,经常不整齐
而且另起一行很麻烦(比如排了一长列下来,又没有滚动条的情况下,多出来的文字看不到,想弄到其他空白的地方显示...不知道怎么办啊)
请问高手们还有没其他的方法用的...最好给个详细点的用法,或者所属包\类我自己去查
2.顺便问问怎么在棉板上加上滚动条??
scrollPane=new JScrollPane(panel);   //panel是一个继承于JPanel的对象
add(scrollPane,BorderLayout.CENTER);
这么用好象不对...没有滚动条显示

解决方案 »

  1.   

    举个JScrollPane的简单用法!import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;public class JScrollPane1 implements ActionListener
    {
       JScrollPane scrollPane ;
        
        public JScrollPane1()
        {
            JFrame f = new JFrame("JScrollPaneDemo");
            
            JLabel label1 = new JLabel("很长的文字,以下为乱打的:skljdfadsssssdfklj"
             + "djlkfssssssssssssssssssssssssssssssssssssssssssfds");
            JPanel panel1 = new JPanel();
            panel1.add(label1);
            scrollPane = new JScrollPane(panel1);
            
            JPanel panel2 = new JPanel(new GridLayout(3,1));
            JButton b = new JButton("显示水平滚动轴");
            b.addActionListener(this);
            panel2.add(b);
            b = new JButton("不显示水平滚动轴");
            b.addActionListener(this);
            panel2.add(b);
            b = new JButton("适时显示水平滚动轴");
            b.addActionListener(this);
            panel2.add(b);
            
            f.add(panel2,BorderLayout.WEST);
            f.add(scrollPane,BorderLayout.CENTER);
            
            f.setSize(350,220);
            f.show();
            f.addWindowListener(new WindowAdapter() {
                public void windowClosing(WindowEvent e) {
                        System.exit(0);
                }
            });
        }
        
        public void actionPerformed(ActionEvent e)
        {
            if (e.getActionCommand().equals("显示水平滚动轴"))
                scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
            if (e.getActionCommand().equals("不显示水平滚动轴"))
                scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
            if (e.getActionCommand().equals("适时显示水平滚动轴"))
                scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
            scrollPane.revalidate();
        }
        public static void main(String[] arg)
        {
            new JScrollPane1();
        }
    }
      

  2.   

    JScrollPane jScrollPane2 = new JScrollPane(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
    JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
    jScrollPane2.getViewport().add(panel);
    这样就行了!
    JScrollPane.VERTICAL_SCROLLBAR_ALWAYS
    JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS
    这两个参数可以改,
    你可以设成总是显示,或有需要(HORIZONTAL_SCROLLBAR_AS_NEEDED)都得!
    我是新手来的,如果答得好请给分,穷人没分不能问问题很惨的!
      

  3.   

    一楼的
    GUI好强啊
    我每次做东西老是GUI的东西站了满长时间
    有机会想你讨教