Källkoden för /anders.enges/java/java4.asp
<!--#include file="../inc/navstuff.asp" -->
<p> Nedan tar jag upp de vanligaste komponenterna i awt. jag tar upp en åt
gången och skaravar på samma program för varje steg. För varje steg är
de nya raderna markerade med <b>fetstil</b>.</p>
<h4>Label</h4>
<p>Används för att visa "oediterbar" text i ett fönster</p>
<div class="code">
import java.awt.*;<br />
import java.applet.*;<br />
<br />
<br />public class Applet1 extends Applet<br />
{<br />
  // skapa en label med texten "text för labeln"<br />
  <b>Label label1 = new Label("text för labeln");</b><br />
  public void init()<br />
  {<br />
     // sätt in den i appleten<br />
     <b>this.add(label1);</b><br />
  }<br />
}<br />
</div>
<p>Resultat:</p>
<applet code=Applet1.class name=Applet1 width=200 height=80>
</applet>
<h4>Button</h4>
<p>Används för att visa knappar</p>
<div class="code">
import java.awt.*;<br />
import java.applet.*;<br />
<br />
<br />public class Applet1 extends Applet<br />
{<br />
  Label label1 = new Label("text för labeln");<br />
  <b>Button button1 = new Button("text för knappen");</b><br />
  public void init()<br />
  {<br />
     this.add(label1);<br />
     <b>this.add(button1);</b><br />
  }<br />
}<br />
</div>
<p>Resultat:</p>
<applet code=Applet2.class name=Applet2 width=200 height=80>
</applet>

<h4>Checkbox</h4>
<p>Används för att visa checkboxar</p>
<div class="code">
import java.awt.*;<br />
import java.applet.*;<br />
<br />
<br />public class Applet1 extends Applet<br />
{<br />
  Label label1 = new Label("text för labeln");<br />
  Button button1 = new Button("text för knappen");<br />
  <b>Checkbox check1 = new Checkbox("en checkbox");</b><br />
  public void init()<br />
  {<br />
     this.add(label1);<br />
     this.add(button1);<br />
     <b>this.add(check1);</b><br />
  }<br />
}<br />
</div>
<p>Resultat:</p>
<applet code=Applet3.class name=Applet3 width=200 height=80>
</applet>

<h4>Checkboxgroup</h4>
<p>Används för att visa grupperade checkboxar (optionbuttons)</p>
<div class="code">
import java.awt.*;<br />
import java.applet.*;<br />
<br />
<br />public class Applet1 extends Applet<br />
{<br />
  Label label1 = new Label("text för labeln");<br />
  Button button1 = new Button("text för knappen");<br />
  Checkbox check1 = new Checkbox("en checkbox");<br />
  <b>CheckboxGroup grp = new CheckboxGroup();</b><br />
  <b>Checkbox check2 = new Checkbox("ett",grp,false);</b><br />
  <b>Checkbox check3 = new Checkbox("två",grp,true);</b><br />

  public void init()<br />
  {<br />
     this.add(label1);<br />
     this.add(button1);<br />
     this.add(check1);<br />
     <b>this.add(check2);</b><br />
     <b>this.add(check3);</b><br />
  }<br />
}<br />
</div>
<p>Resultat:</p>
<applet code=Applet4.class name=Applet4 width=200 height=80>
</applet>

<h4>Choice</h4>
<p>Används för att visa comboboxar</p>
<div class="code">
import java.awt.*;<br />
import java.applet.*;<br />
<br />
<br />public class Applet1 extends Applet<br />
{<br />
  Label label1 = new Label("text för labeln");<br />
  Button button1 = new Button("text för knappen");<br />
  Checkbox check1 = new Checkbox("en checkbox");<br />
  CheckboxGroup grp = new CheckboxGroup();<br />
  Checkbox check2 = new Checkbox("ett",grp,false);<br />
  Checkbox check3 = new Checkbox("två",grp,true);<br />
  <b>Choice choice1 = new Choice();</b><br />
  public void init()<br />
  {<br />
     this.add(label1);<br />
     this.add(button1);<br />
     this.add(check1);<br />
     this.add(check2);<br />
     this.add(check3);<br />
     <b>this.add(choice1);</b><br />
     <b>choice1.add("en rad");</b><br />
     <b>choice1.add("en till rad");</b><br />
     <b>choice1.add("en tredje rad");</b><br />
  }<br />
}<br />
</div>
<p>Resultat:</p>
<applet code=Applet5.class name=Applet5 width=200 height=80>
</applet>

