this.getContentPane().add(myPanel);
}
public static void main(String[] args) { MyFrame myFrame = new MyFrame(); }
myFrame.setTitle(\
myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); myFrame.setSize(200,200); myFrame.setVisible(true);
}
class MyPanel extends JPanel {
public void paintComponent( Graphics g) {
super.paintComponent(g);
int j=0;
char[ ] b={ '每', '个', '字', '的', '颜', '色', '都', '不', '同', '!'}; for(int i=0; i < b.length; i++) {
int red=188, green=220,blue=99;
g.setColor( new Color(red,green,blue)); g.drawString(\ j+=15;
red=(red+35)%6; green=(green+55)%6; blue=(blue+85)%6; }
}
}
掌握:(1)画直线(2)画长方形、画正方形(3)画圆、画椭圆、画扇形、画弧 10. 编写Java程序,实现如图所示的图形界面:
提示:将程序窗口的右上的1/4区域用红色画成实心的长方形;将小程序窗口的左下的1/4区域用蓝色画成实心的长方形。
(考察知识点:实心长方形绘制,填充颜色) @程序
import java.awt.*; import javax.swing.*;
class MyFrame extends JFrame { }
class MyPanel extends JPanel {
public void paintComponent( Graphics g) { int w=getSize().width; int h=getSize().height; }
g.setColor(Color.red); g.setColor(Color.blue); }
g.fillRect(w/2,0,w/2,h/2); g.fillRect(0,h/2,w/2,h/2);
public MyFrame() {
MyPanel myPanel = new MyPanel(); this.getContentPane().add(myPanel);
}
public static void main(String[] args) { }
MyFrame myFrame = new MyFrame();
myFrame.setTitle(\
myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); myFrame.setSize(200,200); myFrame.setVisible(true);
}
11. 请编写一个Application,实现如图所示的图形界面:
提示:在窗口中用绿色画一个左上角坐标为 (10,10)、高为90、宽为110的矩形框;然后画内切于该矩形的红色椭圆。
(知识点考察:绘制指定颜色的透明矩形和椭圆) @程序
import java.awt.*; import javax.swing.*;
class MyFrame extends JFrame { }
class MyPanel extends JPanel {
public void paintComponent( Graphics g) { super.paintComponent(g);
g.setColor( Color.green); g.setColor( Color.red);
g.drawRect(10,10,110,90); g.drawOval(10,10,110,90);
public MyFrame() {
MyPanel myPanel = new MyPanel(); this.getContentPane().add(myPanel);
}
public static void main(String[] args) { }
MyFrame myFrame = new MyFrame();
myFrame.setTitle(\
myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); myFrame.setSize(200,200); myFrame.setVisible(true);
}
}
12. 请编写一个Application,其功能为:在窗口中先画一条从坐标(100,100)到坐标(200,100)的绿线;然后以该线起点为圆心,画半径为50,边框为红色的圆。界面效果如图所示:
(知识点考察:绘制坐标轴,按照规定的圆心和半径绘制圆) @程序
import java.awt.*; import javax.swing.*;
class MyFrame extends JFrame { }
class MyPanel extends JPanel {
public void paintComponent( Graphics g) { super.paintComponent(g);
g.setColor(Color.green); g.setColor(Color.red);
g.drawLine(100,100,200,100); g.drawOval(50,50,100,100);
public MyFrame() {
MyPanel myPanel = new MyPanel(); this.getContentPane().add(myPanel);
}
public static void main(String[] args) { }
MyFrame myFrame = new MyFrame();
myFrame.setTitle(\
myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); myFrame.setSize(200,200); myFrame.setVisible(true);
} }
13. 请编写一个实现如下功能的Application:在窗口中从60°开始逆时针画一个30°的绿色扇形,并令其内切于左上角坐标为 (100,60)、长为110、宽为90的矩形区域。 (知识点考察:按照要求绘制扇形和矩形) @程序
import java.awt.*;
import javax.swing.*;
class MyFrame extends JFrame {
public MyFrame() {
MyPanel myPanel = new MyPanel(); this.getContentPane().add(myPanel);
}
public static void main(String[] args) {
}
}
MyFrame myFrame = new MyFrame();
myFrame.setTitle(\
myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); myFrame.setSize(200,200); myFrame.setVisible(true);
class MyPanel extends JPanel {
public void paintComponent( Graphics g) {
super.paintComponent(g);
g.setColor(Color.green);
g.fillArc(100,60,90,110,60,30); }
}
掌握:事件处理
14. 编写Application, 其中包含两个按钮:按钮上的标签分别为“确定”和“取消”。当点击“确定” 按钮时,在坐标(20,80)处,用绿色显示点击“确定”按钮的次数;当点击“取消” 按钮时,在坐标(20,100)处,用红色显示点击“取消”按钮的次数(要求“确定”和“取消”的次数同时显示)。 界面效果如图所示:
(知识点考察:字符串颜色的设置,按钮的事件处理过程) @程序
import java.awt.*; import java.awt.event.*;
import javax.swing.*;
class MyFrame extends JFrame implements ActionListener {