Java Примеры программирования Информатика начало

Исходный текст аплета Options

Назад Вперед

Исходный текст аплета Options представлен в листинге 1.

Листинг 1. Файл Options.java

import java.applet.*; import java.awt.*;
public class Options extends Applet { FirstPanel pPanel1; 
CardPanel pCard; ControlPanel pControl;
 
public String getAppletInfo() { return "Name: Options"; }
 
public void init() { setLayout(new GridLayout(3, 1));
 
pPanel1 = new FirstPanel(); add(pPanel1);
 
pCard = new CardPanel(pPanel1); add(pCard);
 
pControl = new ControlPanel(pCard); add(pControl);
 
pPanel1.setBackground(Color.yellow); pPanel1.setForeground(Color.black);
 repaint(); } }
class 
FirstPanel extends Panel { String szFontName = "TimesRoman";
 
public void paint(Graphics g) { Dimension dimAppWndDimension = getSize();
 g.drawRect(0, 0, dimAppWndDimension.width - 1, dimAppWndDimension.height 
- 1);
 g.setFont(new Font(szFontName, 
Font.PLAIN, 24)); g.drawString("First panel", 10, 50);
 
super.paint(g); } }
class CardPanel extends 
Panel { Panel pBgColor; Panel pFgColor; Panel pFont;
 
Panel pControlled;
 Choice chBgColor; 
Choice chFgColor; Choice chFont;
 Label 
lbBgColor; Label lbFgColor; Label lbFont;
 
public CardPanel(Panel pControlledPanel) { pControlled = pControlledPanel;
 setLayout(new CardLayout(5, 5));
 
pBgColor = new Panel(); pFgColor = new Panel(); pFont = new Panel();
 add("BgColor", pBgColor); add("FgColor", pFgColor); 
add("Font", pFont);
 chBgColor = new Choice(); 
chFgColor = new Choice(); chFont = new Choice();
 
chBgColor.add("Yellow"); chBgColor.add("Green"); chBgColor.add("White");
 chFgColor.add("Black"); chFgColor.add("Red"); chFgColor.add("Green");
 chFont.add("TimesRoman"); chFont.add("Helvetica"); 
chFont.add("Courier");
 lbBgColor = new 
Label("Background color"); lbFgColor = new Label("Foreground color"); lbFont = 
new Label("Font");
 pBgColor.add(lbBgColor); 
pBgColor.add(chBgColor);
 pFgColor.add(lbFgColor); 
pFgColor.add(chFgColor);
 pFont.add(lbFont); 
pFont.add(chFont); } 
 public void paint(Graphics 
g) { Dimension dimAppWndDimension = getSize(); g.drawRect(0, 0, dimAppWndDimension.width 
- 1, dimAppWndDimension.height - 1);
 
super.paint(g); }
 public boolean action(Event 
evt, Object obj) { Choice ch; 
 if(evt.target 
instanceof Choice) { ch = (Choice)evt.target;
 
if(evt.target.equals(chBgColor)) { if(ch.getSelectedIndex() == 0) pControlled.setBackground( 
Color.yellow);
 else if(ch.getSelectedIndex() 
== 1) pControlled.setBackground( Color.green);
	
else if(ch.getSelectedIndex() == 2) pControlled.setBackground( Color.white); } 
else if(evt.target.equals(chFgColor)) { if(ch.getSelectedIndex() == 0) pControlled.setForeground( 
Color.black);
 else if(ch.getSelectedIndex() 
== 1) pControlled.setForeground( Color.red);
	
else if(ch.getSelectedIndex() == 2) pControlled.setForeground( Color.green); } 
else if(evt.target.equals(chFont)) { if(ch.getSelectedIndex() == 0) ((FirstPanel)pControlled).szFontName 
= "TimesRoman";
 else if(ch.getSelectedIndex() 
== 1) ((FirstPanel)pControlled).szFontName = "Helvetica";
	
else if(ch.getSelectedIndex() == 2) ((FirstPanel)pControlled).szFontName = "Courier"; 
} else { return false; } pControlled.repaint();
 
return true; } return false; } }
class 
ControlPanel extends Panel { Button btNext; Button btPrev; Button btBgColor; Button 
btFgColor; Button btFont; Panel pCard;
 
public ControlPanel(Panel pCardPanel) { pCard = pCardPanel; setLayout(new GridLayout(2,3));
 btBgColor = new Button("Background Color"); btFgColor 
= new Button("Foreground Color"); btFont = new Button("Set Font"); btNext = new 
Button("Next"); btPrev = new Button("Prev");
 
add(btBgColor); add(btFgColor); add(btFont); add(btNext); add(btPrev); }
 public boolean action(Event evt, Object obj) { if(evt.target 
instanceof Button) { if(evt.target.equals(btBgColor)) { ((CardLayout)pCard.getLayout()).show( 
pCard, "BgColor"); } else if(evt.target.equals(btFgColor)) { ((CardLayout)pCard.getLayout()).show( 
pCard, "FgColor"); } else if(evt.target.equals(btFont)) { ((CardLayout)pCard.getLayout()).show( 
pCard, "Font"); } else if(evt.target.equals(btNext)) { ((CardLayout)pCard.getLayout()).next( 
pCard); } else if(evt.target.equals(btPrev)) { ((CardLayout)pCard.getLayout()). 
previous(pCard); } else { return false; } return true; } return false; } }

Исходный текст документа HTML, созданный для аплета Options системой Java WorkShop, представлен в листинге 2.

Листинг 2. Файл Options.tmp.html

<applet 
name="Options" code="Options" codebase= "file:/E:/Sun/Articles/vol8/src/Options" 
width="500" height="600" align="Top" alt="If you had a java-enabled browser, you 
would see an applet here."> <hr>If your browser recognized the applet 
tag, you would see an applet here.<hr> </applet>
Назад Вперед
Машиностроительное черчение, инженерная графика, начертательная геометрия. Выполнение контрольной