Answer:
A lot of programmers complain about flicker when they draw on a TPaintBox control, when they draw on the form’s Canvas, or when they paint on the Canvas of a control that they have written. One newsgroup post contained a subject line that read: “TPaintBox wicked flicker, can it be stopped.” The answer is yes, and the solution is simple, once you understand what is going on.
用devexpress的TdxPNGImage为TOpenPictureDialog加入png图片预览功能
在需要的地方(整个程序的入口或某个form加载的时候)加入
#include “dxGDIPlusClasses.hpp”
// 不知道这个check有没有必要…
CheckPngCodec();
// 注册png文件类型,为以后的TOpenPictureDialog的预览等其他地方用
TPicture::RegisterFileFormat(__classid(TdxPNGImage),
这样就ok了!很简单。
关于hekkus sound system的wins build(2)
wins build在模拟器上出现system error(-2)的问题估计就是由于作者发布在包内的dll是给S60 2nd用的,所以在模拟器上无法加载。
播放音乐的问题已经解决了,在对比了手机上现有的hss.dll和发布包内的hss.dll的大小后发现版本不一致(2个dll大小不一样),于是意识到有可能是由于dll版本不一样导致的hssMusic在load的时候出现错误,于是删除了手机上的hss.dll(很奇怪的是,没有发现哪个程序包安装的这个dll,因为怀疑到的所有edge的游戏在删掉了这个dll后仍能正常运行,难道他们都用的是static lib?!那这个dll是裝哪个的时候弄过来的…),重新打包,这次将新的dll写进pkg里安装,ok,mod音乐正常播放了,加载mod文件的方式自己写好了,就是自己把文件读如内存,然后用load内存地址版的hssMusic的load函数加载,测试通过,下次放出代码。
现在如果找不到能在emulator上工作的dll版本的话,以后模拟器调试其他东西的时候就得把声音代码闭掉了,这岂不是很郁闷?
关于hekkus sound system的wins build
在研究了nokia官方提供的sound mixer例子后,发现其提供的方法使用起来不是很方便,比如例子中的wav文件好像只是扩展名是wav,并不是一般见到的win上的wav,内容只是一些sound的data没有像win上wav的一些必要格式(因为用wmp无法识别这种wav),但基本的混音作法已经基本掌握了。
Carbide.c++ 1.2导入项目时的一个问题
Cabide.c++导入symbian项目的时候只能通过.bld文件导入,不像CodeWarrior一样可以用.mmp,问题出现在如果我把要导入的项目放在carbide的默认workspace中的时候在导入的最后一步,会提示已有一个同名的项目存在(如果不放在workspace目录中则没事),不知道这是bug还是我的导入操作有问题,研究中…
关于用DirectGraphics的fillPolygon等绘制半透明图在模拟器上的显示问题
在索爱模拟器上显示为alpha为0xFF的该颜色,即没有半透明效果,在诺基的模拟器上基本能正常显示效果,打包后的jar用当前版本的手机顽童运行,效果为alpha为0,即完全透明(或者是根本没画,反正看不到)。
升级后遇到的一些问题…
升级前备份了整个web目录,但在恢复的时候发现动态发布用的.htaccess不见了,导致开始的时候静态索引页面没有问题,但是单项页面404,最后又重新补了一份.htaccess,tar还是用的不熟啊…
另外,新版的后台管理更帅了,还上了flash的统计,但相应的流量也大了,网速不好的时候开个候台要等半天,汗…
SE J2ME模拟器的rms问题
不知怎么搞的,最近SE模拟器的S700不能存rms了,看了一下运行时的console,总是显示Running with storage root temp.SonyEricsson_S700_EmuXXXXXX,XXXX是一些随机的数字,应该是这个原因导致的每次运行时都找不到上次存过的rms,现在找到的解决办法就是把模拟器WTK2\appdb目录下对应某个设备的目录删掉,这样就能解决了,但是曾经存对过的rms也就都没了,不知道还有没有更好的办法。