怎麼用java畫出一個,怎麼用java畫畫

本文目錄一覽:

如何用JAVA語言畫1個記事本的圖形。。。。不需要完整的記事本,只要圖形就可以了

自己寫的望採納

import javax.swing.*;

import java.awt.*;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

public class Txt extends JFrame implements ActionListener{

BorderLayout borderLayout = new BorderLayout();

public Txt() throws ClassNotFoundException, InstantiationException, IllegalAccessException, UnsupportedLookAndFeelException{

String [] file1 ={“新建(N)” ,”打開(O)…” ,”保存  (S)”,”另存為(A)…”,”頁面設置(U)…”,”打印(P)…”,”退出(X)”};

char [] filemc ={‘N’,’O’,’S’,’A’,’U’,’P’,’X’};

String [] edit1 ={“撤銷(U)”,”剪切(T)”,”複製  (C)”,”粘貼(P)”,”刪除(L)”,”查找(F)…”,”查找下一個(N)”,”替換(R)”,”轉到(G)”,”全選(A)”,”時間 /日期(D)”};

char [] editmc ={‘U’,’T’,’C’,’P’,’L’,’F’,’N’,’R’,’G’,’A’,’D’};

String [] form1 = { ” 自動換行(W)”,”字體(F)…”};

char [] formmc = {‘W’,’F’};

UIManager.setLookAndFeel(“com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel”);

SwingUtilities.updateComponentTreeUI(this);

this.setTitle(” 記事本”);

Image im=this.getToolkit().getImage(“text1.png”);//指定一張圖片

this.setIconImage(im);

JMenuBar jmb = new JMenuBar();

jmb.setVisible(true);

this.setJMenuBar(jmb);

JMenu file = new JMenu(“文件(F)”);

JMenu edit = new JMenu(“編輯(E)”);

JMenu form = new JMenu(“格式(O)”);

JMenu view = new JMenu(“查看(V)”);

JMenu help = new JMenu(“幫助(H)”);

Font font1 = new Font(“newFot”,Font.LAYOUT_NO_LIMIT_CONTEXT,12);

file.setMnemonic(‘F’);

    file.setFont(font1);

edit.setMnemonic(‘E’);

edit.setFont(font1);

form.setMnemonic(‘O’);

form.setFont(font1);

view.setMnemonic(‘V’);

view.setFont(font1);

help.setMnemonic(‘H’);

help.setFont(font1);

jmb.add(file);

jmb.add(edit);

jmb.add(form);

jmb.add(view);

jmb.add(help);

for (int i=0;ifile1.length;i++){

JMenuItem fileItem= new JMenuItem(file1[i]);

fileItem.setBackground(Color.WHITE);

fileItem.setMnemonic(filemc[i]);

fileItem.setFont(font1);

file.add(fileItem);

if(i==3|i==5){

file.addSeparator();

}

}

for (int i=0;iedit1.length;i++){

JMenuItem editItem= new JMenuItem(edit1[i]);

editItem.setBackground(Color.WHITE);

editItem.setMnemonic(editmc[i]);

editItem.setFont(font1);

edit.add(editItem);

if(i==0|i==4|i==8){

edit.addSeparator();

}

}

for(int i=0;iform1.length;i++){

JMenuItem formItem= new JMenuItem(form1[i]);

formItem.setBackground(Color.WHITE);

formItem.setMnemonic(formmc[i]);

formItem.setFont(font1);

form.add(formItem);

}

JMenuItem view1 = new JMenuItem(“狀態欄(S)”);

view1.setMnemonic(‘S’);//設置助記符

view1.setBackground(Color.WHITE);

view1.setFont(font1);

view.add(view1);

JMenuItem helpItem1 =new JMenuItem(“幫助主題 (H)”);

helpItem1.setFont(font1);

helpItem1.setMnemonic(‘H’);

JMenuItem helpItem2 =new JMenuItem(“關於記事本(M)”);

helpItem2.setFont(font1);

helpItem2.setMnemonic(‘M’);

helpItem1.setBackground(Color.WHITE);

helpItem2.setBackground(Color.WHITE);

help.add(helpItem1);

help.addSeparator();

help.add(helpItem2);

JTextArea textArea = new JTextArea();

textArea.setFont(new Font(“textArea”,Font.TRUETYPE_FONT,20));

this.add(textArea,borderLayout.CENTER);

JScrollPane jsb1 = new JScrollPane();

jsb1.getViewport().add(textArea);

this.add(jsb1);

this.setBounds(200, 300,600, 400);

this.setVisible(true);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

/**

 * @param args

 * @throws UnsupportedLookAndFeelException

 * @throws IllegalAccessException

 * @throws InstantiationException

 * @throws ClassNotFoundException

 */

public static void main(String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException, UnsupportedLookAndFeelException {

// TODO Auto-generated method stub

Txt txt= new Txt();

}

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

}

}

在Java中如何用程序畫一個圓

使用java畫圓要用到繪圖類Graphics,下面是實例代碼和運行效果:

package com.dikea.demo01;

import java.awt.*;

import javax.swing.*;

// java繪圖原理

public class demo_01  extends JFrame {

MyPanel mp = null;

public static void main(String[] args) {

// TODO 自動生成的方法存根

demo_01 demo01 = new demo_01();

}

public demo_01(){

mp = new MyPanel();

this.add(mp);

this.setSize(400, 300);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

}

}

// 定義一個MyPanel面板,用於繪圖區域

class MyPanel extends JPanel{

//覆蓋JPanel

// Graphics 是繪圖的重要類,可以理解成一支畫筆

public void paint(Graphics g){

//  1. 調用父類函數完成初始化任務

//  這句話不可以少

super.paint(g);

// 先畫出一個圓圈

g.drawOval(100, 100, 30, 30);

}

}

代碼複製進ide編程工具,運行效果如下:

用Java如何在屏幕上(桌面上)畫出一個矩形

在java.awt.Graphics類中有繪製矩形的方法.用drawRect(int x, int y, int width, int height)方法畫出,,也可以用fillRect()畫出以當前顏色填充的矩形.

請寫出用java代碼畫一個圓

靠,樓上的回答那麼長啊,只要一個函數,就是

drawOval(int

x,int

y,int

w,int

h);

這是是畫橢圓形的函數,但是它也可以畫圓形。

比如

drawOval(100,100,50,50);

就在坐標50,50畫一個直徑100的圓,只要把,最後的2個參數設成一樣就是一個圓。要畫直徑200的話,就把最後2個參數設成200,200

一切OK了

java怎麼繪製一個正方形?

可使用Graphics 的fillRect繪製正方形,代碼如下:

import java.awt.Color;

import java.awt.Graphics;

import javax.swing.JFrame;

public class Rect extends JFrame{

Rect(){

setSize(300, 300);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setVisible(true);

}

public void paint(Graphics g){

g.setColor(Color.blue);

g.drawRect(80, 80, 50, 50);

g.fillRect(150, 150, 50, 50);

}

public static void main(String[] args) {

new Rect();

}

}

JAVA怎麼畫出一個任意大小的圓形和矩形

package test.xxl;

import java.awt.Button;

import java.awt.Color;

import java.awt.Cursor;

import java.awt.Graphics;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.MouseEvent;

import java.awt.event.MouseListener;

import javax.swing.JFrame;

public class Demo0617 extends JFrame implements MouseListener,ActionListener{

private static int x = 0 ; 

private static int y = 0 ;

private static int w = 0 ;

private static int h = 0 ;

private static Color c ;

// 真為圓,假為方

private boolean flag = false ;

private static final long serialVersionUID = 1L;

public Demo0617(){

this.setSize(440, 500) ;

this.setVisible(true) ;

this.setLayout(null) ;

this.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)) ;

this.setResizable(false);//不能改變窗體大小

this.setBackground(Color.WHITE) ;

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE) ;

this.addMouseListener(this) ;

this.getContentPane().setBackground(Color.WHITE) ;

Button b1,b2,b3,b4,b5,b6,b7,b8,b9 ;

b1 = new Button(“紅色”) ;

b1.setBounds(0, 0, 100, 30) ;

b1.setBackground(Color.RED) ;

b1.addActionListener(this) ;

this.add(b1) ;

b2 = new Button(“黑色”) ;

b2.setBounds(110, 0, 100, 30) ;

b2.setBackground(Color.BLACK) ;

b2.addActionListener(this) ;

this.add(b2) ;

b3 = new Button(“黃色”) ;

b3.setBounds(220, 0, 100, 30) ;

b3.setBackground(Color.YELLOW) ;

b3.addActionListener(this) ;

this.add(b3) ;

b4 = new Button(“藍色”) ;

b4.setBackground(Color.BLUE) ;

b4.setBounds(330, 0, 100, 30) ;

b4.addActionListener(this) ;

this.add(b4) ;

b5 = new Button(“橡皮擦”) ;

b5.setBounds(0, 40, 100, 30) ;

b5.addActionListener(this) ;

this.add(b5) ;

b6 = new Button(“撤銷”) ;

b6.setBounds(110, 40, 100, 30) ;

b6.addActionListener(this) ;

