`
时间被海绵吃了
  • 浏览: 6164 次
  • 性别: Icon_minigender_1
  • 来自: 湖北
文章分类
社区版块
存档分类
最新评论

画图板中遇到的问题

阅读更多
仿xp系统的画图板还在继续,这期间也碰到了一些问题并及时解决了,现整理如下:
(一)调整窗体中组件大小的方法和添加图标的方法
  1.在画图板上我们需要添加许多大大小小的按钮,并往里面添加图片,这里就需要用到按钮调整大小的方法,然而我们发现当调用button.setSize()的时候并没有改变按钮的大小,这是因为setSize只能用于顶级容器,当一些组件需要改变的时候应该调用的是其setPreferred()方法,使用方法如下:
  button.setPreferredSize(new Dimension(25,25));

  2.当按钮调节完毕后就需要往里面添加图片了,这里需要两个步骤:一、导入图片。二、往按钮添加图片。只需要简单的两个语句即可。方法如下:
  ImageIcon icon = new ImageIcon("drawImage.jpg");  //定义图片对象
  button.setIcon(icon);  //设置按钮图标
 
(二)鼠标拖拽监听的方法
   之前实现画直线、矩形和椭圆的时候使用的是MouseListener监听器,但是其中只能监听鼠标的进入、离开、按下、施放、点击的五种事件,当我们希望实现铅笔的时候,发现它已经不能满足我们的需求,即监听鼠标的拖拽。这里需要引入一个新的监听器:MouseMotionListener。这个监听器可以监听鼠标的拖拽和移动。实现接口应覆盖两个方法:mouseDragged(MouseEvent e)和mouseMoved(mouseEvent e)
  
(三)使用equals比较字符串时注意的一点
   因为当一个字符串调用equals方法时,如果字符串为null则会出现空指针异常,所以在程序中为了避免这个异常,当需要使用一个字符串变量去和一个字符串常量做比较时,我们可以把常量放在前面,即用常量去调用equals方法,这样就避免了当没有初始化字符串变量时的空指针异常。如:
   "空指针异常".equals(command);    //command为一个字符串变量

(四)获取画布方法放置位置
   前一篇博客也有写获取画布的方法应该放在窗口可见之后,不然会提示Graphics空指针异常,现在又发现窗口可见这个方法应该放在窗口添加完组件之后,不然会使组件显示不全。
   由此发现初始化窗口的程序中一定要注意各个语句的顺序,不然会产生一些意想不到的错误。
 
分享到:
评论

相关推荐

    java画图板程序代码

    (2)性能问题:Java 画图板程序可能会遇到性能问题,例如绘制复杂图形时的性能问题。 5. 结论 Java 画图板程序是一个简单易用的图形绘制程序,提供了基本的绘图功能。通过对 Java 画图板程序的分析和解释,我们...

    简单画图板的设计

    "简单画图板的设计"是一个关于创建一个基本图形编辑器的话题,主要涉及到计算机图形学、用户界面设计以及可能的编程实现。在这个项目中,我们可能会遇到以下关键知识点: 1. **计算机图形学基础**:画图板应用的...

    类似于画图板的小程序

    2. **Windows Forms**:C#中的Windows Forms是用于构建桌面应用的框架,它提供了丰富的控件库,如pictureBox、menuStrip、toolStrip等,这些控件可以用于构建画图板的用户界面,例如设置颜色、线型的菜单和工具栏。...

    画图板集合保存图像

    标题“画图板集合保存图像”涉及到的是一个与图形用户界面(GUI)和图像处理相关的编程话题。...实践过程中,你会遇到如何平滑线条、如何优化性能、如何添加更多绘图功能等问题,这些都是进一步学习和提升的方向。

    java学习小总结——画图板制作(附代码)

    在Java学习过程中,创建一个简单的画图板是一个经典的练习项目,它...实践中遇到的问题和解决过程也是提升编程技能的重要途径。希望这个小结对你的Java学习有所帮助,记得实践是检验真理的唯一标准,动手尝试一下吧!

    vc++简易画图板

    在这个画图板项目中,CWinApp派生类通常会包含启动和关闭画图板所需的一些定制逻辑。 接着,CFrameWnd或CMDIFrameWnd类用于创建主框架窗口,这是用户与应用程序交互的主要界面。在这个简易画图板中,我们可以在此...

    画图板程序

    在这个画图板程序中,开发者可能会使用GDI(Graphics Device Interface)部分的API,如CreateDC、SelectObject、MoveToEx、LineTo等,来实现图形绘制和编辑功能。GDI允许开发者在屏幕上精确地绘制点、线、曲线和图形...

    vc++画图板(计算机图形学)

    在计算机科学领域,计算机图形学是一门至关重要的学科,它涉及到如何...同时,这也是一个锻炼问题解决和软件工程实践能力的好机会,因为在实际开发过程中,可能会遇到各种意料之外的问题,需要通过调试和优化来解决。

    精美JAVA程序 画图板

    总的来说,JAVA画图板是一个集易用性与功能性于一体的JAVA应用程序,充分体现了JAVA语言在GUI开发中的强大能力。无论你是学习JAVA编程的新手,还是寻找一个便捷的画图工具,这款JAVA画图板都值得尝试。如果你在使用...

    仿XP系统 画图板

    【标题】"仿XP系统 画图板"指的是一个基于Java编程语言开发的图形用户界面应用,该应用设计和功能模仿了微软Windows XP操作系统中的“画图”程序。这个项目可能旨在帮助用户在现代计算机环境中体验到类似XP系统下...

    基于java的画图板

    在这个画图板项目中,`DrawPanel`很可能就是一个继承自`JPanel`的类,用于实现绘图功能。 **绘图板实现** 1. **绘图面板初始化**:`DrawPanel`类会覆盖`paintComponent(Graphics g)`方法,这个方法在需要重绘组件...

    使用embedde visual c++做的画图板

    实践过程中,你可能会遇到各种问题,解决这些问题的过程本身就是学习的一部分,也是提升编程技能的有效途径。因此,这个简单的画图板项目对于想要进入Windows程序设计领域的学习者来说,是一个很好的起点。

    C# 仿window画图板

    在C#中,开发这样一个画图板应用主要涉及到以下几个关键知识点: 1. **Windows Forms**:C#中的Windows Forms库是创建桌面应用程序的基础,它提供了构建GUI所需的各种控件和事件处理机制。在这个项目中,我们将使用...

    java画图板的开发和应用

    在Java画图板中,可能会遇到用户未指定颜色或尝试打开不存在的文件等问题,需要通过`try-catch`语句来捕获并处理这些异常。 通过学习和掌握上述知识点,开发者可以创建出功能完备、用户友好的Java画图板应用程序。...

    C#画图板程序源码.rar

    标题中的"C#画图板程序源码"表明这是一个使用C#编程语言开发的图形用户界面应用,主要用于绘制图形。在C#中,这样的程序通常利用Windows Presentation Foundation (WPF)或Windows Forms框架来构建。接下来,我们将...

    画图板小程序

    在"画图板小程序"中,用户可能会遇到的基本功能包括: 1. **颜色选择**:用户可以选择不同的颜色来绘制图形,这通常通过颜色选择对话框实现,开发者需要编写代码来处理颜色选择事件,并更新绘图颜色。 2. **线条和...

    MFC颜色面板(类似Win7画图板中的颜色面板)

    通过以上步骤,你可以在MFC应用中创建一个类似于Win7画图板的颜色选择面板,为用户提供直观且易用的色彩选取功能。记住,实践中可能会遇到各种问题,如界面布局、颜色管理、用户交互等,不断学习和调试将帮助你完善...

    JAVA课程设计-画图板(含文档、源码)源码整理

    在本Java课程设计项目中,我们关注的是一个简单的“画图板”应用程序的实现,它提供了基本的图形绘制功能。这个项目旨在帮助学生理解和实践Java编程语言的核心概念,特别是图形用户界面(GUI)的设计和事件处理。...

    java画图板课程设计

    调试过程中可能会遇到图形渲染问题、颜色处理错误或文件I/O异常,需要针对性地解决。 通过这个课程设计,学生不仅会掌握Java编程的基础,还将学习到GUI编程、文件操作、图形对象和事件处理等高级主题,对软件开发的...

    画图板程序 基本图形绘制及变换

    在“画图板程序”中,MFC被用来创建用户友好的界面,使得用户能够轻松地进行图形操作。 画图板程序的核心功能包括基本图形的绘制,如直线、矩形、椭圆、多边形等。这些图形的绘制主要依赖于GDI(Graphics Device ...

Global site tag (gtag.js) - Google Analytics