Solved

# drawing many rectangles at once.

Posted on 2004-04-14
348 Views
Last Modified: 2008-02-26
hi.
i need assistance with drawing a many rectangles 0f the same size  at diffrent positions. say i want to draw four rectangles to be displayed. all the rectangles should have some string in them. how do i go about that? are loops gonna be used? assistance with sample code will be appreciated
0
Question by:msberth
[X]
###### Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

• Help others & share knowledge
• Earn cash & points
• Learn & ask questions
• 2
4 Comments

LVL 37

Expert Comment

ID: 10827347
Maybe this link can help: http://www.javaalmanac.com/egs/java.awt/pkg.html#Shapes
Browse around.
0

LVL 30

Expert Comment

ID: 10830239
>> are loops gonna be used?

If you have only 4 to be displayed, you can do it without using a loop (using a loop would still be better). The advantage of using a loop is - you can modify the number of rectangles to be drawn at any point of time. Have a look at Java Almanac's examples.
0

LVL 4

Accepted Solution

delphi3 earned 45 total points
ID: 10844707
msberth,
Here is a sample written with the directions that were supplied by you.

Delphi3

/*
Much of this was written by repeated testing
of known "sample code"
*/
import java.awt.*;
import javax.swing.*;
/*
<HTML>
<HEAD>
<TITLE>RandomRectangles TwoWay: a Applet or a Application</TITLE>
</HEAD>
<BODY>
<H1>Show RandomRectangles Demo</H1>
<APPLET CODE="RandomRectangles.class" WIDTH=450 HEIGHT=400>
</APPLET>
</BODY>
</HTML>
*/

public class RandomRectangles
extends JApplet {
// assignment of strings to array.
String [] arryPhrase  = {"How are you?","Welcome to java","Just follow me", "Wondering"};
// each phrase has a number of letters and spaces: just keep it 16 letters/spaces
// or expand the fixed width of the rectangle
int [] arryPhraseLength = {12*6,15*6,14*6,9*6} ;

public void paint(Graphics g) {
g.setColor(Color.green);
for( int rects = 1;rects < 5;rects++){
int rndmx = (int) (150 * Math.random() + 25);
int rndmy = (int) (150 * Math.random() + 25);
int w = 100;
int h = 130;
Color rndm= new Color((int)(Math.random()*255),(int)(Math.random()*255),(int)(Math.random()*255));
g.setColor(rndm);
g.fillRect(rndmx,rndmy,w,h);
g.setColor(Color.black);
g.drawString (arryPhrase [rects-1],((int)(rndmx+w/2)- ((arryPhraseLength[rects-1])/2)),(int)(rndmy + h /2));
}
}
//  main()called only when run as a stand-alone application
public static void main(String args[])  {
MyAppletFrame appletFrame= new MyAppletFrame ("My Rectangles");
//The following makes a new instance of RandomRectangles
RandomRectangles myNewRandomRectangles= new RandomRectangles();
WinListen off = new WinListen();
myNewRandomRectangles.init();
myNewRandomRectangles.start();
appletFrame.addWindowListener(off);
appletFrame.add("Center",myNewRandomRectangles);
appletFrame.setSize(450,400);
appletFrame.show();
}
}
0

LVL 4

Expert Comment

ID: 10943882
msberth,

Thanks for the points and grade. :)

Delphi3

0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

### Suggested Solutions

Title # Comments Views Activity
login jsp example 24 105
hibernate example issues from command prompt 10 85
spring jars download 1 68
Java: The Public Class Main 4 66
By the end of 1980s, object oriented programming using languages like C++, Simula69 and ObjectPascal gained momentum. It looked like programmers finally found the perfect language. C++ successfully combined the object oriented principles of Simula w…
Introduction This article is the first of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article explains our test automation goals. Then rationale is given for the tools we use to a…
Viewers learn about the “for” loop and how it works in Java. By comparing it to the while loop learned before, viewers can make the transition easily. You will learn about the formatting of the for loop as we write a program that prints even numbers…
Viewers will learn one way to get user input in Java. Introduce the Scanner object: Declare the variable that stores the user input: An example prompting the user for input: Methods you need to invoke in order to properly get  user input:
###### Suggested Courses
Course of the Month5 days, 9 hours left to enroll

#### 734 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.