`
csu丫丫
  • 浏览: 12124 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

补充上篇《我的仿XP画板初期》

 
阅读更多

由于所谓的不稳定,在多次努力后,已经没有多少耐性在这里这样耗体力不挣营养地继续折腾,但是上篇依然缺少部分代码,现补上:

我的画板入口:

public class MyDrawBoard {

	public static void main(String[] args) {
		new MyDrawBoard().init();

	}

	public void init() {
		 final ListImp<Shape> list = new ListImp<Shape>();

		JFrame drawBoard = new JFrame();

		new InitDrawBoard(drawBoard, "画图板", list);

	}

}

 

 窗体属性设置:

 

 

public class InitDrawBoard  {
	
	JFrame drawBoard;
	ListImp<Shape> list;
	
	/**
	 * 初始化面板
	 */
	public InitDrawBoard(JFrame drawBoard,String str,final ListImp<Shape> list) {
		
		this.drawBoard=drawBoard;
		this.list= list;

		// 设置窗体属性
		drawBoard.setTitle(str);
		drawBoard.setLocation(400,200);
		drawBoard.setSize(600, 480);
		drawBoard.setDefaultCloseOperation(3);
		
		BorderLayout bl =new BorderLayout(); 
		drawBoard.setLayout(bl);

		
		//创建菜单栏menuBar,并添加到窗体上
		JMenuBar menuBar = new JMenuBar();
		menuBar.setPreferredSize(new Dimension(600, 30));
		new InitMenuBar(menuBar);
		drawBoard.add(menuBar,BorderLayout.NORTH);
		
	
		// 创建绘制选项面板drawTypeToolBar,并添加到窗体上
		JToolBar drawTypeToolBar = new JToolBar();
		drawTypeToolBar.setPreferredSize(new Dimension(95, 300));
		//绘制选项数组
		javax.swing.JRadioButton[] radioButton=new javax.swing.JRadioButton[16];
		//绘制选项名称数组
		String[] buttonName=new String[16];
		for(int i=0;i<buttonName.length;i++){
			buttonName[i]="draw"+i;
		}
		// 创建单选键组 创建单选键 并添加到单选键组中和面板jpanel2上
		javax.swing.ButtonGroup typeGroup = new javax.swing.ButtonGroup();
		new InitDrawType(drawTypeToolBar,typeGroup,buttonName,radioButton);
		drawBoard.add(drawTypeToolBar,BorderLayout.WEST);
		
		
		// 创建绘图区域面板drawAreaPanel,并添加到窗体上
		JPanel drawAreaPanel = new JPanel(){

			/**
			 * 图形重绘 重写父类paint方法 将自己的图形数据传给重绘方法,进行重绘
			 * 
			 * @param g
			 *            画布
			 * 
			 */
			private static final long serialVersionUID = 1L;

			public void paint(Graphics g) {
				super.paint(g);
				// 遍历
				for (int i = 0; i < list.size(); i++) {
					Shape shape = list.get(i);
					shape.draw(g);
				}
			}
		};
		drawAreaPanel.setPreferredSize(new Dimension(550, 350));
		new InitDrawArea(drawAreaPanel);
		drawBoard.add(drawAreaPanel,BorderLayout.CENTER);
		
		//创建颜色面板
		JToolBar colorToolBar = new JToolBar();
		JLabel lbColorDraw = new JLabel();
		JLabel lbColorFill = new JLabel();
		new InitColorToolBar(colorToolBar,lbColorDraw,lbColorFill);
		colorToolBar.setPreferredSize(new Dimension(600,80));
		drawBoard.add(colorToolBar,BorderLayout.SOUTH);
	

		// 设置可见
		drawBoard.setVisible(true);
		
		// drawAreaPanel获得画布
		java.awt.Graphics g = drawAreaPanel.getGraphics();
	
		// 创建鼠标监听器,加到drawAreaPanel面板上
		DrawAreaLis moulis = new DrawAreaLis(g,typeGroup, buttonName, drawAreaPanel,list,lbColorDraw,lbColorFill,radioButton);
		drawAreaPanel.addMouseListener(moulis);
		drawAreaPanel.addMouseMotionListener(moulis);
			
	}
	
}

 

分享到:
评论

相关推荐

    XP自带画板

    《深入探索XP系统自带画板》 XP操作系统中内置的画板工具,是许多用户初次接触数字绘画的起点。这个简单而实用的程序,虽然在功能上无法与专业级的图像编辑软件相比,但它的易用性和基础功能,使得它在日常生活中...

    仿windows画板.zip

    【标题】"仿windows画板.zip"是一款基于C#编程语言开发的图形用户界面应用程序,模仿了Windows系统自带的画图工具。这个项目是大三学生的课程设计成果,旨在教授和实践C#语言以及图形界面设计的基本原理和技巧。 ...

    仿windows的画板

    【标题】"仿windows的画板"是一款基于Visual Studio 2005的MFC应用程序,它模仿了Windows操作系统内置的画板工具,并在此基础上扩展了一些实用功能。这个项目旨在为用户提供一个类似系统画板的图形编辑环境,同时...

    Java实现画板(Java小程序 模仿Win系统画板)

    在本文中,我们将深入探讨如何使用Java编程语言来实现一个类似于Windows操作系统中的简易画板程序。这个Java小程序将提供基本的绘图功能,使用户能够通过鼠标或触控设备进行绘画创作。 首先,我们需要理解Java GUI...

    (源码)高仿windows画板.rar

    这是一个关于C#编程语言实现的高仿Windows画板软件的源码资源。这个项目旨在提供一个功能完备的、与原版Windows画板相似的应用程序,适用于学习和参考。通过分析和理解这段源码,开发者可以深入掌握C#编程在图形用户...

    C# 画画板 仿window画画板

    "C# 画画板 仿window画画板"项目是一个利用C#语言构建的简单画板应用,旨在模仿Windows操作系统内建的画图工具。这个项目对于初学者来说是一个很好的实践平台,它可以帮助开发者了解图形用户界面(GUI)的设计,以及...

    C#使用GDI+制作仿windows画板程序

    在本文中,我们将深入探讨如何使用C#编程语言和GDI+库来创建一个仿Windows画板应用程序。GDI+(Graphics Device Interface Plus)是.NET Framework中的一个图形处理API,它为开发者提供了丰富的图形绘制功能,包括...

    java写的仿windows画板 可以调色

    java写的仿windows画板 可以调色 已经打成了jar包 方便使用 需要源码的联系我

    C#高仿windows7画板

    在本项目中,"C#高仿Windows7画板"是一个使用C#编程语言开发的简易画图应用程序,旨在模仿Windows 7操作系统内置的画图工具。这个项目非常适合C#初学者,它提供了实践和学习C#图形用户界面(GUI)编程、事件处理以及...

    几何画板基础篇_几何画板作图方法

    几何画板基础篇 基础篇之: 几何画板作图方法 1 利用基本工具作图----甘志高(laoshi_G)编写 2 用构造菜单作图---甘志高(laoshi_G)编写 1.1 几何画板的启动和绘图工具的使用 1.2 用绘图工具绘制简单的几何图形 1.3...

    WinXP画板 Paint XP 1.1

    与Windows XP相比较,Windows 7中的“画图”程序有了巨大的变化,你怀念Windows XP中的“画板”吗?你想在Windows 7中运行Windows XP的画板吗?那么请下载Paint XP吧。它是一个独立的程序,你现在可以在Windows 7下...

    VC6.0 实现的仿windows 画板程序(painter)

    "VC6.0 实现的仿windows 画板程序(painter)"这个标题揭示了我们讨论的核心内容,即一个基于Visual C++ 6.0(简称VC6.0)开发的图形用户界面应用,该程序模仿了Windows操作系统内置的“画图”工具。"仿windows 画板...

    vs2010编写的仿画板

    【标题】"vs2010编写的仿画板"是一个使用Microsoft Visual Studio 2010开发的软件项目,其主要目标是实现一个类似画板的用户界面,让用户能够进行基本的图形绘制操作。这个画板应用包含了画直线、使用橡皮擦以及绘制...

    java小程序画板

    1、实现友好的Windows画板界面,包括Windows基本菜单、画图功能菜单和常用菜单的工具栏。 2、实现画不同颜色,不同宽度,不同线型的线段、椭圆和矩形。 3、实现自定义字体的大小颜色并且输出到画图板上。 4、实现画...

    仿WindowsXP画图板设计(1)

    【标题】"仿WindowsXP画图板设计(1)"是一个关于开发类似Windows XP操作系统中经典画图工具的项目。这个项目旨在帮助学习者理解和实践图形用户界面(GUI)设计、事件处理以及基本的绘图功能。 【描述】虽然描述为空...

    易语言画板上写字

    本篇将详细介绍如何利用易语言来实现画板上的文字书写功能,以及涉及到的相关API函数。 一、画板基础 在易语言中,画板是一种可以进行图形绘制的控件,用户可以通过鼠标或键盘操作在画板上自由绘画。画板通常用于...

    MFC实现高仿画板、绘图软件功能(带详细注释)

    在VS2015环境下,利用MFC框架实现的一款高仿“画图”工具,实现绝大部分功能甚至更多创新点。(注释超详细) 实现了点、直线、曲线、折线、矩形、圆形、多边形等等形状,并且具有区域限制、鼠标捕捉等功能;...

    易语言画板透明去色

    在这个"易语言画板透明去色"的主题中,我们主要探讨的是如何利用易语言来实现一个功能,即在画板上进行图像处理,实现透明度调整和去色效果。 首先,我们需要了解画板的基本概念。在计算机图形学中,画板是一个可以...

    java简易Windows画板

    2. **AWT(Abstract Window Toolkit)与Swing的区别**: AWT是Java早期的GUI库,而Swing是建立在AWT之上的,提供了更丰富的组件和更好的外观。Swing组件是轻量级的,性能优于AWT,并且可以自定义样式。 3. **...

    简单的jQuery网页画板涂鸦代码.zip

    这个画板允许用户通过鼠标在页面上进行涂鸦,从而实现在线绘图的效果。以下是对该技术实现的详细解析: 首先,jQuery是一个广泛使用的JavaScript库,它简化了HTML文档遍历、事件处理、动画以及Ajax交互。在这个项目...

Global site tag (gtag.js) - Google Analytics