Avatar billede renerr Nybegynder
22. januar 2005 - 15:58 Der er 2 kommentarer

Gridlayout, et felts indhold

Hvis man har et Gridlayout med f.eks. 5 x 5 felter, hvordan finder man så ud af hvad der er i f.eks. 3,4 altså tredje kollone og fjerde række?
Avatar billede _carsten Nybegynder
22. januar 2005 - 17:22 #1
Du kan bruge getComponent();

int row = -1 + 5;
int col = -1 + 2;
getComponent((row * 5) + col );


--->finder man så ud af hvad der er i f.eks. 3,4 altså tredje kollone og fjerde række?
Skal jo være 2,3 hvis første kolonne skal tælles som nummer 1.
Avatar billede _carsten Nybegynder
22. januar 2005 - 19:28 #2
Er du med på ideen ???????


import javax.swing.JLabel;

public class TestGrid extends javax.swing.JFrame {
   

    public TestGrid() {
        initComponents();
    }
   

    private void initComponents() {                         
        jButton1 = new javax.swing.JButton();
        jPanel1 = new javax.swing.JPanel();
        jLabel1 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        jLabel4 = new javax.swing.JLabel();
        jLabel5 = new javax.swing.JLabel();
        jLabel6 = new javax.swing.JLabel();
        jLabel7 = new javax.swing.JLabel();
        jLabel8 = new javax.swing.JLabel();
        jLabel9 = new javax.swing.JLabel();
        jLabel10 = new javax.swing.JLabel();
        jLabel11 = new javax.swing.JLabel();
        jLabel12 = new javax.swing.JLabel();
        jLabel13 = new javax.swing.JLabel();
        jLabel14 = new javax.swing.JLabel();
        jLabel15 = new javax.swing.JLabel();
        jLabel16 = new javax.swing.JLabel();
        jLabel17 = new javax.swing.JLabel();
        jLabel18 = new javax.swing.JLabel();
        jLabel19 = new javax.swing.JLabel();
        jLabel20 = new javax.swing.JLabel();
        jLabel21 = new javax.swing.JLabel();
        jLabel22 = new javax.swing.JLabel();
        jLabel23 = new javax.swing.JLabel();
        jLabel24 = new javax.swing.JLabel();
        jLabel25 = new javax.swing.JLabel();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        jButton1.setText("jButton1");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                comp(evt);
            }
        });

        getContentPane().add(jButton1, java.awt.BorderLayout.NORTH);

        jPanel1.setLayout(new java.awt.GridLayout(5, 5));

        jLabel1.setText("jLabel1");
        jPanel1.add(jLabel1);

        jLabel2.setText("jLabel2");
        jPanel1.add(jLabel2);

        jLabel3.setText("jLabel3");
        jPanel1.add(jLabel3);

        jLabel4.setText("jLabel4");
        jPanel1.add(jLabel4);

        jLabel5.setText("jLabel5");
        jPanel1.add(jLabel5);

        jLabel6.setText("jLabel6");
        jPanel1.add(jLabel6);

        jLabel7.setText("jLabel7");
        jPanel1.add(jLabel7);

        jLabel8.setText("jLabel8");
        jPanel1.add(jLabel8);

        jLabel9.setText("jLabel9");
        jPanel1.add(jLabel9);

        jLabel10.setText("jLabel10");
        jPanel1.add(jLabel10);

        jLabel11.setText("jLabel11");
        jPanel1.add(jLabel11);

        jLabel12.setText("jLabel12");
        jPanel1.add(jLabel12);

        jLabel13.setText("jLabel13");
        jPanel1.add(jLabel13);

        jLabel14.setText("jLabel14");
        jPanel1.add(jLabel14);

        jLabel15.setText("jLabel15");
        jPanel1.add(jLabel15);

        jLabel16.setText("jLabel16");
        jPanel1.add(jLabel16);

        jLabel17.setText("jLabel17");
        jPanel1.add(jLabel17);

        jLabel18.setText("jLabel18");
        jPanel1.add(jLabel18);

        jLabel19.setText("jLabel19");
        jPanel1.add(jLabel19);

        jLabel20.setText("jLabel20");
        jPanel1.add(jLabel20);

        jLabel21.setText("jLabel21");
        jPanel1.add(jLabel21);

        jLabel22.setText("jLabel22");
        jPanel1.add(jLabel22);

        jLabel23.setText("jLabel23");
        jPanel1.add(jLabel23);

        jLabel24.setText("jLabel24");
        jPanel1.add(jLabel24);

        jLabel25.setText("jLabel25");
        jPanel1.add(jLabel25);

        getContentPane().add(jPanel1, java.awt.BorderLayout.CENTER);

        pack();
    }                       

    private void comp(java.awt.event.ActionEvent evt) {                     
        int row = -1 + 5;
        int col = -1 + 2;
        JLabel lab = (JLabel)jPanel1.getComponent((row * 5) + col );
        System.out.println( lab.getText());
    }                   

    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new TestGrid().setVisible(true);
            }
        });
    }
   
    // Variables declaration - do not modify                   
    private javax.swing.JButton jButton1;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel10;
    private javax.swing.JLabel jLabel11;
    private javax.swing.JLabel jLabel12;
    private javax.swing.JLabel jLabel13;
    private javax.swing.JLabel jLabel14;
    private javax.swing.JLabel jLabel15;
    private javax.swing.JLabel jLabel16;
    private javax.swing.JLabel jLabel17;
    private javax.swing.JLabel jLabel18;
    private javax.swing.JLabel jLabel19;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel20;
    private javax.swing.JLabel jLabel21;
    private javax.swing.JLabel jLabel22;
    private javax.swing.JLabel jLabel23;
    private javax.swing.JLabel jLabel24;
    private javax.swing.JLabel jLabel25;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel6;
    private javax.swing.JLabel jLabel7;
    private javax.swing.JLabel jLabel8;
    private javax.swing.JLabel jLabel9;
    private javax.swing.JPanel jPanel1; 
}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester