Java开发网 Java开发网
注册 | 登录 | 帮助 | 搜索 | 排行榜 | 发帖统计  

您没有登录

» Java开发网 » Java SE 综合讨论区  

按打印兼容模式打印这个话题 打印话题    把这个话题寄给朋友 寄给朋友    该主题的所有更新都将Email到你的邮箱 订阅主题
flat modethreaded modego to previous topicgo to next topicgo to back
作者 JPanel多线程 paint的问题
eqq2002





发贴: 22
积分: 0
于 2006-07-06 00:52 user profilesend a private message to usersearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
有一个从delphi的demo迁移过来的集合thread和排序算法的程序,
目标
1.在3个panel同时按照同一数组的值drawLine,
2.对数组同时进行a:bubbleSort;b:selectionSort;c:quickSort;
3.3个panel相应的进行重绘
为此我建立了一下几个类,
class RandomIntArray:
随机生成数组类

abstract class DrawPanel extends JPanel:
绘制数组的panel,
其中abstract void sortArray();

class BubbleSortPanel extends DrawPanel implements Runnable
class SelectSortPanel extends DrawPanel implements Runnable
class QuickSortPanel extends DrawPanel implements Runnable
实现void sortArray();
实现runnable接口
public void run(){

sortArray();
  
}//End of run

class Chp7Frame extends JFrame:
用户UI包含bubbleSortPanel,selectSortPanel,quickSortPanel
和JButton:performBTN
void performBTNActionPerformed( ActionEvent e ){

   Thread x =new Thread ( bubblePanel );
  
   x.start();  
  
   Thread y = new Thread ( selectPanel );
  
   y.start();

   Thread z = new Thread ( quickPanel );
  
   z.start();

}//End of performBTNActionPerformed

但,单个绘制的很顺利,奇怪的是3个panel无法同时绘制,

有关绘制的代码如下
void swap( int[] array, int first , int second ){

     int tmp = array[first];

     array[ first ] = array[ second ];

     array[ second ] = tmp;
    
     Graphics g = this.getGraphics();
    
     eraseLine( first , g );
    
     drawLine( first, g );
    
     eraseLine( second , g );
    
     drawLine( second , g );
    
}//End of swap

怀疑是对线程方面的考虑不够,或者swing本身的线程的特点所致,有没有办法解决呢




话题树型展开
人气 标题 作者 字数 发贴时间
4931 JPanel多线程 paint的问题 eqq2002 1454 2006-07-06 00:52
3939 Re:JPanel多线程 paint的问题 eqq2002 1075 2006-07-06 18:16
3349 Re:JPanel多线程 paint的问题 bobwu 63 2006-07-12 12:23
3894 Re:JPanel多线程 paint的问题 eqq2002 109 2006-07-19 23:51
3433 Re:JPanel多线程 paint的问题 why 184 2006-07-20 05:18

flat modethreaded modego to previous topicgo to next topicgo to back
  已读帖子
  新的帖子
  被删除的帖子
Jump to the top of page

   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923