Updating a JLabel with an integer array

  • Thread starter ProPatto16
  • Start date
  • #1
326
0
halfway through my code so its a bit of mess but this is simple what i need to do.

I have a JLabel array of 6 labels.

a random number is generated, its then split into its digits into a 6 element array of integers. now i need to update the Jlabels with the integer array of digits.

my JLabel declaration is

odometer = new JLabel[ 6 ]; // create array for odometer digits
odometerJPanel = new JPanel();
for ( int count = 0; count < odometer.length; count ++)
{
odometer[ count ] = new JLabel( " 0 " );
odometerJPanel.add( odometer[ count ] ); // add odometer to JPanel
}

so initially the labels are all 0.
i have another array filled with the digits i want to put onto the JLabels.
How?

Thanks in advance
 

Answers and Replies

  • #2
35,237
7,057
halfway through my code so its a bit of mess but this is simple what i need to do.

I have a JLabel array of 6 labels.

a random number is generated, its then split into its digits into a 6 element array of integers. now i need to update the Jlabels with the integer array of digits.

my JLabel declaration is

odometer = new JLabel[ 6 ]; // create array for odometer digits
odometerJPanel = new JPanel();
for ( int count = 0; count < odometer.length; count ++)
{
odometer[ count ] = new JLabel( " 0 " );
odometerJPanel.add( odometer[ count ] ); // add odometer to JPanel
}

so initially the labels are all 0.
i have another array filled with the digits i want to put onto the JLabels.
How?

Thanks in advance

Convert the random number to a string, then peel of the digits one by one and put each one in the appropriate JLabel. Am I correct in assuming you are writing Java code?
 
  • #3
Filip Larsen
Gold Member
1,424
335
Use the JLabel.setText method perhaps?
 
  • #4
326
0
That's what I ended up doing. But to use the set text method it needs to be applied individually to each index of the array. So I have like 30 lines of code to set the number, colour and font size. Just means its a lot of repetitive code. I was looking for a way to do it using the array directly but seems most methods can't be applied to arrays, only Ints and strings. And yeah writing java. Thanks guys (:
 
  • #5
Filip Larsen
Gold Member
1,424
335
Sound like you could benefit from moving the code that sets the properties of each JLabel into a loop (if the "source" data is also stored in arrays) or at least method, like the setMyLabel example method below.

Code:
public void setMyLabel(JLabel label, String text, Color color, float pt) {
  label.setText(text);
  label.setForeground(color);
  label.setFont(label.getFont().deriveFont(pt));
}


JLabel[] labels = ...
...
setMyLabel(labels[0], "first", Color.RED, 12);
setMyLabel(labels[1], "second", Color.GREEN, 10);
...
 

Related Threads on Updating a JLabel with an integer array

  • Last Post
Replies
0
Views
1K
  • Last Post
Replies
1
Views
3K
Replies
3
Views
2K
  • Last Post
Replies
3
Views
970
  • Last Post
Replies
5
Views
747
Replies
5
Views
895
  • Last Post
Replies
1
Views
766
  • Last Post
Replies
2
Views
1K
Replies
6
Views
375
  • Last Post
Replies
10
Views
1K
Top