十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
1:设置一个boolean变量,响应button事件后,
东区网站建设公司成都创新互联,东区网站设计制作,有大型网站制作公司丰富经验。已为东区1000+提供企业网站建设服务。企业网站搭建\外贸网站建设要多少钱,请找那个售后服务好的东区做网站的公司定做!
falg = !falg
if(falg) {
button.setText("click me");
} else {
button.setText("click me again");l
}
2:设置颜色为黄色,当然用你的Grapics,代码如下:
Grapics g = getGrapics;
g.setCloro(Cloro.(黄色,我不知道怎么拼写));
g.drawline(int x,int y,int i,int j) //括号里面有参数,自己查看sdk,我没环境,写不出来。应该是这样!
g.drawline(int x,int y,int i,int j)
g.drawline(int x,int y,int i,int j)
g.drawline(int x,int y,int i,int j)
g.drawline(int x,int y,int i,int j)
g.drawline(int x,int y,int i,int j)
3:也是通过Grapics来画,getGrapics就可以了。
4:没明白你的意思,应该是说获取html里的prarm吧?然后在根据prarm的值设置某些东西吧?
getParamXXX() //xxx忘了怎么写,用IDE就不用记,阴文很烂的。
《英魂之刃》,我是最近听说出了自走棋被我朋友拉过来一起玩的,一开始玩不懂,不太爱玩后面我朋友教我玩,才发现原来挺有趣的,首先是这个自走棋比刀塔自走棋的时间短,操作也非常简单。游戏使用了独创的六边形棋盘,还原策略战棋类玩法初始体验的同时,也提升了游戏的策略维度。
这是我刚接触JAVa时写的,想法一样,可以参考一下。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Shape_page extends WindowAdapter implements ActionListener,ItemListener{
private JFrame frame;
private Panel p,p1,p2;
private JLabel title;
private JCheckBox area,perimeter;
private ButtonGroup bg;
private JRadioButton b,b1,b2;
private ButtonGroup bg1;
boolean isSelect=false;
static String index="";
public Shape_page(){
Font s=new Font("宋体",Font.BOLD,16);
UIManager.put("Label.font",s);
//UIManager.put("JRadioButton.font",s);
UIManager.put("Button.font",s);
frame=new JFrame();
p=new Panel();
p1=new Panel();
p2=new Panel();
title=new JLabel("图形面积与周长计算器");
area=new JCheckBox("面积");
perimeter=new JCheckBox("周长");
b=new JRadioButton("三角形");
b1=new JRadioButton("圆形");
b2=new JRadioButton("矩形");
b.addActionListener(this);
b1.addActionListener(this);
b2.addActionListener(this);
area.addItemListener(this);
perimeter.addItemListener(this);
bg=new ButtonGroup();
bg.add(area);
bg.add(perimeter);
bg1=new ButtonGroup();
bg1.add(b);
bg1.add(b1);
bg1.add(b2);
frame.setLayout(new GridLayout(3,1));
frame.addWindowListener(this);
frame.add(p);
frame.add(p2);
frame.add(p1);
p.add(title);
p1.add(b);
p1.add(b1);
p1.add(b2);
p2.add(area);
p2.add(perimeter);
frame.setSize(300,200);
frame.setVisible(true);
frame.setResizable(false);
}
public void actionPerformed(ActionEvent e){
if(index.isEmpty()){
JOptionPane.showMessageDialog(frame,"必须要先选择计算的类型");
return ;
}
String str=e.getActionCommand();
if(str.equals("三角形"))
new Triangle();
else if(str.equals("圆形"))
new Circular();
else if(str.equals("矩形"))
new Rectangle();
}
public void itemStateChanged(ItemEvent e) {
JCheckBox check=(JCheckBox)e.getItem();
String str=check.getText();
if(str.equals("面积"))
index="面积";
else if(str.equals("周长"))
index="周长";
}
public void windowsClosing(WindowEvent e){
System.exit(0);
}
public static void main(String[] args) {
new Shape_page();
}
}
abstract class Shape{
public abstract double getArea();
public abstract double Perimeter();
}
class Circular extends Shape implements ActionListener{
private double IP=3.141592654;
private double r;
private JFrame frame;
private Panel p,p1,p2,p3;
private JLabel title,output;
private JLabel jl,jl1;
private JButton right,Cancel;
private JTextField t;
Circular(){
frame=new JFrame();
frame.setLayout(new GridLayout(4,1));
title=new JLabel("圆形"+Shape_page.index+"计算器");
output=new JLabel("所输入的圆形的"+Shape_page.index+"为");
right=new JButton("确定");
Cancel=new JButton("取消");
jl=new JLabel("圆的半径:");
jl1=new JLabel("a");
t=new JTextField(4);
p=new Panel();
p1=new Panel();
p2=new Panel();
p3=new Panel();
p.add(title);p1.add(jl);
p1.add(jl1);p1.add(t);
p2.add(output);p3.add(right);
p3.add(Cancel);
right.addActionListener(this);
Cancel.addActionListener(this);
frame.add(p);
frame.add(p1);
frame.add(p2);
frame.add(p3);
frame.setSize(450,250);
frame.setVisible(true);
frame.setResizable(false);
}
public double getArea(){
return IP*r*r;
}
public double Perimeter(){
return 2*IP*r;
}
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()==right){
r=Double.parseDouble(t.getText());
if(Shape_page.index.equals("面积"))
output.setText("所输入的形圆的面积为"+String.valueOf(getArea()));
else
output.setText("所输入的圆形的周长为"+String.valueOf(Perimeter()));
}
else
t.setText("");
}
}
class Triangle extends Shape implements ActionListener{
private double a1;
private double a2;
private double a3;
private JFrame frame;
private Panel p,p1,p2,p3;
private JLabel title,output;
private JLabel jl,jl1,jl2,jl3;
private JButton right,Cancel;
private JTextField t,t1,t2;
Triangle (){
frame=new JFrame();
frame.setLayout(new GridLayout(4,1));
title=new JLabel("三角形"+Shape_page.index+"计算器");
output=new JLabel("所输入的三角形的"+Shape_page.index+"为");
right=new JButton("确定");
Cancel=new JButton("取消");
jl=new JLabel("三角形的三条边:");
jl1=new JLabel("a");
t=new JTextField(4);
jl2=new JLabel("b");
t1=new JTextField(4);
jl3=new JLabel("c");
t2=new JTextField(4);
p=new Panel();
p1=new Panel();
p2=new Panel();
p3=new Panel();
p.add(title);p1.add(jl);
p1.add(jl1);p1.add(t);
p1.add(jl2);p1.add(t1);
p1.add(jl3);p1.add(t2);
p2.add(output);p3.add(right);
p3.add(Cancel);
right.addActionListener(this);
Cancel.addActionListener(this);
frame.add(p);
frame.add(p1);
frame.add(p2);
frame.add(p3);
frame.setSize(450,250);
frame.setVisible(true);
frame.setResizable(false);
}
public boolean isTriangle(){
if(a1+a2a3a1+a3a2a2+a3a1)
return true;
else
return false;
}
public double getArea(){
double a=(a1+a2+a3)/2.0;
double area=a*(a-a1)*(a-a2)*(a-a3);
return Math.sqrt(area);
}
public double Perimeter(){
if(isTriangle())
return a1+a2+a3;
else
return 0;
}
public void actionPerformed(ActionEvent e) {
if(e.getSource()==right){
a1=Double.parseDouble(t.getText());
a2=Double.parseDouble(t1.getText());
a3=Double.parseDouble(t2.getText());
if(!isTriangle())
output.setText("所输入的数值不能构成三角形");
else{
if(Shape_page.index.equals("面积"))
output.setText("所输入的三角形的面积为"+String.valueOf(getArea()));
else
output.setText("所输入的三角形的周长为"+String.valueOf(Perimeter()));
}
}
else{
t.setText("");
t1.setText("");
t2.setText("");
}
}
}
class Rectangle extends Shape implements ActionListener{
private double a1;
private double a2;
private JFrame frame;
private Panel p,p1,p2,p3;
private JLabel title,output;
private JLabel jl,jl1;
private JButton right,Cancel;
private JTextField t,t1;
Rectangle (){
frame=new JFrame();
frame.setLayout(new GridLayout(4,1));
title=new JLabel("矩形形"+Shape_page.index+"计算器");
output=new JLabel("所输入的矩形的"+Shape_page.index+"为");
right=new JButton("确定");
Cancel=new JButton("取消");
jl=new JLabel("矩形的长");
jl1=new JLabel("宽");
t=new JTextField(4);
t1=new JTextField(4);
p=new Panel();
p1=new Panel();
p2=new Panel();
p3=new Panel();
p.add(title);p1.add(jl);
p1.add(t);p1.add(jl1);
p1.add(t1);
p2.add(output);p3.add(right);
p3.add(Cancel);
right.addActionListener(this);
Cancel.addActionListener(this);
frame.add(p);
frame.add(p1);
frame.add(p2);
frame.add(p3);
frame.setSize(450,250);
frame.setVisible(true);
frame.setResizable(false);
}
public double getArea(){
return a1*a2;
}
public double Perimeter(){
return 2*(a1+a2);
}
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()==right){
a1=Double.parseDouble(t.getText());
a2=Double.parseDouble(t1.getText());
if(Shape_page.index.equals("面积"))
output.setText("所输入的矩形的面积为"+String.valueOf(getArea()));
else
output.setText("所输入的矩形的周长为"+String.valueOf(Perimeter()));
}
else
t.setText("");
}
}
因为正方形 ,圆,椭圆求周长和面积的公式是不一样的,所以要给他们定义不一样的方法,具体的计算就按照求周长面积公式就行了。排序可以把求出来的结果放入数组中,再用想冒泡排序,快速排序,堆排序,桶排序等排序算法进行排序就行了。
用路径来画 一般用GeneralPath类来实现,给出paintComponent方法的代码,供参考
protected void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2d = (Graphics2D)g;
//正六边形数据
float r = 100; //边长
float[] x1 = {0, 0.5f*r, 1.5f*r, 2*r, 1.5f*r, 0.5f*r};
float[] y1 = {0.866f*r, 1.732f*r, 1.732f*r, 0.866f*r, 0, 0};
g2d.translate(100, 100);
GeneralPath p = new GeneralPath();
p.moveTo(x1[0], y1[0]);
for (int i = 1; i y1.length; i++) {
p.lineTo(x1[i], y1[i]);
}
p.closePath();
g2d.draw(p);
}