标题:为什么同时在水平垂直方向拖动时会重画两次?Java究竟是按怎么的方式画窗体 ...
只看楼主
ruihua
Rank: 1
等 级:新手上路
威 望:1
帖 子:235
专家分:0
注 册:2006-2-21
 问题点数:0 回复次数:6 
为什么同时在水平垂直方向拖动时会重画两次?Java究竟是按怎么的方式画窗体的?
import java.awt.*;
public class Demo extends Frame
{
static int i=0;
Demo()
{
}
public void paint(Graphics g)
{
g.drawString("Drawing in Frame",30,80);
System.out.println("Test :"+i++);
}
}
class mainApp
{
public static void main(String[] args)
{
Demo fm=new Demo();
fm.setSize(200,200);
fm.setVisible(true);
}
}
搜索更多相关主题的帖子: 拖动 Java 窗体 时会 Demo 
2006-08-23 17:27
无理取闹
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:53
帖 子:4264
专家分:0
注 册:2006-7-26
得分:0 
怎么看出来重画两次的?

win32汇编
病毒 加密
目前兴趣所在
2006-08-23 22:32
ruihua
Rank: 1
等 级:新手上路
威 望:1
帖 子:235
专家分:0
注 册:2006-2-21
得分:0 

执行了System.out.println("Test :"+i++);语句两句


2006-08-24 08:49
无理取闹
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:53
帖 子:4264
专家分:0
注 册:2006-7-26
得分:0 
每次移动都需要重画啊!

win32汇编
病毒 加密
目前兴趣所在
2006-08-24 09:21
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
得分:0 
你每次改变窗口状态它都会重画的,重画事件可以由JVM自己调用,也可以你通过repaint()方法来调用
你改变窗口状态的话,要重画多少次是不一定的.这个全由JVM来决定

可惜不是你,陪我到最后
2006-08-24 09:47
千年冰封
Rank: 1
等 级:新手上路
帖 子:174
专家分:0
注 册:2006-7-20
得分:0 
以下是引用千里冰封在2006-8-24 9:47:26的发言:
你每次改变窗口状态它都会重画的,重画事件可以由JVM自己调用,也可以你通过repaint()方法来调用
你改变窗口状态的话,要重画多少次是不一定的.这个全由JVM来决定

那就不会出什么问题吗?


是什么冰封了你的心?是你的眼泪。
2006-08-24 11:36
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
得分:0 
当然不会出问题,不但JAVA是这样,任何窗口程序都是这样的机制啊

可惜不是你,陪我到最后
2006-08-24 13:58



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-85747-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 2.032468 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved