java多彩圆圈代码,编程彩色的圆圈

在Java中如何用程序画一个圆

使用java画圆要用到绘图类Graphics,下面是实例代码和运行效果:

创新互联主要从事成都做网站、成都网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务青海,十年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575

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代码,定义一个Circle(圆类型)

public class Exam

{

public static void main(String[] args)

{

Circle c=new Circle(3,4,5);

System.out.printf("圆心:(%f,%f),半径:%f,面积:%f",c.x,c.y,c.r,c.countArea());

}

}

class Circle

{

public Circle()

{

this(0,0,0);

}

public Circle(double x,double y,double r)

{

this.x=x;

this.y=y;

this.r=r;

}

public double countArea()

{

return Math.PI*r*r;

}

/*private*/public double x,y,r;

}

java中怎么对特定的一个圆上色

java swing中指定圆的颜色,最常用的有两种方法

方法一:画圆的时候就指定画笔的颜色,那么画出的颜色就是制定的颜色。

public void paint(Graphics g) {

g.setColor(Color.BLUE);

g.fillOval(50, 8, 50, 50);

}

这种方法的优点: 代码码量少,简洁

            缺点:指定颜色后,不好修改。不够灵活

方法二:指定构造方法中有一个Color变量。设置get set方法

class MyJPanel extends JPanel{

Color c;

public MyJPanel(Color c) {

this.c = c ;

}

@Override

public void paint(Graphics g) {

g.setColor(c);

g.fillOval(50, 8, 50, 50);

}

public Color getC() {

return c;

}

public void setC(Color c) {

this.c = c;

}

}

方法二的优点:方便灵活,能通过set get方法轻松修改圆圈颜色

缺点:代码稍多,改变颜色后需要repaint()一下

代码案例供参考

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.Graphics;

import javax.swing.JFrame;

import javax.swing.JPanel;

public class Circle extends JFrame{

MyJPanel jp;

public Circle() {

jp = new MyJPanel(Color.RED);

this.setLayout(new BorderLayout());

this.add(jp,BorderLayout.CENTER);

this.setBounds(300, 200, 150, 100);

this.setDefaultCloseOperation(EXIT_ON_CLOSE);

this.setVisible(true);

try {

Thread.sleep(500);

jp.setC(new Color(210,250,0));

jp.repaint();

} catch (InterruptedException e) {

}

}

public static void main(String[] args) {

new Circle();

}

}

class MyJPanel extends JPanel{

Color c;

public MyJPanel(Color c) {

this.c = c ;

}

@Override

public void paint(Graphics g) {

g.setColor(c);

g.fillOval(50, 8, 50, 50);

}

public Color getC() {

return c;

}

public void setC(Color c) {

this.c = c;

}

}

用JAVA编写圆

代码如下:

import java.awt.Color; import java.awt.Dimension; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel; public class TestSw extends JFrame { public static void main(String[] args) { new TestSw(); } public TestSw(){ super("Test"); this.setSize(new Dimension(400,300)); this.setContentPane(new Mypane()); this.setVisible(true); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } class Mypane extends JPanel{ public void paint(Graphics g) { super.paint(g); g.setColor(Color.red); g.setXORMode(Color.white); g.drawArc(20, 20, 100, 100, 0, 360); ///此方法将画一个直径100的圆.红色. } } }

java 在默认黑色背景下画出一个随即色彩的渐变圆

您好,现给你一个简单MFC对话框例子,工程名为TEXT:

(1)Text.h:

class CTextApp : public CWinApp

{

public:

CTextApp();

~CTextApp();

// 重写

public:

virtual BOOL InitInstance();

ULONG_PTR gdiplusToken;

// 实现

DECLARE_MESSAGE_MAP()

};

extern CTextApp theApp;

注:ULONG_PTR gdiplusToken; ~CTextApp(); 为新添加的东西

(2)Text.cpp里

CTextApp::~CTextApp()

{

//GDI+释放

GdiplusShutdown(gdiplusToken);

}

BOOL CTextApp::InitInstance()

{

// 如果一个运行在 Windows XP 上的应用程序清单指定要

// 使用 ComCtl32.dll 版本 6 或更高版本来启用可视化方式,

//则需要 InitCommonControlsEx()。否则,将无法创建窗口。

INITCOMMONCONTROLSEX InitCtrls;

InitCtrls.dwSize = sizeof(InitCtrls);

// 将它设置为包括所有要在应用程序中使用的

// 公共控件类。

InitCtrls.dwICC = ICC_WIN95_CLASSES;

InitCommonControlsEx(InitCtrls);

CWinApp::InitInstance();

//GDI+初始化

GdiplusStartupInput StartupInput;

GdiplusStartup(gdiplusToken, StartupInput, NULL);

AfxEnableControlContainer();

// 创建 shell 管理器,以防对话框包含

// 任何 shell 树视图控件或 shell 列表视图控件。

CShellManager *pShellManager = new CShellManager;

// 标准初始化

// 如果未使用这些功能并希望减小

// 最终可执行文件的大小,则应移除下列

// 不需要的特定初始化例程

// 更改用于存储设置的注册表项

// TODO: 应适当修改该字符串,

// 例如修改为公司或组织名

SetRegistryKey(_T("应用程序向导生成的本地应用程序"));

CTextDlg dlg;

m_pMainWnd = dlg;

INT_PTR nResponse = dlg.DoModal();

if (nResponse == IDOK)

{

// TODO: 在此放置处理何时用

// “确定”来关闭对话框的代码

}

else if (nResponse == IDCANCEL)

{

// TODO: 在此放置处理何时用

// “取消”来关闭对话框的代码

}

// 删除上面创建的 shell 管理器。

if (pShellManager != NULL)

{

delete pShellManager;

}

// 由于对话框已关闭,所以将返回 FALSE 以便退出应用程序,

// 而不是启动应用程序的消息泵。

return FALSE;

}

注:GdiplusStartupInput StartupInput; GdiplusStartup(gdiplusToken, StartupInput, NULL);为新添加的东西

(3)stdafx.h

//GDI+

#includegdiplus.h

using namespace Gdiplus;

#pragma comment(lib, "gdiplus.lib")

注:以上为为新添加的东西,需要的头文件就是上而这些

(4)接着你就可以使用LinearGradientBrush, 在TextDlg.cpp

void CTextDlg::OnPaint()

{

Graphics graphics(this-m_hWnd);

LinearGradientBrush linGrBrush(

Point(0,0),

Point(200,0),

Color(255,255,0,0),

Color(255,0,0,255));

graphics.FillRectangle(linGrBrush, 0, 0, 200, 200);

}


分享标题:java多彩圆圈代码,编程彩色的圆圈
当前路径:http://ybzwz.com/article/dsgjjpg.html