就是在Label中画一条直线,以前我用的是虚线jLabel.setText("------------------------");,现在要改成实线怎么做?已知画实线是drawLine(int x1, int y1, int x2, int y2)

解决方案 »

  1.   

    class MyLabel extends JLabel{
      public void paintComponent(Graphics g) {
        g.drawLine(x1, y1, x2, y2);
        super.paintComponent(g);
      }
    }
      

  2.   

    写清楚一点好吗?比如在下面的代码中,要将jLabel1.setText("-------------");中的虚线改成实线。
    public class NewJFrame1 extends javax.swing.JFrame {
         public NewJFrame1() {
            initComponents();
         }
         private void initComponents() {
         jLabel1 = new javax.swing.JLabel();
         setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
         jLabel1.setText("-------------");
         org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
         getContentPane().setLayout(layout);
         layout.setHorizontalGroup(
         layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(layout.createSequentialGroup().add(137, 137, 137)
              .add(jLabel1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 179, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).addContainerGap(858, Short.MAX_VALUE)));
            layout.setVerticalGroup(
                layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(layout.createSequentialGroup()
                    .add(181, 181, 181).add(jLabel1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 34, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).addContainerGap(625, Short.MAX_VALUE)));
            pack();
          }
            public static void main(String args[]) {
            java.awt.EventQueue.invokeLater(new Runnable() {
                public void run() {
                    new NewJFrame1().setVisible(true);
                }
            });
        }
        private javax.swing.JLabel jLabel1;   
    }
      

  3.   

    自定义一个类继承JLabel类 并实现paintComponent()方法 在里面画线
      

  4.   

    用HTML的那个画线的方法set进去就可以了
    我用过的