㈠ java编写一个图形界面程序
importjava.awt.*;
importjava.awt.event.*;
importjava.util.*;
importjavax.swing.*;
importjavax.swing.border.Border;
classMainFrameextendsJFrame{
=1L;
privateMap<String,Integer>sizes=newHashMap<String,Integer>();
privateMap<String,Integer>styles=newHashMap<String,Integer>();
privateMap<String,Integer>toppings=newHashMap<String,Integer>();
publicMainFrame(){
sizes.put("ExtraLarge",10);
sizes.put("Large",8);
sizes.put("Medium",5);
sizes.put("Small",3);
styles.put("DeepDish",20);
styles.put("Regular",10);
styles.put("ThinCrust",5);
styles.put("Chicago",3);
toppings.put("Cheese",8);
toppings.put("Tomato",7);
toppings.put("Peppers",6);
toppings.put("Peperoni",5);
this.setTitle("布局及事件处理");
this.setSize(450,350);
this.setLayout(newBorderLayout());
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JLabellblTitle=newJLabel();
lblTitle.setText("PizzeriaJuno");
lblTitle.setFont(newFont("宋体",Font.BOLD,36));
lblTitle.setHorizontalAlignment(SwingConstants.CENTER);
this.add("North",lblTitle);
JPanelbodyPanel=newJPanel();
bodyPanel.setLayout(newGridLayout(2,1));
this.add("Center",bodyPanel);
JPanellistPanel=newJPanel();
listPanel.setLayout(newGridLayout(1,3));
listPanel.setSize(200,200);
bodyPanel.add(listPanel);
BorderlineBorder=BorderFactory.createLineBorder(Color.BLACK);
JPanelsizePanel=newJPanel();
sizePanel.setLayout(newBorderLayout());
listPanel.add(sizePanel);
JLabelsizeTitle=newJLabel();
sizeTitle.setText("Sizes");
sizePanel.add("North",sizeTitle);
JListsizeList=newJList(sizes.keySet().toArray());
sizeList.setSize(100,100);
sizeList.setBorder(lineBorder);
sizeList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
sizePanel.add(sizeList);
JPanelstylePanel=newJPanel();
stylePanel.setLayout(newBorderLayout());
listPanel.add(stylePanel);
JLabelstyleTitle=newJLabel();
styleTitle.setText("Styles");
stylePanel.add("North",styleTitle);
JListstyleList=newJList(styles.keySet().toArray());
styleList.setSize(100,100);
styleList.setBorder(lineBorder);
styleList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
stylePanel.add(styleList);
JPaneltoppingPanel=newJPanel();
toppingPanel.setLayout(newBorderLayout());
listPanel.add(toppingPanel);
JLabeltoppingTitle=newJLabel();
toppingTitle.setText("Toppings");
toppingPanel.add("North",toppingTitle);
JListtoppingList=newJList(toppings.keySet().toArray());
toppingList.setSize(100,100);
toppingList.setBorder(lineBorder);
toppingPanel.add(toppingList);
JTextAreatxtResult=newJTextArea();
txtResult.setEditable(false);
bodyPanel.add(txtResult);
JPanelbottomPanel=newJPanel();
bottomPanel.setLayout(newGridLayout(1,3));
this.add("South",bottomPanel);
JLabellabel1=newJLabel("Clicktocompleteorder");
bottomPanel.add(label1);
JButtonbtnRingUp=newJButton("Ringup");
btnRingUp.addActionListener(newActionListener(){
@Override
publicvoidactionPerformed(ActionEvente){
if(sizeList.getSelectedValue()==null){
JOptionPane.showMessageDialog(MainFrame.this,"Pleaseselectsize.");
return;
}
if(styleList.getSelectedValue()==null){
JOptionPane.showMessageDialog(MainFrame.this,"Pleaseselectstyle.");
return;
}
if(toppingList.getSelectedValue()==null){
JOptionPane.showMessageDialog(MainFrame.this,"Pleaseselecttopping.");
return;
}
floattotal=0;
Stringsize=sizeList.getSelectedValue().toString();
total+=sizes.get(size);
Stringstyle=styleList.getSelectedValue().toString();
total+=styles.get(style);
Stringresult=size+"Pizza,"+style+"Style";
Object[]toppings=toppingList.getSelectedValues();
for(Objecttopping:toppings){
result+="
+"+topping.toString();
total+=MainFrame.this.toppings.get(topping.toString());
}
result+="
Total:"+total;
txtResult.setText(result);
}
});
bottomPanel.add(btnRingUp);
JButtonbtnQuit=newJButton("Quit");
btnQuit.addActionListener(newActionListener(){
@Override
publicvoidactionPerformed(ActionEvente){
MainFrame.this.dispose();
}
});
bottomPanel.add(btnQuit);
}
}
publicclassApp{
publicstaticvoidmain(String[]args){
MainFramemainFrame=newMainFrame();
mainFrame.setVisible(true);
}
}
㈡ JAVA编程题:设计三个图形类
真不知道这是考写代码还是考数学。
给你一个思路吧,定义一个抽象类表示图形,有颜色属性、粗细属性、求面积方法、比较大小的方法。
然后在定义一个类表示三角形,继承这个抽象类,三角形类有三个属性,分别表示它的三个顶点坐标。
也定义一个类表示矩形,继承抽象类,它有两个属性,分别表示它左上角和右下角的坐标。
再定义一个类表示圆形,它有两个属性,分别表示圆心和圆上任一点的坐标。
㈢ 求java图形界面树类编程源码举例。类似windows资源管理器那样的。如附图,2层2项即可。
publicvoidinit(){
ContainercontentPane=null;
=newDefaultMutableTreeNode("我的电脑");
1=newDefaultMutableTreeNode("网络");
2=newDefaultMutableTreeNode("硬盘");
1_1=newDefaultMutableTreeNode("无限");
1_2=newDefaultMutableTreeNode("有限");
2_1=newDefaultMutableTreeNode("A");
2_2=newDefaultMutableTreeNode("B");
treeNode.add(treeNode1);
treeNode.add(treeNode2);
treeNode1.add(treeNode1_1);
treeNode1.add(treeNode1_2);
treeNode2.add(treeNode2_1);
treeNode2.add(treeNode2_2);
JTreetree=newJTree(treeNode);
contentPane=getContentPane();
JPaneljp=newJPanel();
jp.add(tree);
contentPane.add(jp);
this.setSize(300,250);
this.setLocation(400,300);
this.setVisible(true);
}
㈣ 用JAVA编写个图形
public class draw_Pic{
public static void main(String args[]){
System.out.println("*");
System.out.println("**");
System.out.println("***");
System.out.println("****");
System.out.println("*****");
}
}
㈤ JAVA图形界面编程JBUtton
button1.addActionListener(new ActionListener() {//为button1绑定事件监听器
public void actionPerformed(ActionEvent e) {//重写actionPerformed方法,方法内的代码为点击后 //执行的代码
JFrame frame = new JFrame(); //实例化一个新的窗口
frame.setVisible(true);//设置为可见
frame.setBounds(200,200,200,200); //设置窗口的大小和坐标
}
});
㈥ java图形界面编程想要加背景图,就是处于所有图层最下面的,有没有什么示例代码
我之前写过一个这样的,可以给你参考
其中背景图是alarmImage
JLayeredPane alarmLayeredPane=new JLayeredPane();
JPanel jPanel=new JPanel(); //新建面板容器
JLabel jLabel=new JLabel(); //新建标签
jPanel.setBounds(0, -5, alarmImage.getIconWidth(), alarmImage.getIconHeight());//设置面板大小
jLabel=new JLabel(alarmImage); //创建具有指定图像的JLabel实例
jPanel.add(jLabel); //将标签加到面板容器中去
alarmLayeredPane.add(jPanel, alarmLayeredPane.DEFAULT_LAYER); //再将面板容器放到层次面板的底层,即背景图
㈦ 用Java编写一个绘制图形的小程序
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import javax.swing.*;
//不规则图形的绘制
public class IrregularShapeDemo extends JFrame {
GeneralPath gPath= new GeneralPath(); //GeneralPath对象实例
Point aPoint;
//构造函数
public IrregularShapeDemo() {
super("不规则图形的绘制"); //调用父类构造函数
enableEvents(AWTEvent.MOUSE_EVENT_MASK|AWTEvent.MOUSE_MOTION_EVENT_MASK); //允许事件
setSize(300, 200); //设置窗口尺寸
setVisible(true); //设置窗口可视
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时退出程序
}
public void paint(Graphics g) { //重载窗口组件的paint()方法
Graphics2D g2D = (Graphics2D)g; //获取图形环境
g2D.draw(gPath); //绘制路径
}
public static void main(String[] args) {
new IrregularShapeDemo();
}
protected void processMouseEvent(MouseEvent e) { //鼠标事件处理
if(e.getID() == MouseEvent.MOUSE_PRESSED) {
aPoint = e.getPoint(); //得到当前鼠标点
gPath = new GeneralPath(); //重新实例化GeneralPath对象
gPath.moveTo(aPoint.x,aPoint.y); //设置路径点
}
}
protected void processMouseMotionEvent(MouseEvent e) { //鼠标运动事件处理
if(e.getID() == MouseEvent.MOUSE_DRAGGED) {
aPoint = e.getPoint(); //得到当前鼠标点
gPath.lineTo(aPoint.x, aPoint.y); //设置路径
gPath.moveTo(aPoint.x, aPoint.y);
repaint(); //重绘组件
}
}
}
㈧ java图形编程
/////////////////////////
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class SimpleGUI {
JFrame f = new JFrame("简单的GUI");
JButton b = new JButton("点击我");
static boolean valid = true;
public SimpleGUI() {
f.setBounds(400, 300, 100, 100);
f.setLayout(new BorderLayout());
b.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
if(valid) {
b.setBackground(Color.RED);
} else {
b.setBackground(Color.BLUE);
}
valid = !valid;
}
});
f.add(b, BorderLayout.CENTER);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
}
public static void main(String [] args) {
new SimpleGUI();
}
}
㈨ 用JAVA写一个简单图形类
public class Test013 {
/**
* 编写一个图形类MyGraphic。 1)它有两个基本属性:图形线条的颜色String lineColor和图形的填充颜色String
* fillColor。 2)设计矩形类CRectangle,有属性double rLong和宽double rWidth, 使用方法 float
* calCircum()可以返回矩形的周长,使用方法float calSquare()可以返回矩形的面积。
* 编写方法show(),显示图形的线条颜色和填充颜色,输出面积和方法。 3)设计圆形类CCircle,定义属性:半径double
* radius,可以通过同名方法计算周长和面积。 编写方法show(),显示图形的线条颜色和填充颜色,输出面积和方法。
* 4)编写出应用程序对CRectangle类和CCircle类进行验证。 完成上述要求即可
*/
public static void main(String[] args) {
MyGraphic rectangle = new CRectangle(10, 5);
rectangle.setFillColor("紫色"); //设定矩形填充颜色
rectangle.setLineColor("白色"); //设定矩形线条颜色
rectangle.show();
System.out.println("矩形周长 = " + rectangle.calCircum());
System.out.println("矩形面积 = " + rectangle.calSquare());
MyGraphic circle = new CCircle(3);
circle.setFillColor("红色");
circle.setLineColor("黄色");
circle.show();
System.out.println("园形周长 = " + circle.calCircum());
System.out.println("园形面积 = " + circle.calSquare());
}
}
/**
* 图形类
*
*/
abstract class MyGraphic {
private String lineColor; // 图形线条的颜色
private String fillColor; // 图形的填充颜色
public String getLineColor() {
return lineColor;
}
public void setLineColor(String lineColor) {
this.lineColor = lineColor;
}
public String getFillColor() {
return fillColor;
}
public void setFillColor(String fillColor) {
this.fillColor = fillColor;
}
public MyGraphic(String lineColor, String fillColor) {
this.lineColor = lineColor;
this.fillColor = fillColor;
}
public MyGraphic() {
}
/**
* 显示图形的颜色
*/
public abstract void show();
/**
* 计算图形的周长
*/
public abstract float calCircum();
/**
* 计算图形的面积
*/
public abstract float calSquare();
}
/**
* 矩形类
*
*/
class CRectangle extends MyGraphic {
private double rLong; // 长
private double rWidth; // 宽
/**
* 通过构造函数为图形的属性赋值
*
* @param rLong
* @param rWidth
*/
public CRectangle(double rLong, double rWidth) {
this.rLong = rLong;
this.rWidth = rWidth;
}
/**
* @return 矩形的周长
*/
@Override
public float calCircum() {
return (float) (2 * (rLong + rWidth));
}
/**
* @return 矩形的面积
*/
@Override
public float calSquare() {
return (float) (rLong * rWidth);
}
@Override
public void show() {
System.out.println("矩形线条的颜色: " + super.getLineColor());
System.out.println("矩形填充颜色: " + super.getFillColor());
}
public double getrLong() {
return rLong;
}
public void setrLong(double rLong) {
this.rLong = rLong;
}
public double getrWidth() {
return rWidth;
}
public void setrWidth(double rWidth) {
this.rWidth = rWidth;
}
}
/**
* 圆形类
*
*/
class CCircle extends MyGraphic {
private double radius; // 圆形半径
public CCircle(double radius) {
this.radius = radius;
}
/**
* @return 圆形的周长
*/
@Override
public float calCircum() {
return (float) (2 * Math.PI * radius);
}
/**
* @return 圆形的面积
*/
@Override
public float calSquare() {
return (float) (Math.PI * radius * radius);
}
@Override
public void show() {
System.out.println("圆形线条的颜色: " + super.getLineColor());
System.out.println("圆形填充颜色: " + super.getFillColor());
}
public double getRadius() {
return radius;
}
public void setRadius(double radius) {
this.radius = radius;
}
}
㈩ 使用Java的GUI图形用户界面编程设计并编写一个计算器程序
进口的java.awt.BorderLayout;
进口java.awt.GridLayout中;
进口java.awt.event.ActionEvent;
进口java.awt.event.ActionListener;
进口的javax。 swing.JButton;
进口javax.swing.JFrame中;
进口javax.swing.JPanel;
进口javax.swing.JTextField中;
/ /暂时不考虑这个问题甚至添加
/ /点的第二个操作点的操作员点运算符点=结果
公共类计算器实现的ActionListener {
> JTextField的JTF =新的JTextField(10);
私人布尔追加= FALSE;
私人字符串OP1 =“0”;
私人字符串运算符=“+”;
@覆盖
公共无效的actionPerformed(ActionEvent的E){
字符串COMN = e.getActionCommand();。!
/ /处理数字
如果(“0123456789”的indexOf(COMN)= -1){
如果(追加){/ /追加
字符串温度= jtf.getText() ;
jtf.setText(温度+ COMN);
}其他{/ /替换
jtf.setText(COMN);
追加= TRUE;
/ /处理运营商
否则,如果(“+ - * /”的indexOf(COMN)= -1){
OP1 = JTF。的getText();
运算符= COMN;
追加= FALSE;
的} else if(“=”的indexOf(COMN)= -1。){
字符串OP2 = jtf.getText();
双D1 = Double.parseDouble(OP1);
双D2 = Double.parseDouble(OP2);
如果(“+”等于(操作者)。){
D1 = D1 + D2;
}否则,如果(“ - ”等于(操作员)。){
D1 = D1 - D2;
}否则,如果(“*”的equals(操作员)。){
D1 = D1 * D2;
的} else if(“/”等于(操作者)。){
D1 = D1 / D2;
jtf.setText(D1 +“”);
追加= FALSE;
}否则,如果(等于(COMN)“。”){
字符串温度= jtf.getText();
如果(temp.indexOf(“;”)== -1){
jtf.setText(温度+“。”);
追加= TRUE;
否则,如果(“+ / - ”的equals(COMN)){
字符串温度= jtf.getText();
如果(temp.startsWith(“-1”)){
JTF。的setText(temp.substring(1));
}其他{
jtf.setText(“ - ”+温度);
否则,如果(“退格”。等于(COMN)){
字符串温度= jtf.getText();
如果(temp.length()> 0){
jtf.setText(temp.substring(0,temp.length() - 1)); ..
}
的} else if(“CE”等于(COMN)| |“C”等于(COMN)){
jtf.setText(“0”);
追加= FALSE;
公众计算器(){
JFrame的JF =新的JFrame(“计算器”);
jf.add(JTF,BorderLayout.NORTH);
字串[] S1 = {“退格”,“CE”,“C”,“+”,“7”,“8”,“9”,“/”,“4”,
“5”,“6”,“*”,“1”,“2”,“3”,“ - ”,“0”,“+ / - ”,“”,。 “=”};
的JPanel JP =新的JPanel();
jf.add(JP,使用BorderLayout.CENTER);
网格布局GL =新的网格布局(5,4); jp.setLayout(GL);
JButton的[] JB =新的JButton [s1.length];
为(int i = 0;我<s1.length,我+ +){
JB [我] =新的JButton(S1由[i]);
jp.add(JB由[i]);。
JB [I] addActionListener方法,(这);
} jf.add(JP);
jtf.setEditable(假);
jf.setLocation(400,300);
jf.pack();
jf.setResizable(假);/ /设置窗口不可改变
jf.setDefaultCloseOperation(jf.EXIT_ON_CLOSE);
jf.setVisible(真);
公共静态无效的主要(字串[] args){
新的计算器();
这个函数比较简单,不知道能不能满足要求