Page 1 of 11 123 ... LastLast
Results 1 to 20 of 219
Like Tree22Likes

Thread: How to do this?

  1. #1
    Tawi is offline Senior Member
    Join Date
    Feb 2013
    Posts
    118
    Rep Power
    0

    Default How to do this?

    I have 100 JTextFields. I divided them in to 4 groups. Each group consists of 25 JTextFields.

    I want to show 0 - 24 JTextFields if some of the JTextFields from 0 - 24 are empty,
    I want to show 25 - 49 JTextFields if some of the JTextFields from 25 - 49 are empty and so on.

    The question is how?
    Last edited by Tawi; 02-23-2014 at 03:18 PM.

  2. #2
    JosAH's Avatar
    JosAH is offline Moderator
    Join Date
    Sep 2008
    Location
    Voorschoten, the Netherlands
    Posts
    13,519
    Blog Entries
    7
    Rep Power
    20

    Default Re: How to do this?

    Stick them in a collection of some sort (even simple arrays will do) and check each and evert JTextField; if one of them is empty, display the group to which the JTextField belongs. It involves just a little programming and looping over an array ...

    kind regards,

    Jos
    cenosillicaphobia: the fear for an empty beer glass

  3. #3
    Tawi is offline Senior Member
    Join Date
    Feb 2013
    Posts
    118
    Rep Power
    0

    Default Re: How to do this?

    Quote Originally Posted by JosAH View Post
    Stick them in a collection of some sort (even simple arrays will do) and check each and evert JTextField; if one of them is empty, display the group to which the JTextField belongs. It involves just a little programming and looping over an array ...

    kind regards,

    Jos
    Please give me an example.

  4. #4
    pj6444 is offline Senior Member
    Join Date
    Jan 2013
    Posts
    164
    Rep Power
    2

    Default Re: How to do this?

    We won't just give you the code to do it. You should try something out and see what happens, then come back and we can help you fix any problems with your code.

  5. #5
    Tawi is offline Senior Member
    Join Date
    Feb 2013
    Posts
    118
    Rep Power
    0

    Default Re: How to do this?

    Download my files. I shall do some things if they are not empty. What shall I do if they are empty?

  6. #6
    Norm's Avatar
    Norm is online now Moderator
    Join Date
    Jun 2008
    Location
    SW Missouri
    Posts
    17,397
    Rep Power
    25

    Default Re: How to do this?

    Write a small simple test program to work with and to test. There only needs to be 2 JTextFields per group in the test program not 25.
    The test program should compile, execute and show the problem.

    Don't post any code with 25 fields.
    If you don't understand my response, don't ignore it, ask a question.

  7. #7
    Tawi is offline Senior Member
    Join Date
    Feb 2013
    Posts
    118
    Rep Power
    0

    Default Re: How to do this?

    Java Code:
    /*
     * To change this template, choose Tools | Templates
     * and open the template in the editor.
     */
    package proyektesis;
    
    import javax.swing.*;
    
    /**
     *
     * @author Administrator
     */
    public class NewClass extends JFrame {
        String[][] variabelTampung = new String[100][2];
        JTextField[] jawabAlternatif1 = new JTextField[100];
        JButton lanjut = new JButton("Lanjut");
        int x = 0;
    public NewClass(){
        setSize(1024,768);  
        this.setVisible(true);
        setTitle("Penghitungan Data");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
        setLocationRelativeTo(null);  
      
    setLayout(null); 
        for (int kabijk = 0; kabijk < jawabAlternatif1.length; kabijk++) {jawabAlternatif1[kabijk] = new JTextField(); }  
        jawabAlternatif1[0].setBounds(506,150,100,25);  
        jawabAlternatif1[1].setBounds(506,180,100,25);  
        jawabAlternatif1[2].setBounds(506,210,100,25);  
        jawabAlternatif1[3].setBounds(506,240,100,25);  
        jawabAlternatif1[4].setBounds(506,270,100,25);  
        jawabAlternatif1[5].setBounds(607,150,100,25);  
        jawabAlternatif1[6].setBounds(607,180,100,25);  
        jawabAlternatif1[7].setBounds(607,210,100,25);  
        jawabAlternatif1[8].setBounds(607,240,100,25);  
        jawabAlternatif1[9].setBounds(607,270,100,25);  
        jawabAlternatif1[10].setBounds(708,150,100,25);  
        jawabAlternatif1[11].setBounds(708,180,100,25);  
        jawabAlternatif1[12].setBounds(708,210,100,25);  
        jawabAlternatif1[13].setBounds(708,240,100,25);  
        jawabAlternatif1[14].setBounds(708,270,100,25);  
        jawabAlternatif1[15].setBounds(809,150,100,25);  
        jawabAlternatif1[16].setBounds(809,180,100,25);  
        jawabAlternatif1[17].setBounds(809,210,100,25);  
        jawabAlternatif1[18].setBounds(809,240,100,25);  
        jawabAlternatif1[19].setBounds(809,270,100,25);  
        jawabAlternatif1[20].setBounds(910,150,100,25);  
        jawabAlternatif1[21].setBounds(910,180,100,25);  
        jawabAlternatif1[22].setBounds(910,210,100,25);  
        jawabAlternatif1[23].setBounds(910,240,100,25);  
        jawabAlternatif1[24].setBounds(910,270,100,25); 
        jawabAlternatif1[25].setBounds(506,150,100,25);  
        jawabAlternatif1[26].setBounds(506,180,100,25);  
        jawabAlternatif1[27].setBounds(506,210,100,25);  
        jawabAlternatif1[28].setBounds(506,240,100,25);  
        jawabAlternatif1[29].setBounds(506,270,100,25);  
        jawabAlternatif1[30].setBounds(607,150,100,25);  
        jawabAlternatif1[31].setBounds(607,180,100,25);  
        jawabAlternatif1[32].setBounds(607,210,100,25);  
        jawabAlternatif1[33].setBounds(607,240,100,25);  
        jawabAlternatif1[34].setBounds(607,270,100,25);  
        jawabAlternatif1[35].setBounds(708,150,100,25);  
        jawabAlternatif1[36].setBounds(708,180,100,25);  
        jawabAlternatif1[37].setBounds(708,210,100,25);  
        jawabAlternatif1[38].setBounds(708,240,100,25);  
        jawabAlternatif1[39].setBounds(708,270,100,25);  
        jawabAlternatif1[40].setBounds(809,150,100,25);  
        jawabAlternatif1[41].setBounds(809,180,100,25);  
        jawabAlternatif1[42].setBounds(809,210,100,25);  
        jawabAlternatif1[43].setBounds(809,240,100,25);  
        jawabAlternatif1[44].setBounds(809,270,100,25);  
        jawabAlternatif1[45].setBounds(910,150,100,25);  
        jawabAlternatif1[46].setBounds(910,180,100,25);  
        jawabAlternatif1[47].setBounds(910,210,100,25);  
        jawabAlternatif1[48].setBounds(910,240,100,25);  
        jawabAlternatif1[49].setBounds(910,270,100,25);
        for (int yulk = 25; yulk < jawabAlternatif1.length; yulk++) {
            jawabAlternatif1[yulk].setVisible(false);
            jawabAlternatif1[yulk].setEnabled(false);
        }
        lanjut.setBounds(910, 300, 100, 25);
        lanjut.addActionListener(new java.awt.event.ActionListener() {          
                @Override  
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                        x++;
                        if (x == 1) {
                            for (int ma = 0; ma < 25; ma++) {
                            jawabAlternatif1[ma].setVisible(false);
                            jawabAlternatif1[ma].setEnabled(false);
                            }
                            for (int ma = 25; ma < 50; ma++) {
                            jawabAlternatif1[ma].setVisible(true);
                            jawabAlternatif1[ma].setEnabled(true);
                            }
                        }
                        else if (x == 2) {
                            kembali();
                        }
                    }
                public void kembali() {
                     for (int opi = 0; opi < 25; opi++) {
                         if (jawabAlternatif1[opi].getText() == null) {
                             for (int hui = 0; hui < 25; hui++) {
                                  jawabAlternatif1[hui].setVisible(true);
                                  jawabAlternatif1[hui + 25].setVisible(false);
                             }
                         }
                     }
                     for (int ou = 25; ou < 50; ou++) {
                         if (jawabAlternatif1[ou].getText() == null) {
                             for (int hui = 25; hui < 50; hui++) {
                                  jawabAlternatif1[hui].setVisible(true);
                                  jawabAlternatif1[hui - 25].setVisible(false);
                             }
                         }
                     }
                }            
        });
    }
    public static void main(String[] args) {  
            NewClass tesis = new NewClass();   
            tesis.setTitle("Program Pemilihan Obat dengan Cara Analytic Hierarchycal Process");  
            tesis.setSize(1024,768);  
            tesis.setVisible(true);  
            tesis.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
            tesis.setLocationRelativeTo(null); }}
    Ok, what is wrong with this?

  8. #8
    Norm's Avatar
    Norm is online now Moderator
    Join Date
    Jun 2008
    Location
    SW Missouri
    Posts
    17,397
    Rep Power
    25

    Default Re: How to do this?

    what is wrong with this?
    Please explain why you think there is something wrong with that code? What happens when the code is compiled and executed?

    The main thing I see that is "wrong" is the usage of the setBounds() method.

    Another thing wrong is that there are TOO MANY objects. 5 should be enough for testing. 100 is way too many.
    Last edited by Norm; 02-24-2014 at 02:53 PM.
    If you don't understand my response, don't ignore it, ask a question.

  9. #9
    kneitzel is offline Senior Member
    Join Date
    Feb 2014
    Posts
    447
    Rep Power
    1

    Default Re: How to do this?

    Just from looking at the code:

    - When you create controls dynamically in your code, you have to add them to the container where you want to have them. So for your code you could do:

    Java Code:
       
     for (int kabijk = 0; kabijk < jawabAlternatif1.length; kabijk++) {
            jawabAlternatif1[kabijk] = new JTextField(); 
            this.add(jawabAlternatif1[kabijk]);
        }

    - Your code inside kembali() is a little scary in my eyes. Imagine all controls are empty: Then you go through the inner loop 25 times. So in my eyes I would simply have something like

    Java Code:
    int opi = 0;
    boolean notFound = true
    while (opi < 25 && notFound)
    {
      // Your code with inner loop in here but set notFound to true, too!
    }
    - Shouldn't you check getText().equals(""), too? At least that is, what I did in the past.

    And then my auggestion is to start slowly and test everything with a debugger. First step is to create a gui with dynamic fields. Once you got that up and running, you could work on hide/show logic.

    With kind regards,

    Konrad
    Last edited by kneitzel; 02-24-2014 at 03:19 PM. Reason: Wrong code tags ... sorry

  10. #10
    Tawi is offline Senior Member
    Join Date
    Feb 2013
    Posts
    118
    Rep Power
    0

    Default Re: How to do this?

    Quote Originally Posted by Norm View Post
    Please explain why you think there is something wrong with that code? What happens when the code is compiled and executed?

    The main thing I see that is "wrong" is the usage of the setBounds() method.

    Another thing wrong is that there are TOO MANY objects. 5 should be enough for testing. 100 is way too many.
    First thing is sorry, I forget to change it to 50. Secondl, the problem is it show nothing, so?

  11. #11
    Tawi is offline Senior Member
    Join Date
    Feb 2013
    Posts
    118
    Rep Power
    0

    Default Re: How to do this?

    Java Code:
    /*
     * To change this template, choose Tools | Templates
     * and open the template in the editor.
     */
    package proyektesis;
    
    import javax.swing.*;
    
    /**
     *
     * @author Administrator
     */
    public class NewClass extends JFrame {
        String[] variabelTampung = new String[50];
        JTextField[] jawabAlternatif1 = new JTextField[100];
        JButton lanjut = new JButton("Lanjut");
        int x = 0;
    public NewClass(){
        setSize(1024,768);  
        this.setVisible(true);
        setTitle("Penghitungan Data");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
        setLocationRelativeTo(null);  
      
    setLayout(null); 
        for (int kabijk = 0; kabijk < jawabAlternatif1.length; kabijk++) {jawabAlternatif1[kabijk] = new JTextField(); }  
        jawabAlternatif1[0].setBounds(506,150,100,25);  
        jawabAlternatif1[1].setBounds(506,180,100,25);  
        jawabAlternatif1[2].setBounds(506,210,100,25);  
        jawabAlternatif1[3].setBounds(506,240,100,25);  
        jawabAlternatif1[4].setBounds(506,270,100,25);  
        jawabAlternatif1[5].setBounds(607,150,100,25);  
        jawabAlternatif1[6].setBounds(607,180,100,25);  
        jawabAlternatif1[7].setBounds(607,210,100,25);  
        jawabAlternatif1[8].setBounds(607,240,100,25);  
        jawabAlternatif1[9].setBounds(607,270,100,25);  
        jawabAlternatif1[10].setBounds(708,150,100,25);  
        jawabAlternatif1[11].setBounds(708,180,100,25);  
        jawabAlternatif1[12].setBounds(708,210,100,25);  
        jawabAlternatif1[13].setBounds(708,240,100,25);  
        jawabAlternatif1[14].setBounds(708,270,100,25);  
        jawabAlternatif1[15].setBounds(809,150,100,25);  
        jawabAlternatif1[16].setBounds(809,180,100,25);  
        jawabAlternatif1[17].setBounds(809,210,100,25);  
        jawabAlternatif1[18].setBounds(809,240,100,25);  
        jawabAlternatif1[19].setBounds(809,270,100,25);  
        jawabAlternatif1[20].setBounds(910,150,100,25);  
        jawabAlternatif1[21].setBounds(910,180,100,25);  
        jawabAlternatif1[22].setBounds(910,210,100,25);  
        jawabAlternatif1[23].setBounds(910,240,100,25);  
        jawabAlternatif1[24].setBounds(910,270,100,25); 
        jawabAlternatif1[25].setBounds(506,150,100,25);  
        jawabAlternatif1[26].setBounds(506,180,100,25);  
        jawabAlternatif1[27].setBounds(506,210,100,25);  
        jawabAlternatif1[28].setBounds(506,240,100,25);  
        jawabAlternatif1[29].setBounds(506,270,100,25);  
        jawabAlternatif1[30].setBounds(607,150,100,25);  
        jawabAlternatif1[31].setBounds(607,180,100,25);  
        jawabAlternatif1[32].setBounds(607,210,100,25);  
        jawabAlternatif1[33].setBounds(607,240,100,25);  
        jawabAlternatif1[34].setBounds(607,270,100,25);  
        jawabAlternatif1[35].setBounds(708,150,100,25);  
        jawabAlternatif1[36].setBounds(708,180,100,25);  
        jawabAlternatif1[37].setBounds(708,210,100,25);  
        jawabAlternatif1[38].setBounds(708,240,100,25);  
        jawabAlternatif1[39].setBounds(708,270,100,25);  
        jawabAlternatif1[40].setBounds(809,150,100,25);  
        jawabAlternatif1[41].setBounds(809,180,100,25);  
        jawabAlternatif1[42].setBounds(809,210,100,25);  
        jawabAlternatif1[43].setBounds(809,240,100,25);  
        jawabAlternatif1[44].setBounds(809,270,100,25);  
        jawabAlternatif1[45].setBounds(910,150,100,25);  
        jawabAlternatif1[46].setBounds(910,180,100,25);  
        jawabAlternatif1[47].setBounds(910,210,100,25);  
        jawabAlternatif1[48].setBounds(910,240,100,25);  
        jawabAlternatif1[49].setBounds(910,270,100,25);
        for (int yulk = 0; yulk < jawabAlternatif1.length; yulk++) {
            add(jawabAlternatif1[yulk]);
        }
        for (int yulk = 25; yulk < jawabAlternatif1.length; yulk++) {
            jawabAlternatif1[yulk].setVisible(false);
            jawabAlternatif1[yulk].setEnabled(false);        
        }
        for (int yulk = 0; yulk < 25; yulk++) {
            jawabAlternatif1[yulk].setVisible(true);
            jawabAlternatif1[yulk].setEnabled(true);
        }
        lanjut.setVisible(true);
        add(lanjut);
        lanjut.setBounds(910, 300, 100, 25);
        lanjut.addActionListener(new java.awt.event.ActionListener() {          
                @Override  
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                        x++;
                        if (x == 1) {
                            for (int ma = 0; ma < 25; ma++) {
                            jawabAlternatif1[ma].setVisible(false);
                            jawabAlternatif1[ma].setEnabled(false);
                            }
                            for (int ma = 25; ma < 50; ma++) {
                            jawabAlternatif1[ma].setVisible(true);
                            jawabAlternatif1[ma].setEnabled(true);
                            }
                        }
                        else if (x == 2) {
                            kembali();
                        }
                    }
                public void kembali() {
                     for (int opi = 0; opi < 25; opi++) {
                         if (jawabAlternatif1[opi].getText() == null) {
                             for (int hui = 0; hui < 25; hui++) {
                                  jawabAlternatif1[hui].setVisible(true);
                                  jawabAlternatif1[hui + 25].setVisible(false);
                             }
                         }
                     }
                     for (int ou = 25; ou < 50; ou++) {
                         if (jawabAlternatif1[ou].getText() == null) {
                             for (int hui = 25; hui < 50; hui++) {
                                  jawabAlternatif1[hui].setVisible(true);
                                  jawabAlternatif1[hui - 25].setVisible(false);
                             }
                         }
                     }
                }            
        });
    }
    public static void main(String[] args) {  
            NewClass tesis = new NewClass();   
            tesis.setTitle("Program Pemilihan Obat dengan Cara Analytic Hierarchycal Process");  
            tesis.setSize(1024,768);  
            tesis.setVisible(true);  
            tesis.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
            tesis.setLocationRelativeTo(null); }}
    Ok, here is the revision. I still have a problem. How to determine that the code is showing the first group or the second? I still have a feeling that this code is wrong but what is wrong?

  12. #12
    Norm's Avatar
    Norm is online now Moderator
    Join Date
    Jun 2008
    Location
    SW Missouri
    Posts
    17,397
    Rep Power
    25

    Default Re: How to do this?

    Still too many items for testing.
    There are too many hardcoded "magic" numbers in the code: the 25 and 50 should replaced by variables that are easily changed.
    Java Code:
      for (int ou = 25; ou < 50; ou++) {
    Replace the 25 and 50 with variables.


    I still have a feeling that this code is wrong but what is wrong?
    Why do you say that? Please explain.

    How to determine that the code is showing the first group or the second?
    Load the text field with the contents of the loop index when it is created.
    Last edited by Norm; 02-24-2014 at 03:51 PM.
    If you don't understand my response, don't ignore it, ask a question.

  13. #13
    Tawi is offline Senior Member
    Join Date
    Feb 2013
    Posts
    118
    Rep Power
    0

    Default Re: How to do this?

    Quote Originally Posted by Norm View Post
    Still too many items for testing.
    There are too many hardcoded "magic" numbers in the code: the 25 and 50 should replaced by variables that are easily changed.
    Java Code:
      for (int ou = 25; ou < 50; ou++) {
    Replace the 25 and 50 with variables.
    Give me an example, please.

  14. #14
    kneitzel is offline Senior Member
    Join Date
    Feb 2014
    Posts
    447
    Rep Power
    1

    Default Re: How to do this?

    Hi,

    one thing that might be usefull is refactoring the code so that it is easier to read and maintain.

    One thing that is quite easy to refactor is "double code". So you got a lot of lines that are more or less equal. You have a lot of loops that are more or less the same. So my sugegstion here is:
    Java Code:
    int startx = 506;
    int starty = 150;
    dx = 101;
    dy = 30;
    for (int rows = 0; rows < 5; rows++) { // Iterate through rows.
      for (int columns = 0; columns < 5; columns++) { // Iterate through columns
        int element = rows * 5 + column; // Get the position inside the array.
        CreateElement(element, startx + column * dx, starty + rows *dy, 100, 25);
        CreateElement(element+25, startx + column * dx, starty + rows *dy, 100, 25); // We have to create 2 Controls!
      }
    }
    CreateElement would do the following stuff:
    Java Code:
        jawabAlternatif1[element] = new JTextField();
        this.add(jawabAlternatif1[element]);
        jawabAlternatif1[element].setBounds();
        jawabAlternatif1[element].setVisible(false);
        jawabAlternatif1[element].setEnabled(false);
    Another simplification could be to create two Panels and then then hide/show the Panels. That way you do not have to change all Controls.
    To see, which elements are shown or not shown you could add another control. Just add some Text on Top that tells you, what you show. (Normaly you have some text in front of each box of if you have rows and columns, you simply label these!)

    Maybe you could follow these advices to get some readable code. And did you try to play around with a debugger? That is something that is really usefull to find problems.

    With kind regards,

    Konrad
    Last edited by kneitzel; 02-24-2014 at 03:47 PM. Reason: One code line had to be moved ...

  15. #15
    gimbal2 is offline Just a guy
    Join Date
    Jun 2013
    Location
    Netherlands
    Posts
    3,994
    Rep Power
    5

    Default Re: How to do this?

    Quote Originally Posted by Tawi View Post
    Give me an example, please.
    My name is Jesse.

    (note: that's a link to an easily identifiable example; my name is not Jesse)
    "Syntactic sugar causes cancer of the semicolon." -- Alan Perlis

  16. #16
    jim829 is offline Senior Member
    Join Date
    Jan 2013
    Location
    Northern Virginia, United States
    Posts
    3,600
    Rep Power
    5

    Default Re: How to do this?

    In all sincerity, if you need an example to understand what Norm suggested then you really need to step back
    and read the Java tutorials. And once again I recommend getting a good book and practice the examples. It
    is clear you are new to Java and thus are probably taking on too much at this time.

    Regards,
    Jim
    The Java™ Tutorial | SSCCE | Java Naming Conventions
    Poor planning our your part does not constitute an emergency on my part.

  17. #17
    Norm's Avatar
    Norm is online now Moderator
    Join Date
    Jun 2008
    Location
    SW Missouri
    Posts
    17,397
    Rep Power
    25

    Default Re: How to do this?

    Op is not new to java. See postings last summer: http://forums.devshed.com/java-help-...am-944098.html
    If you don't understand my response, don't ignore it, ask a question.

  18. #18
    gimbal2 is offline Just a guy
    Join Date
    Jun 2013
    Location
    Netherlands
    Posts
    3,994
    Rep Power
    5

    Default Re: How to do this?

    Jebus, not much has changed since then. This is almost a carbon copy of the flow of that thread.
    "Syntactic sugar causes cancer of the semicolon." -- Alan Perlis

  19. #19
    jim829 is offline Senior Member
    Join Date
    Jan 2013
    Location
    Northern Virginia, United States
    Posts
    3,600
    Rep Power
    5

    Default Re: How to do this?

    Well I read thru the thread. Then I looked up the word "patience" in the dictionary. They had a picture of Norm! :)

    Regards,
    Jim
    gimbal2, JosAH and SurfMan like this.
    The Java™ Tutorial | SSCCE | Java Naming Conventions
    Poor planning our your part does not constitute an emergency on my part.

  20. #20
    Tawi is offline Senior Member
    Join Date
    Feb 2013
    Posts
    118
    Rep Power
    0

    Default Re: How to do this?

    Quote Originally Posted by kneitzel View Post
    Hi,

    one thing that might be usefull is refactoring the code so that it is easier to read and maintain.

    One thing that is quite easy to refactor is "double code". So you got a lot of lines that are more or less equal. You have a lot of loops that are more or less the same. So my sugegstion here is:
    Java Code:
    int startx = 506;
    int starty = 150;
    dx = 101;
    dy = 30;
    for (int rows = 0; rows < 5; rows++) { // Iterate through rows.
      for (int columns = 0; columns < 5; columns++) { // Iterate through columns
        int element = rows * 5 + column; // Get the position inside the array.
        CreateElement(element, startx + column * dx, starty + rows *dy, 100, 25);
        CreateElement(element+25, startx + column * dx, starty + rows *dy, 100, 25); // We have to create 2 Controls!
      }
    }
    CreateElement would do the following stuff:
    Java Code:
        jawabAlternatif1[element] = new JTextField();
        this.add(jawabAlternatif1[element]);
        jawabAlternatif1[element].setBounds();
        jawabAlternatif1[element].setVisible(false);
        jawabAlternatif1[element].setEnabled(false);
    Another simplification could be to create two Panels and then then hide/show the Panels. That way you do not have to change all Controls.
    To see, which elements are shown or not shown you could add another control. Just add some Text on Top that tells you, what you show. (Normaly you have some text in front of each box of if you have rows and columns, you simply label these!)

    Maybe you could follow these advices to get some readable code. And did you try to play around with a debugger? That is something that is really usefull to find problems.

    With kind regards,

    Konrad
    How to give name to those elements and access them?

Page 1 of 11 123 ... LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •