import java.awt.*;

成都創(chuàng)新互聯(lián)長期為千余家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為清遠企業(yè)提供專業(yè)的做網(wǎng)站、成都網(wǎng)站設(shè)計,清遠網(wǎng)站改版等技術(shù)服務(wù)。擁有10年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
import java.awt.event.*;
import java.awt.geom.*;
import javax.swing.*;
//不規(guī)則圖形的繪制
public class IrregularShapeDemo extends JFrame {
GeneralPath gPath= new GeneralPath(); //GeneralPath對象實例
Point aPoint;
//構(gòu)造函數(shù)
public IrregularShapeDemo() {
super("不規(guī)則圖形的繪制"); //調(diào)用父類構(gòu)造函數(shù)
enableEvents(AWTEvent.MOUSE_EVENT_MASK|AWTEvent.MOUSE_MOTION_EVENT_MASK); //允許事件
setSize(300, 200); //設(shè)置窗口尺寸
setVisible(true); //設(shè)置窗口可視
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //關(guān)閉窗口時退出程序
}
public void paint(Graphics g) { //重載窗口組件的paint()方法
Graphics2D g2D = (Graphics2D)g; //獲取圖形環(huán)境
g2D.draw(gPath); //繪制路徑
}
public static void main(String[] args) {
new IrregularShapeDemo();
}
protected void processMouseEvent(MouseEvent e) { //鼠標(biāo)事件處理
if(e.getID() == MouseEvent.MOUSE_PRESSED) {
aPoint = e.getPoint(); //得到當(dāng)前鼠標(biāo)點
gPath = new GeneralPath(); //重新實例化GeneralPath對象
gPath.moveTo(aPoint.x,aPoint.y); //設(shè)置路徑點
}
}
protected void processMouseMotionEvent(MouseEvent e) { //鼠標(biāo)運動事件處理
if(e.getID() == MouseEvent.MOUSE_DRAGGED) {
aPoint = e.getPoint(); //得到當(dāng)前鼠標(biāo)點
gPath.lineTo(aPoint.x, aPoint.y); //設(shè)置路徑
gPath.moveTo(aPoint.x, aPoint.y);
repaint(); //重繪組件
}
}
}
用java編寫一個圖形化界面小程序,swing窗體定義4個標(biāo)簽對象,分別是:用戶名、輸入料號數(shù)量、掃描條碼等。另外定義兩個按鈕對象(確定、取消)
上面這些你肯定會的
至于
用戶點擊確定按鈕功能之后把以上數(shù)據(jù)(用戶名、料號數(shù)量、條碼、還有用戶操作日期)統(tǒng)計在excel表中
如果本地測試的話,就新建一個excel,可以搜索相關(guān)java操作excel的代碼,有jxl和poi,
首先查找設(shè)定的excel名字,如果沒有創(chuàng)建一個;
還可以保存到數(shù)據(jù)庫,提供實時導(dǎo)出excel
給你個計算器的,
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.text.DecimalFormat;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class Calculator {
//計算器面板
private JFrame f = new JFrame("Calculator");
//輸入面扳
private JPanel inputPanel = new JPanel();
//加減乘除面板
private JPanel operationPanel = new JPanel();
//數(shù)字面板
private JPanel buttonsPanel = new JPanel();
//輸入數(shù)據(jù)文本框
private JTextField input = new JTextField(20);
//退格鍵
private JButton backspace = new JButton("BackSpace");
//清空
private JButton CE = new JButton("CE ");
//刪除
private JButton C = new JButton("C ");
//四則運算符號鍵
private JButton add = new JButton("+");
private JButton sub = new JButton("-");
private JButton mul = new JButton("*");
private JButton div = new JButton("/");
//小數(shù)點
private JButton decimal = new JButton(".");
//等號
private JButton equal = new JButton("=");
//數(shù)字鍵
private JButton zero = new JButton("0");
private JButton one = new JButton("1");
private JButton two = new JButton("2");
private JButton three = new JButton("3");
private JButton four = new JButton("4");
private JButton five = new JButton("5");
private JButton six = new JButton("6");
private JButton seven = new JButton("7");
private JButton eight = new JButton("8");
private JButton nine = new JButton("9");
private String num1 = "";//保存第一個運算數(shù)字
private String operator = "";//保存運算符號
public static void main(String[] args) {
new Calculator();//new計算器實例
}
public Calculator(){
//添加組件,布局
inputPanel.add(input);
f.add(inputPanel, BorderLayout.NORTH);
operationPanel.add(backspace);
operationPanel.add(CE);
operationPanel.add(C);
f.add(operationPanel, BorderLayout.CENTER);
buttonsPanel.add(add);
buttonsPanel.add(sub);
buttonsPanel.add(mul);
buttonsPanel.add(div);
buttonsPanel.add(one);
buttonsPanel.add(two);
buttonsPanel.add(three);
buttonsPanel.add(zero);
buttonsPanel.add(four);
buttonsPanel.add(five);
buttonsPanel.add(six);
buttonsPanel.add(decimal);
buttonsPanel.add(seven);
buttonsPanel.add(eight);
buttonsPanel.add(nine);
buttonsPanel.add(equal);
buttonsPanel.setLayout(new GridLayout(4, 4));
f.add(buttonsPanel, BorderLayout.SOUTH);
//注冊各個組件監(jiān)聽事件
backspace.addMouseListener(new OperationMouseListener());
CE.addMouseListener(new OperationMouseListener());
C.addMouseListener(new OperationMouseListener());
decimal.addMouseListener(new OperationMouseListener());
equal.addMouseListener(new OperationMouseListener());
//注冊四則運算監(jiān)聽
add.addMouseListener(new CalcMouseListener());
sub.addMouseListener(new CalcMouseListener());
mul.addMouseListener(new CalcMouseListener());
div.addMouseListener(new CalcMouseListener());
//注冊數(shù)字監(jiān)聽事件
zero.addMouseListener(new NumberMouseListener());
one.addMouseListener(new NumberMouseListener());
two.addMouseListener(new NumberMouseListener());
three.addMouseListener(new NumberMouseListener());
four.addMouseListener(new NumberMouseListener());
five.addMouseListener(new NumberMouseListener());
six.addMouseListener(new NumberMouseListener());
seven.addMouseListener(new NumberMouseListener());
eight.addMouseListener(new NumberMouseListener());
nine.addMouseListener(new NumberMouseListener());
f.setVisible(true);
f.pack();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private class NumberMouseListener implements MouseListener{
public void mouseClicked(MouseEvent e) {
if(input.getText().trim().equals("0")){//如果文本框已經(jīng)是0,結(jié)果還是0
input.setText(((JButton)e.getSource()).getText().trim());
}else{//否則的話,把0添加到后面,譬如文本框是1,結(jié)果就為10
input.setText(input.getText().concat(((JButton)e.getSource()).getText().trim()));
}
}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
public void mousePressed(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {}
}
private class CalcMouseListener implements MouseListener{
//如果輸入的是運算符號,保存第一個結(jié)果和運算符號
public void mouseClicked(MouseEvent e) {
num1 = input.getText().trim();input.setText("");
operator = ((JButton)e.getSource()).getText().trim();
}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
public void mousePressed(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {}
}
private class OperationMouseListener implements MouseListener{
public void mouseClicked(MouseEvent e) {
if(e.getSource() == backspace){//退格鍵,刪除一個直到?jīng)]有字符刪除
String inputText = input.getText();
if(inputText.length() 0){
input.setText(inputText.substring(0, inputText.length() - 1));
}
}else if(e.getSource() == C){
input.setText("0");//C,清空所有運算數(shù)字和符號
num1 = "";
}else if(e.getSource() == CE){
input.setText("0");//CE--將文本框置為0
}else if(e.getSource() == decimal){
String text = input.getText().trim();
//如果按了小數(shù)點,如果文本框已經(jīng)有小數(shù)點,不做任何操作,否則在結(jié)果后面加上小數(shù)點
if(text.indexOf(".") == -1){
input.setText(text.concat("."));
}
}else if(e.getSource() == equal){
//如果是等號
if(!operator.trim().equals("")){
if(!input.getText().trim().equals("")){
double result = 0D;
if(operator.equals("+")){//執(zhí)行加法運算
result = Double.parseDouble(num1) + Double.parseDouble(input.getText().trim());
}else if(operator.equals("-")){//減法運算
result = Double.parseDouble(num1) - Double.parseDouble(input.getText().trim());
}else if(operator.equals("*")){//乘法運算
result = Double.parseDouble(num1) * Double.parseDouble(input.getText().trim());
}else if(operator.equals("/")){//除法運算
result = Double.parseDouble(num1) / Double.parseDouble(input.getText().trim());
}
//格式化最終結(jié)果,保留兩位小數(shù)點
input.setText(new DecimalFormat("0.00").format(result));
}
}
}
}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
public void mousePressed(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {}
}
}
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class test extends JFrame { private static final long serialVersionUID = 1L;
public static void main(String args[]) {
test frame = new test();
frame.setVisible(true);
}
public test() {
super();
getContentPane().setLayout(null);
setBounds(100, 100, 236, 193);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
final JLabel label = new JLabel();
label.setText("0");
label.setBounds(62, 33, 79, 18);
getContentPane().add(label);
final JButton button = new JButton();
button.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent e) {
label.setText(String.valueOf((Integer.valueOf(label.getText())+1)));
}
});
button.setText("點擊");
button.setBounds(50, 93, 106, 28);
getContentPane().add(button);
}
}
/*計算器*/
import java.awt.*;
import javax.swing.*;
import javax.swing.border.*;
import java.awt.event.*;
public class Calculator implements ActionListener{
JFrame frame;
JPanel panel;
JTextField tfShow;/*定義顯示文本框*/
JButton b1[]=new JButton[10]; /*數(shù)字按鈕*/
JButton b2[]=new JButton[6]; /*操作按鈕*/
boolean isNumber;/*判斷是否輸入多位數(shù)字的變量*/
double number;/*存儲輸入數(shù)值、顯示結(jié)果的變量*/
double result;/*存儲中間運算結(jié)果的變量*/
char operator;/*存儲當(dāng)前操作符的成員變量*/
public Calculator(){
frame=new JFrame("計算器");
frame.setSize(300,300);/*指定框架窗口的大小*/
frame.setResizable(false);/*使框架窗口不可改變大小*/
JPanel contentPane=(JPanel)frame.getContentPane();
contentPane.setBorder(new EmptyBorder(20,20,20,20));/*繪制框架的指定大小的空透明邊框*/
tfShow=new JTextField("0",25);/*指定屬性的文本域*/
tfShow.setHorizontalAlignment(JTextField.RIGHT);/*設(shè)置文本域中文本的對齊方式*/
isNumber=true;/*初始值設(shè)置*/
number=0;/*初始值設(shè)置*/
result=0;/*初始值設(shè)置*/
operator=' ';/*初始值設(shè)置*/
for(int i=0;ib1.length;i++){
b1[i]=new JButton(Integer.toString(i));/*創(chuàng)建數(shù)字按鈕*/
b1[i].setActionCommand(Integer.toString(i));
b1[i].addActionListener(this);
b1[i].setForeground(Color.blue);
}
String bs[]={"/","*","-","C","+","="};
for(int i=0;ib2.length;i++){
b2[i]=new JButton(bs[i]);/*創(chuàng)建操作按鈕*/
b2[i].setActionCommand(bs[i]);
b2[i].addActionListener(this);
b2[i].setForeground(Color.red);
}
panel=new JPanel();
panel.setLayout(new GridLayout(4,5));
panel.add(b1[1]);
panel.add(b1[2]);
panel.add(b1[3]);
panel.add(b2[0]);
panel.add(b1[4]);
panel.add(b1[5]);
panel.add(b1[6]);
panel.add(b2[1]);
panel.add(b1[7]);
panel.add(b1[8]);
panel.add(b1[9]);
panel.add(b2[2]);
panel.add(b1[0]);
panel.add(b2[3]);
panel.add(b2[4]);
panel.add(b2[5]);
frame.add(tfShow,BorderLayout.NORTH);/*將文本框放置在框架上方*/
frame.add(panel,BorderLayout.CENTER);/*將裝有按鈕組的panel放在框架的中心*/
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/*設(shè)置框架窗口的默認(rèn)窗口關(guān)閉操作*/
frame.setVisible(true);/*設(shè)置框架可見*/
}
public double getDisplay(){/*返回要顯示的結(jié)果*/
return number;
}
public void reDisplay(){/*刷新文本域的內(nèi)容*/
tfShow.setText(""+getDisplay());
}
/*對輸入數(shù)字的處理*/
public void numberProcess(int num){
if(isNumbernum!=0){
String s1=Integer.toString(num);
String s2=Integer.toString((int)(this.number));
this.number=Double.parseDouble(s2+s1);/*對多位數(shù)字的處理*/
}else{
this.number=num;
}
isNumber=true;/*輸入連續(xù)數(shù)字(即多位數(shù)字)時為真*/
}?
public void operationProcess(char operator){/*根據(jù)輸入的操作符改變當(dāng)前操作符*/
switch(operator){
case '-':
this.operator='-';
break;
case '+':
this.operator='+';
break;
case '*':
this.operator='*';
break;
case '/':
this.operator='/';
break;
}
result=number;
isNumber=false;/*輸入操作符時表示輸入連續(xù)數(shù)字的標(biāo)記變量為假*/
}?
public void clear(){
number=0;
result=0;
}??
public void equal(){/*計算運算結(jié)果*/
switch(operator){
case '-':
result=result-number;
break;
case '+':
result=result+number;
break;
case '*':
result=result*number;
break;
case '/':
result=result/number;
break;
case ' ':
result=number;
break;
}
number=result; /*把運算結(jié)果賦值給顯示變量*/
isNumber=false;
operator=' ';?
}?
public static void main(String args[]){
Calculator cal=new Calculator();/*創(chuàng)建計算器*/
}
public void actionPerformed(ActionEvent e){
String command=e.getActionCommand();/*獲取按鈕激發(fā)的操作事件的命令名稱*/
char c=command.charAt(0);/*將按鈕命令名稱的第一個字符賦值給一個字符c*/
switch(c){
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
case '0':
int number=Integer.parseInt(command);
numberProcess(number);/*輸入數(shù)字的處理*/
break;
case '+':
case '-':
case '*':
case '/':
operationProcess(c);/*算數(shù)運算符的處理*/
break;
case '=':equal();break;/*計算運算結(jié)果*/
case 'C':clear();break;/*清零*/
}
reDisplay(); /*在文本域中顯示信息*/
}
}
運行截圖:
import?java.applet.Applet;
import?java.awt.Button;
import?java.awt.Color;
import?java.awt.Graphics;
import?java.awt.TextField;
import?java.awt.event.ActionEvent;
public?class?Nicki?extends?Applet{
private?static?final?long?serialVersionUID?=?1L;
private?Button?ok;
private?int?num=32;
private?int?resu=0;
private?boolean?isRig=false;
private?TextField?iPut;
public?Nicki(){
this.setLayout(null);
ok=new?Button("OK");
ok.setActionCommand(getName());
ok.setBounds(150,?150,?40,?20);
iPut=new?TextField();
this.add(iPut);
iPut.setBounds(100,?150,?40,?20);
this.add(ok);
ok.addActionListener(new?ButtonAction(this));
}
public?void?paint(Graphics?g){
g.setColor(Color.white);
g.fillRect(0,?0,?this.getWidth(),?this.getHeight());
g.setColor(Color.BLACK);
g.drawString("Please?guess?a?number?",?10,?20);
g.drawString("between?1?and?100",?10,?40);
if(isRig==falseresu!=0){
if(resunum){
g.drawString(""+resu+"?is?too?big?!",?10,?100);
}else?if(resunum){
g.drawString(resu+"is?too?small?!",?10,?100);
}
}else?if(isRig==true){
g.setColor(Color.GREEN);
g.drawString("Yes,"+resu+"?is?the?right?number",?10,?80);
g.drawString("Your?are?great!?",?10,?100);
g.setColor(Color.red);
g.drawString(resu+"!",?70,?120);
}
iPut.setText("");
g.drawString("Input?the?number:",?0,?150);
}
public?void?ButtonActionPerformed(ActionEvent?e){
if(e.getActionCommand().equals("panel0")){
resu=Integer.parseInt(iPut.getText());
if(num==resu){
isRig=true;
}else{
isRig=false;
}
repaint();
}
}
}
class?ButtonAction?implements?java.awt.event.ActionListener{
Nicki?su;
public?ButtonAction(Nicki?bun){
this.su=bun;
}
public?void?actionPerformed(ActionEvent?e)?{
su.ButtonActionPerformed(e);
}
}
標(biāo)題名稱:java圖形小程序源代碼 java簡單圖形代碼
地址分享:http://chinadenli.net/article14/hghpge.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站、面包屑導(dǎo)航、網(wǎng)站導(dǎo)航、網(wǎng)站建設(shè)、云服務(wù)器、網(wǎng)站改版
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)