设计开发

关于TScrollBox滚动后的内部控件重绘问题

当我在scrollbox内放个paintbox的时候,发现当滚动重绘的时候的行为好像是只更新并添加需要的部分,即滚动出来的新的部分,但这样会导致在滚动刷新的时候出现图像破碎的感觉,为了解决这个问题,我子类化了scrollbox,截获其WM_VSCROLL和WM_HSCROLL,然后invalidate对应的scrollbox,这样就不会出现破碎感了,但不知道会不会导致效率的下降。

[ZT]BCB6中的#Pragma说明

1.#pragma alignment
alignment pragma用于显示一条当前内存对齐(alignment)和枚举(enum)字节大小的消息。例如:
W8035: The alignment is 8 bytes, the enum size is 4 bytes
该消息必须在打开编译器选项”show general messages”或编译器开关”-wmsg”后才能显示。

Continue reading…

[ZT]里屋专用PSP知识普及贴0.40

买PSP已经快1年了,因为我平时就比较无聊 所以总是能抽出比较多的时间来研究
我会以尽量直白简单的话来写这篇帖子,不过因为个人习惯,所以打算多少讲解一些原理
如果明白原理的话以后出一些简单的问题大家就不会只是循规蹈矩了
你如果觉得明白原理没用或者你本来就明白甚至不想明白,那么各大PSP网站上有简单的流程攻略……最下面我会

Continue reading…

TdxBarSpinEdit 不能更新当前数字的问题

今天用的时候才发现不像普通的spinedit,不管是自己输入或是通过旁边的按钮都不能更新数字。
You should set the BarManager’s AlwaysSaveText property to TRUE.
Bastian Bauwens
DX-Squad
而如果是MDI子窗体的bar同时有合并操作的话则要同样设置主窗体的bar manager的此属性才可以。

OD2.0终于放出测试了,虽然是pre-alpha…

October 11, 2007 – First bug reports
Shame on me! In only one day, I have received 15 bug reports related to the v2.0 pre-alpha code! Most of them concentrate around the protection violation at address 477AC3 (a more or less obvious bug), but there are also other crashes reported. What should I say? Thank you! Without your steady help, OllyDbg 1.10 would never reach its actual quality. Hopefully, in some time second version will reach at least the same standards… Anyway, in the couple of weeks there will be update here. And – thank you again! Please keep it this way!

Continue reading…

[ZT]Eliminate flicker when painting on a form or a TPaintBox control.

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.

Continue reading…

关于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),但基本的混音作法已经基本掌握了。

Continue reading…

Carbide.c++ 1.2导入项目时的一个问题

Cabide.c++导入symbian项目的时候只能通过.bld文件导入,不像CodeWarrior一样可以用.mmp,问题出现在如果我把要导入的项目放在carbide的默认workspace中的时候在导入的最后一步,会提示已有一个同名的项目存在(如果不放在workspace目录中则没事),不知道这是bug还是我的导入操作有问题,研究中…