📄 iconframe.java
字号:
import java.awt.*;import ImageDisplay;import Tile;import ImageFrame;public class IconFrame extends Frame { ImageDisplay iconDisplay; Panel panel; Scrollbar scroll; Button button1, button2, button3, button4, button5, button6; Tile[] tiles; int tileNum; public IconFrame(String title, int tileCount, Tile[] ts) { super(title); tiles = ts; tileNum = tileCount; iconDisplay = new ImageDisplay(5, 80, tileNum); /* the icon images will be added by MapDemo, because we cannot call getImage() here */ setLayout(new BorderLayout()); resize(800, 400); button1 = new Button("Show on Entire Layer Map"); button2 = new Button("Show on Entire Composite Map"); button3 = new Button("Display Selected Layer Tiles"); button4 = new Button("Display Selected Composite Tiles"); button5 = new Button("Show Information on Selected Tiles"); button6 = new Button("Dismiss"); panel = new Panel(); panel.setLayout(new GridLayout(6, 1, 3, 3)); panel.add(button1); panel.add(button2); panel.add(button3); panel.add(button4); panel.add(button5); panel.add(button6); scroll = new Scrollbar(Scrollbar.VERTICAL); scroll = new Scrollbar(Scrollbar.VERTICAL, 0, 1, 0, 100); scroll.setLineIncrement(1); scroll.setPageIncrement(5); add("West", panel); add("Center", iconDisplay); add("East", scroll); } public int getSelectedNum() { /* returns the number of selected icons */ return iconDisplay.selectedList.size(); } public Tile getTile(String name) { /* returns a tile given its tileName */ for (int i = 0; i < tileNum; i++) if (tiles[ i ].tileName.equals(name)) return tiles[ i ]; return null; } public boolean handleEvent(Event evt) { if (evt.target == scroll) iconDisplay.scroll(((Integer)evt.arg).intValue()); return super.handleEvent(evt); } public boolean action(Event evt, Object arg) { if (evt.target instanceof Button) for (int i = 0; i < getSelectedNum(); i++) { Tile tile = getTile((String)iconDisplay.selectedList.elementAt(i)); System.out.println(tile.tileName); System.out.println(tile.imageFileName + " "+ tile.compositeNum); if (evt.target == button1) new ImageFrame(tile, ImageFrame.ENTIRE_RED, -1); if (evt.target == button2) new ImageFrame(tile, ImageFrame.ENTIRE_COMP, -1); if (evt.target == button3) new ImageFrame(tile, ImageFrame.RED, -1); if (evt.target == button4) for (int j = 0; j < tile.compositeNum; j++) ImageFrame imageFrame = new ImageFrame(tile, ImageFrame.COMP, j); if (evt.target == button5) System.out.println(tile.tileName + "\n" + tile.information.toString()); } if (evt.target == button6) { this.hide(); this.dispose(); } return false; } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -