当前位置:  技术问答>java相关

请问用鼠标画的图形这样才能刷新。

    来源: 互联网  发布时间:2015-08-26

    本文导语:  我得程序如下:  import java.awt.*; import javax.swing.*; import com.borland.jbcl.layout.*; import java.awt.event.*; /**  * Title:  * Description:  * Copyright:    Copyright (c) 2003  * Company:  * @author  * @version 1.0  */ public class Frame1 ext...

我得程序如下:
 import java.awt.*;
import javax.swing.*;
import com.borland.jbcl.layout.*;
import java.awt.event.*;

/**
 * Title:
 * Description:
 * Copyright:    Copyright (c) 2003
 * Company:
 * @author
 * @version 1.0
 */

public class Frame1 extends JFrame implements MouseListener,MouseMotionListener{
  int x0,y0,x,y;
  public Frame1(){
    try {
      jbInit();
    }
    catch(Exception e) {
      e.printStackTrace();
    }}
  private void jbInit() throws Exception {
    this.addMouseListener(this);
    this.addMouseMotionListener(this);
  }
  public void mouseMoved(MouseEvent evt)
  {}
  public void mouseDragged(MouseEvent evt)
  {
    x=evt.getX();
    y=evt.getY();
    Graphics gg=this.getGraphics();
    gg.drawLine(x0,y0,x,y);
    x0=x;
    y0=y;
  }
  public void mousePressed(MouseEvent evt)
  {
    x0=evt.getX();
    y0=evt.getY();

  }
  public void mouseReleased(MouseEvent evt)
  {}
  public void mouseExited(MouseEvent evt)
  {}
  public void mouseEntered(MouseEvent evt)
  {}
  public void mouseClicked(MouseEvent evt)
  {
  }
  public static void main(String[] args)
{
  Frame1 frame=new Frame1();
  frame.setSize(400,300);
    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    Dimension frameSize = frame.getSize();
    if (frameSize.height > screenSize.height)
      frameSize.height = screenSize.height;
    if (frameSize.width > screenSize.width)
      frameSize.width = screenSize.width;
    frame.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2);

    frame.setVisible(true);

}  
}

当用鼠标在frame上拖动,画了一条曲线后,把frame最小化再复原,刚才画的线就没有了,请各位大侠给点意见帮忙解决一下。
先谢了!!。。。

|
在内存里建一个与你的frame完全相同尺寸的image对象,然后在其上画就行了,然后在你的frame的paint事件里重画image对象就OK了.

|
我认为还是要将直线的两个端点保存起来,比如生成一个 Point对象,然后将各条
直线的 Point对象保存在一个 Vector中(如:lineVector),在你的程序中加这样一个方法:
public void paintComponent(Graphics g)
{
      super.paintComponent(g);
      drawLine(g);
}
drawLine(g)实现画直线,可以这样写:
Enumeration temp=lineVector.elements();
while(temp.hasMoreElements())
{
         Point p1=(Point)temp.nextElement();
         Point p2=(Point)temp.nextElement();
         g.drawLine(p1.x,p1.y,p2.x,p2.y);
}
你试试行不行

    
 
 

