当前位置: 首页 > news >正文

怀化公司网站建设美食软文300范例

怀化公司网站建设,美食软文300范例,爱网站黄害羞草,洛阳网站建设设计公司哪家好Java简单 画图板实现(有完整代码) 步骤: 1:创建一个窗体对象,并设置这个对象的基本属性(名称,大小…) 2: 设置窗体布局(可将画图板分为北边和中间两块&#x…

Java简单 画图板实现(有完整代码)
步骤:
1:创建一个窗体对象,并设置这个对象的基本属性(名称,大小…)
2: 设置窗体布局(可将画图板分为北边和中间两块,北边为功能按键区,中间为画图区,还可以添加布局管理器)
3:添加监听器,并另外创建一个类将监听器接口引入,以类的形式存在
4: 获取界面的画笔,在监听器中创建一个画笔,并将界面画笔传入监听器中
5:在监听器中编写需要绘制的图形代码,画笔颜色(可以采取添加按钮的方式来进行多种图形,颜色绘制操作)

import java.awt.Graphics;import javax.swing.JFrame;
import javax.swing.JPanel;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;import javax.swing.JButton;
public class Drawpad {
public static void main(String[] args) {Drawpad dp = new Drawpad();dp.initUI();
}public void initUI() {// 创建一个窗体对象 JFrame jf = new JFrame();jf.setTitle("创意画图板");jf.setSize(800,600);jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭时退出jf.setLocationRelativeTo(null);//居中// 窗体添加监听器DrawListener  dl = new DrawListener();//北边JPanel funcPanel=new JPanel();jf.add(funcPanel,BorderLayout.NORTH);//中间JPanel drawPanel=new JPanel();jf.add(drawPanel,BorderLayout.CENTER);//添加按钮到北边(每个按钮写两行代码太多,通过数组方式添加按钮)String[] btnstr= {"直线","矩形","圆","IFS","九宫格递归","树枝","清除"};for( int i=0;i<btnstr.length;i++) {addJButton(btnstr[i],funcPanel,dl);};/**JButton linebtn=new JButton("直线");funcPanel.add(linebtn);JButton recbtn=new JButton("矩形");funcPanel.add(recbtn);JButton circlebtn=new JButton("圆");funcPanel.add(circlebtn);JButton trianglebtn=new JButton("三角形");funcPanel.add(trianglebtn);**/funcPanel.setBackground(Color.gray);drawPanel.setBackground(Color.white);jf.setVisible(true);// 获取这个界面的graphics 属性  画笔  -gGraphics g =  drawPanel.getGraphics();drawPanel.addMouseListener(dl);dl.g = g;// 右传左 dl.g1=g;}	private void addJButton(String btnstr,JPanel funcPanel, DrawListener dl) {JButton btn=new JButton(btnstr);funcPanel.add(btn);btn.addActionListener(dl);}}

监听器代码:

import java.awt.Color;
import java.awt.Graphics;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import java.awt.Color;
public class DrawListener implements MouseListener,ActionListener {Graphics g;Graphics g1;String btnstr;int x1, y1, x2, y2;// 声明坐标变量 int x3=400;int y3=0;//九宫格递归方法public void dg(int x,int y,int width,int height) {if(width<3) {return;}if(width>90) {g.fillRect(x+width/3, y+height/3, width/3, height/3);dg(x, y, width/3, height/3);dg(x+width/3, y, width/3, height/3);dg(x+(width/3)*2, y, width/3, height/3);dg(x, y+height/3, width/3, height/3);dg(x, y+(height/3)*2, width/3, height/3);dg(x+width/3, y+height/3, width/3, height/3);dg(x+width/3, y+(height/3)*2, width/3, height/3);dg(x+(width/3)*2, y+height/3, width/3, height/3);dg(x+(width/3)*2, y+(height/3)*2, width/3, height/3);}else {g.drawOval(x+width/3, y+height/3, width/3, height/3);dg(x, y, width/3, height/3);dg(x+width/3, y, width/3, height/3);dg(x+(width/3)*2, y, width/3, height/3);dg(x, y+height/3, width/3, height/3);dg(x, y+(height/3)*2, width/3, height/3);dg(x+width/3, y+height/3, width/3, height/3);dg(x+width/3, y+(height/3)*2, width/3, height/3);dg(x+(width/3)*2, y+height/3, width/3, height/3);dg(x+(width/3)*2, y+(height/3)*2, width/3, height/3);}	}public void actionPerformed(ActionEvent e) {btnstr=e.getActionCommand();if(btnstr.equals("")) {JButton btn=(JButton)e.getSource();Color color=btn.getBackground();g.setColor(color);}}@Overridepublic void mouseClicked(MouseEvent e) {System.out.println("点击");}@Overridepublic void mousePressed(MouseEvent e) {System.out.println("按下");x1=e.getX();y1 =e.getY();}@Overridepublic void mouseReleased(MouseEvent e) {x2=e.getX();y2 =e.getY();if(btnstr.equals("直线")) {g.drawLine(x1, y1, x2, y2);}else if(btnstr.equals("矩形")) {g.drawRect(Math.min(x1, x2), Math.min(y1, y2), Math.abs(x2-x1), Math.abs(y2-y1));}else if(btnstr.equals("圆")) {g.drawOval(Math.min(x1, x2), Math.min(y1, y2), Math.abs(x2-x1), Math.abs(y2-y1));}else if(btnstr.equals("IFS")) {IFS ifs=new IFS();ifs.draw(g);}else if(btnstr.equals("九宫格递归")) {dg(0,50,600,600);}else if(btnstr.equals("清除")) {g.setColor(Color.white);g.fillRect(0, 0, 800, 600);g.setColor(Color.black);}System.out.println("释放");}@Overridepublic void mouseEntered(MouseEvent e) {System.out.println("进入");}@Overridepublic void mouseExited(MouseEvent e) {System.out.println("离开");}}

IFS代码

import java.awt.Color;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.util.Random;public class IFS {//绘制迭代分形public void draw(Graphics g) {//参数double a=-1.8, b=-2, c=-0.5, d=-0.9;//计算结果double x = 0, y = 0;//缓存BufferedImage buffer = new BufferedImage(1000, 600, BufferedImage.TYPE_INT_ARGB);//获取缓存画布Graphics bufferG = buffer.getGraphics();for(;b<2; b+=0.01) {//清除bufferG.setColor(Color.WHITE);bufferG.fillRect(0, 0, 1000, 600);bufferG.setColor(Color.BLACK);//重复10000次for(int i=0; i<100000; i++) {//公式double nextx = Math.sin(a*y)+c*Math.cos(a*x);double nexty = Math.sin(b*x)+d*Math.cos(b*y);//迭代x = nextx;y = nexty;//获取画图点的坐标int drawx = (int)(x*80+200);int drawy = (int)(y*80+200);//System.out.println(x+","+y);//画点bufferG.drawLine(drawx, drawy, drawx, drawy);}//绘制缓存g.drawImage(buffer, 0, 0, null);}}}

颜色按钮(通过改变画笔颜色调节图形颜色)博主就没加了,方法和添加图形按钮一样,上边代码博主编写了一个IFS分形的代码,当然分形图形代码是在网上找的公式,小伙伴们也可以自己写一些特别的图像出来(比如小草生长,山脉图像什么的),分形代码公式:
网址http://paulbourke.net/fractals/ifs/
都看到这了,给咱点个赞呗!!!
写的粗糙,有疑问或者有问题的可以发给我,欢迎大家指正,感谢 ! ! !

http://www.hkea.cn/news/334369/

相关文章:

  • 旅游网站模板htmlseo品牌优化整站优化
  • 方圆网站建设aso优化重要吗
  • 做购实惠网站的意义好用的搜索引擎有哪些
  • 怎么把自己笔记本做服务器做个网站搭建网站基本步骤
  • jeecms做企业网站成都网站建设公司排名
  • 沈阳招聘网站开发地推项目平台
  • 798艺术区成都seo达人
  • 平度网站建设抖音代运营收费详细价格
  • 株洲网站优化找哪家seo优化的价格
  • 找印度人做网站sem竞价推广公司
  • 山西网站推广公司网站关键词优化怎么弄
  • 微信分销是什么重庆优化seo
  • 武汉企业网站推广方案永久免费无代码开发平台网站
  • 网站开发岗位群怎样推广产品
  • 桐城市美丽乡村建设专题网站石家庄整站优化技术
  • 北京建网站的公司哪个比较好郑州seo价格
  • 进空间的网站网络营销常见的工具
  • wordpress发文章的id怎么不连续如何做好搜索引擎优化工作
  • 交互式网站如何做seo推广软件排名
  • 西部建设网站惠州seo排名优化
  • 做环球资源网站有没有效果2024百度下载
  • 织梦 安装网站网站搭建需要多少钱
  • 做网站购买备案域名性价比高seo的排名优化
  • 潍坊中脉网站建设公司淄博seo公司
  • 深圳做网站推广哪家好青岛关键词优化平台
  • 呼和浩特市网站建设公司uc搜索引擎入口
  • 网站怎么做关键词搜索电子商务主要学什么内容
  • python做的网站漏洞百度竞价推广开户联系方式
  • 做任务换流量的网站怎么自己制作网页
  • 福清建设局网站火蝠电商代运营公司