<h4>List</h4>
<p>Används för att visa listboxar</p>
<div class="code">
import java.awt.*;<br />
import java.applet.*;<br />
<br />
<br />public class Applet1 extends Applet<br />
{<br />
  Label label1 = new Label("text för labeln");<br />
  Button button1 = new Button("text för knappen");<br />
  Checkbox check1 = new Checkbox("en checkbox");<br />
  CheckboxGroup grp = new CheckboxGroup();<br />
  Checkbox check2 = new Checkbox("ett",grp,false);<br />
  Checkbox check3 = new Checkbox("två",grp,true);<br />
  Choice choice1 = new Choice();<br />
  <b>List list1 = new List();</b><br />
  public void init()<br />
  {<br />
     this.add(label1);<br />
     this.add(button1);<br />
     this.add(check1);<br />
     this.add(check2);<br />
     this.add(check3);<br />
     this.add(choice1);<br />
     choice1.add("en rad");<br />
     choice1.add("en till rad");<br />
     choice1.add("en tredje rad");<br />
     <b>this.add(list1);</b><br />
     <b>list1.add("en rad");</b><br />
     <b>list1.add("en till rad");</b><br />
     <b>list1.add("en tredje rad");</b><br />
  }<br />
}<br />
</div>
<p>Resultat:</p>
<applet code=Applet6.class name=Applet6 width=200 height=200>
</applet>
<h4>Textfield</h4>
<p>Används för att visa en textbox</p>
<div class="code">
import java.awt.*;<br />
import java.applet.*;<br />
<br />
<br />public class Applet1 extends Applet<br />
{<br />
  Label label1 = new Label("text för labeln");<br />
  Button button1 = new Button("text för knappen");<br />
  Checkbox check1 = new Checkbox("en checkbox");<br />
  CheckboxGroup grp = new CheckboxGroup();<br />
  Checkbox check2 = new Checkbox("ett",grp,false);<br />
  Checkbox check3 = new Checkbox("två",grp,true);<br />
  Choice choice1 = new Choice();<br />
  List list1 = new List();<br />
  <b>TextField text1 = new TextField("skriv här");</b><br />
  public void init()<br />
  {<br />
     this.add(label1);<br />
     this.add(button1);<br />
     this.add(check1);<br />
     this.add(check2);<br />
     this.add(check3);<br />
     this.add(choice1);<br />
     choice1.add("en rad");<br />
     choice1.add("en till rad");<br />
     choice1.add("en tredje rad");<br />
     this.add(list1);<br />
     list1.add("en rad");<br />
     list1.add("en till rad");<br />
     list1.add("en tredje rad");<br />
     <b>this.add(text1);</b><br />
  }<br />
}<br />
</div>
<p>Resultat:</p>
<applet code=Applet7.class name=Applet7 width=200 height=200>
</applet>