this.add(b6) ;

b7 = new Button(“全部刪除”) ;

b7.setBounds(220, 40, 100, 30) ;

b7.addActionListener(this) ;

this.add(b7) ;

b8 = new Button(“圓形”) ;

b8.setBounds(0, 80, 100, 30) ;

b8.addActionListener(this) ;

this.add(b8) ;

b9 = new Button(“矩形”) ;

b9.setBounds(110, 80, 100, 30) ;

b9.addActionListener(this) ;

this.add(b9) ;

}

/**

 * @param args

 */

public static void main(String[] args) {

new Demo0617() ;

}

@Override

public void paint(Graphics g) {

if(c == null)

c = g.getColor();

g.setColor(c);

if(flag){

g.fillOval(x, y, w, h);

} else {

g.fillRect(x, y, w, h) ;

}

}

public void clear(Graphics g){

g.setColor(Color.WHITE) ;

g.clearRect(0, 0, 440, 500) ;

}

/**

 * 單擊

 */

@Override

public void mouseClicked(MouseEvent e) {

}

/**

 * 按下

 */

@Override

public void mousePressed(MouseEvent e) {

x = e.getX() ;

y = e.getY() ;

}

/**

 * 鬆開

 */

@Override

public void mouseReleased(MouseEvent e) {

int x = e.getX() ;

int y = e.getY() ;

if(x  this.x){

w = x – this.x ;

} else {

w = this.x – x ;

}

if(y  this.y){

h = y – this.y ;

} else {

h = this.y – y ;

}

paint(getGraphics()) ;

}

/**

 * 鼠標進入事件

 */

@Override

public void mouseEntered(MouseEvent e) {

}

/**

 * 鼠標移除事件

 */

@Override

public void mouseExited(MouseEvent e) {

}

@Override

public void actionPerformed(ActionEvent e) {

switch (e.getActionCommand().hashCode()) {

case 1038352:

// 紅色

c = Color.RED ;

break;

case 1293761:

// 黑色

c = Color.BLACK ;

break;

case 1293358:

// 黃色

c = Color.YELLOW ;

break;

case 1087797:

// 藍色

c = Color.BLUE ;

break;

case 27138585:

// 橡皮擦

c = Color.WHITE ;

break ;

case 836828:

Graphics graphics = getGraphics() ;

graphics.setColor(Color.WHITE) ;

if(flag){

graphics.fillOval(x, y, w, h) ;

} else {

graphics.fillRect(x, y, w, h) ;

}

break;

case 657183940:

// 全部刪除

clear(getGraphics()) ;

break;

case 715036:

// 圓形

flag = true ;

break;

case 976025:

// 矩形

flag = false ;

break;

default:

System.out.println(e.getActionCommand().hashCode());

break ;

}

}

}

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/153408.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-11-14 03:05
下一篇 2024-11-14 03:05

相關推薦

  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發布。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Java判斷字符串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字符串中是否存在多個指定字符: 一、字符串遍歷 字符串是Java編程中非常重要的一種數據類型。要判斷字符串中是否存在多個指定字符…

    編程 2025-04-29
  • VSCode為什麼無法運行Java

    解答:VSCode無法運行Java是因為默認情況下,VSCode並沒有集成Java運行環境,需要手動添加Java運行環境或安裝相關插件才能實現Java代碼的編寫、調試和運行。 一、…

    編程 2025-04-29
  • Java任務下發回滾系統的設計與實現

    本文將介紹一個Java任務下發回滾系統的設計與實現。該系統可以用於執行複雜的任務,包括可回滾的任務,及時恢復任務失敗前的狀態。系統使用Java語言進行開發,可以支持多種類型的任務。…

    編程 2025-04-29
  • Java 8 Group By 會影響排序嗎?

    是的,Java 8中的Group By會對排序產生影響。本文將從多個方面探討Group By對排序的影響。 一、Group By的概述 Group By是SQL中的一種常見操作,它…

    編程 2025-04-29

發表回復

登錄後才能評論