Jedným z obmedzení programu sme pracovali na tak ďaleko, je skutočnosť, že sa predpokladá, že je okno 200 200 pixelov. Čo keby sme sa chcel opýtať okná, " Ako veľké sú tie, &Quote ?; a potom veľkosť náš obdĺžnik a uhlopriečky, aby sa zmestili? Ak sa vydáte späť a pozrieť sa na stránke dokumentácie pre grafické triedy (java.awt.Graphics.html - súbor, ktorý obsahuje všetky dostupné funkcie kreslenie), uvidíte, že jedna z funkcií sa nazýva getClipBounds. Kliknutím na tento názov funkcie vidieť úplný opis. Táto funkcia prijíma žiadne parametre, ale namiesto toho vracia hodnotu typu obdĺžnik. Obdĺžnik vráti obsahuje šírku a výšku dostupnej grafickej oblasti. Ak kliknete na obdĺžnik v tejto stránke dokumentácie budete presmerovaný na stránku s dokumentáciou pre triedy Rectangle (java.awt.Graphics.html). Pri pohľade v premennej časti indexu v hornej časti stránky, zistíte, že táto trieda obsahuje štyri premenné pomenované x, y, šírka a výška, resp. To, čo chceme robiť, a preto, je dostať klip hraničný obdĺžnik pomocou getClipBounds a potom extrahovať šírku a výšku z tohto obdĺžnika a uloženie hodnôt v premenných šírky a výšky sme vytvorili v predchádzajúcom príklade, ako je tento:
dovozných java.awt.Graphics, import java.awt.Color, import java.awt.Rectangle; public class FirstApplet rozširuje java.applet.Applet {public void paint (Graphics g) {int šírka; int výška; Obdĺžnik r; r = g.getClipBounds (); width = r.width - 1; výška = r.height - 1; g.drawRect (0, 0, šírka, výška); g.drawLine (0, 0, šírka, výška); g.drawLine (šírka, 0, 0, výška); }}Pri spustení tohto príkladu, čo si všimnete, je, že obdĺžnik a uhlopriečkami presne zapadajú do kresliace plochy. Navyše, pri zmene veľkosti okna, obdĺžnik a uhlopriečky prekresľovanie sa na novej veľkosti automaticky. K dispozícii je päť nové koncepty predstavené v tomto kóde, tak sa poďme pozrieť na ne:
- Prvá, pretože sme pomocou triedy Obdĺžnik musíme dovážať java.awt.Rectangle na treťom riadku programu .
- sme deklarovali tri premenné v tomto programe. Dve (šírka a výška) sú typu int a jeden (R) je typu obdĺžnika.
- Použili sme getClipBounds funkciu získať veľkosť kresliace plochy. Prijíma ži