<h4>TextArea</h4>
<p>Används för att visa en flerradig textbox</p>
<div class="code">
import java.awt.*;<br />
import java.applet.*;<br />
<br />
<br />public class Applet1 extends Applet<br />
{<br />
  Label label1 = new Label("text för labeln");<br />
  Button button1 = new Button("text för knappen");<br />
  Checkbox check1 = new Checkbox("en checkbox");<br />
  CheckboxGroup grp = new CheckboxGroup();<br />
  Checkbox check2 = new Checkbox("ett",grp,false);<br />
  Checkbox check3 = new Checkbox("två",grp,true);<br />
  Choice choice1 = new Choice();<br />
  List list1 = new List();<br />
  TextField text1 = new TextField("skriv här");<br />
  <b>TextArea area1 = new TextArea("text", 10,30);</b><br />

  public void init()<br />
  {<br />
     this.add(label1);<br />
     this.add(button1);<br />
     this.add(check1);<br />
     this.add(check2);<br />
     this.add(check3);<br />
     this.add(choice1);<br />
     choice1.add("en rad");<br />
     choice1.add("en till rad");<br />
     choice1.add("en tredje rad");<br />
     this.add(list1);<br />
     list1.add("en rad");<br />
     list1.add("en till rad");<br />
     list1.add("en tredje rad");<br />
     this.add(text1);<br />
     <b>this.add(area1);</b><br />
  }<br />
}<br />
</div>
<p>Resultat:</p>
<applet code=Applet8.class name=Applet8 width=300 height=300>
</applet>
<h4>Scrollbar</h4>
<p>Används för att visa en Scrollbar</p>
<div class="code">
import java.awt.*;<br />
import java.applet.*;<br />
<br />
<br />public class Applet1 extends Applet<br />
{<br />
  Label label1 = new Label("text för labeln");<br />
  Button button1 = new Button("text för knappen");<br />
  Checkbox check1 = new Checkbox("en checkbox");<br />
  CheckboxGroup grp = new CheckboxGroup();<br />
  Checkbox check2 = new Checkbox("ett",grp,false);<br />
  Checkbox check3 = new Checkbox("två",grp,true);<br />
  Choice choice1 = new Choice();<br />
  List list1 = new List();<br />
  TextField text1 = new TextField("skriv här");<br />
  TextArea area1 = new TextArea("text", 10,30);<br />
<br />
  // parametrarna:<br />
  // Hur skall den visas<br />
  // startvärde<br />
  // bredd (har i windows ingen betydelse)<br />
  // minsta värde<br />
  // största värde<br />
  <b>Scrollbar scroll1 = new Scrollbar(Scrollbar.HORIZONTAL, 0, 10, -100 ,100);</b><br />
  <b>Scrollbar scroll2 = new Scrollbar(Scrollbar.VERTICAL , 30, 5, 0 ,100);</b><br />
<br />
  public void init()<br />
  {<br />
     this.add(label1);<br />
     this.add(button1);<br />
     this.add(check1);<br />
     this.add(check2);<br />
     this.add(check3);<br />
     this.add(choice1);<br />
     choice1.add("en rad");<br />
     choice1.add("en till rad");<br />
     choice1.add("en tredje rad");<br />
     this.add(list1);<br />
     list1.add("en rad");<br />
     list1.add("en till rad");<br />
     list1.add("en tredje rad");<br />
     this.add(text1);<br />
     this.add(area1);<br />
     <b>this.add(scroll1);</b><br />
     <b>this.add(scroll2);</b><br />

  }<br />
}<br />
</div>
<p>Resultat:</p>
<applet code=Applet17.class name=Applet17 width=300 height=300>
</applet>
<h4>Så... Vad har vi lärt oss</h4>
<p>Förhoppningsvis har vi fattat följande samband:
<ul>
<li>Klasser (komponenterna) har alltid namn som börjar med stor bokstav
<li>Man skapar oftast ett objekt med konstrulktionen:<br />
<b>Klassnamn</b> variabelnamn = new <b>Klassnamn</b>(<i>eventuella parametrar</i>);
<li>Man kan gärna skapa objekten i början av klassen
<li>Kontroller visas med <i>vem skall visa</i>.add( <i>objektents namn</i> );
<li>Om man vill att appleten skall visa dem kan man använda this för <i>vem skall visa</i>
<li>J++ har en hjälpsam editor
</ul>
</p>
<h4> Vad har vi ännu inte lärt oss?</h4>
<p>Kontrollerna gör ju ingenting. De bara finns där.</p>
<p>Detta behandlas i nästa kapitel, där händelser tas upp.</p>


<!--#include file="../inc/footer.asp" -->