您可能感兴趣的文章:

  • 请问在Redhat 9里,我从登录就是图形介面,请问如何在图形介面内进入命令行方式呢,谢谢
  • 请问Linux下,有图形界面的编译器吗?
  • 请问,我试图用#admintool&图形工具命令来安装sun workshop5.0,为什么进入的却是用户管理界面?请问具体该如何在solaris下安装应用软件
  • 请问,一般linux 都用那种图形界面?
  • 请问Linux没装图形界面能上网吗?
  • 请问,关闭图形界面的命令是哪个?
  • 请问Linux关闭图形界面的命令是哪个?
  • 请问在linux下用什么软件进行图形界面开发最容易
  • 请问怎样把登录形式改成图形界面形式哦
  • 请问linux上安装流媒体服务,是否要安装图形界面
  • 请问那里有java控制图形的介绍和代码?
  • 请问我怎样可以由原来的图形界面登陆变成文字登陆?
  • 我装的redhat9是在字符模式下安装的,现在没有图形界面,请问如何装载上去?
  • 我没有图形界面,请问如何用ifconfig命令为网卡添加两个IP地址
  • 请问如何恢复红旗Linux6失效的图形桌面
  • 我现在装的Linux是从文本模式启动,请问如何才能改为从图形模式启动?
  • Servlet高手急救:欲从servlet输出图形,请问linux环境下如何配置,web服务器为tomcat
  • 请问:linux进了文字界面后怎样进图形界面??
  • 请问,如何把RHEL AS4装成字符的,不要图形桌面?
  • 请问linux图形界面下有没有 findwindow,然后getwindowtext 这种东西?
  • 请问如何调整显示器刷新率?
  • 请问在REDHAT7.3中如何设置显示器的刷新率。如何更改显示器类型。谢谢
  • 请问大侠,有什么方法能对JSP程序页面自动刷新。
  • 请问如何在RED HAT 的命令行下更改刷新率?
  • solaris 10请问保存屏幕配置的信息(分辨率和刷新率)是哪一个目录下的哪一个文件
  • 请问jTable如何刷新?(急……在线等待)
  • 请问在sco unix 下怎样调刷新率?c程序的编译器哪里有安装?
  • 请问各位,如何在X-WINDOWS下修改显示器的分辨率和刷新率?
  • 请问如何调整X Windows的刷新率(我的屏幕看起来一闪一闪的,好不舒服!!!)
  • 请问如何即时刷新table中鼠标所选中的那条记录?程序代码见内。高分请教
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 我的鼠标时usb接口并且是光电3键鼠标,请问如何在redhat9下使用?
  • 请问一下,安装FreeBSD的时候,我得键盘和鼠标都是USB口的,安装的时候找不到鼠标和键盘怎么办?急!
  • 系统RESET后,我的鼠标就找不到了!然后我想到重新安装,可是安装向导也找不到我的鼠标了!请问我该怎么办?谢谢!
  • 请问linux中如何快速获得鼠标数据(主要是鼠标位置坐标)
  • 请问怎样在win98启动盘里加载鼠标驱动程序?
  • 我的笔记本只能接usb的鼠标,请问那个linux可以支持
  • 各位高人,请问在SCOUNIX下怎样使用USB设备呀,比如说鼠标
  • 请问用JBuilder开发Applet,如果把鼠标指针变成漏斗?
  • 请问:RHLinux9中怎样调节鼠标的速度
  • 请问如何在鼠标点击xx button 的时候获得 JtextField 中的文本输入--有重分送
  • 请问:如何获得jTextField 的鼠标双击事件
  • 请问在linux下如何获得当前鼠标的绝对值呢?
  • BM xSeries 336 开机,但是键盘鼠标显示器均无信号,请问如何解决
  • 请问在swing中的什么组件上,我可以画矩形和多边形,同时可以响应鼠标事件。
  • 请问Swing中的JTree控件如何让监听一个子叶的鼠标事件?
  • 我用的是jrun,请问怎样实现在jsp页面中,鼠标在某个图标上时,该图标所在位置就换成另一个图标
  • 请问:如何让鼠标的图标在进入一个JPanel后变为我指定的图标?
  • 请问怎样判断用户按下的鼠标左键还是右键啊?急急急急急急急
  • 请问JTable怎样响应鼠标事件
  • 请问我在一个applet中动态的写了很多的JLabel(每个JLabel都没有具体的名称),如何在点击某一个JLabel时出发鼠标事件,得到该JLabel的文本
  • 请问:我知道路由器的telnet密码,但忘记了enable 密码,请问如何是好?
  • 请问那里有SYBASE的jbdb 2.0下载;jspsmartupload可以直接将文件上传到数据库,请问如何使用
  • 请问最新的reahat9.0是基于什么核心的?2.4?2.6?请问那里能下载?
  • 请问:请问哪里有关于linux基本操作命令讲解的资料下载,最好是幻灯片格式的.
  • 请问玩过SOLARIS的高手门,在不正常关机后,就不能启动到windows公用桌面了,只能在命令提示模式下了,请问怎么解决这个问题啊?急~!~!
  • 请问:我在redhat下装了bochs-2.2.1-1.rpm,.装了后,想设置一下,但找不到bochsrc.fda.bxrc,请问这个文件在哪个曰录下啊。
  • 请问大侠,有什么方法能对JSP程序页面自动刷新。 iis7站长之家
  • 请问:在GCC里的C程序里的变量的声明是不是只能在前面,而且相同类型的变量的声明只能放在一起?如果不是,请问怎么样可以解决这个问题.
  • 请问各位大虾,小弟今天开始学jsp了,这学期我们有java课,所以已经下载了jdk(好象是1.2),请问我的98环境怎么配置jsp环境呀?我的jdk可以运行.java程序,别的我就不知道了....谢谢!
  • 主机是WIN2000,我用的是LUNIX,请问是否可以共享上网? 如果可以请问如何设置? 500分答谢,龟儿食言!
  • 请问linux下GUI开发的问题!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3