原创 Lazarus的一些需要注意的问题

2008-10-20 16:26 12946 6 13 分类: 软件与OS
最近把Lazarus升级到了SVN最新版本,开发vsgui,过程中发现了一些需要注意的地方。

1.中文编码
Lazarus0.9.26以后的版本也终于顺应了国际化的潮流,内部使用UTF8的编码。
我使用的Ubuntu也同样支持UTF8的编码,并且命令行界面默认使用的也是这个编码,所以基本相安无事。但Windows内部使用的是UNICODE编码(UTF8是UNICODE的一种,但不完全一样。UNICODE的一个中文字占用2字节,UTF8占用3字节),郁闷的是,WindowsXP的命令行界面无法使用UNICODE或者UTF8编码。
解决方法:
{$ifdef MSWINDOWS}
caller.AddParameter('i"' + Utf8ToAnsi(fnEdit.Text) + '"');
{$else}
caller.AddParameter('i"' + fnEdit.Text + '"');
{$endif}

2.Lazarus0.9.26之后的版本,似乎窗口大小的调整不是一步到位的,如果你的界面中使用到了需要更具窗口大小来修改自身大小和位置的组件的话,最好能在以下事件中都做出相应。
OnActivate,OnShow,OnResize

3.窗口有时会自动多出ScrollBar
解决方法:
把组建放在一个Panel上,Panel.BoardSpacing.Around设置为1,并且窗口大小扩大1。

4.http://bugs.freepascal.org/view.php?id=12438
Windows下没有问题,但为了多系统的兼容,建议也做此修改
解决方法:
把看得到的TabSheet对应的TabIndex排在前面。

5.Linux下,配置为GTK2界面后,普通权限用户,按键相应会多一次
如果Lazarus也使用GTK2 重新编译的话,开发界面也会有这个问题
解决方法:
sudo ...或者gksu ...

6.StatusBar不支持OnDraw事件
如果要在StatusBar上增加一些特定的组件,如ProgressBar,Button等,无法使用OnDraw时间,设置更新区域。
解决方法:
目前就只好把ProgressBar等空间直接放在上面,并在程序中调整位置。以后版本会支持的。
PARTNER CONTENT

文章评论7条评论)

登录后参与讨论

用户131114 2008-12-13 20:54

过一段时间vsgui的代码会全部公开,可以参考一下。

用户131114 2008-12-13 20:54

你的问题好像和第6点没有关系啊。还是不明白是什么问题?多一次按键是指?

用户182104 2008-12-13 16:27

你好,第6点能说详细点吗?我试过了还是不行哦。我是这样做的,我在终端中 sudo startlazarus 启动lazarus之后,一开始是连中文输入法都没有的。后来中文输入的问题解决了,但是,输入中文的时候还是会多一次按键,不知道什么原因。

用户146821 2008-10-23 22:34

的确好多,谢谢了

用户131114 2008-10-23 04:59

可以去google里搜一下,记得有不少中文的

用户146821 2008-10-22 22:52

可以给点Lazarus的一点知识么? 全英文 看了好久,还是有点迷糊,

用户146821 2008-10-22 22:52

可以给点Lazarus的一点知识么? 全英文 看了好久,还是有点迷糊,
相关推荐阅读
用户131114 2010-12-25 22:43
征集各种单片机/存储器的支持
先随便列几个:Actel FPGA,Renesas R8C,Nuvoton Cortex。当然,Versaloon已经支持的就不需要了。当然,一些简单的比如SPI Flash,可以都可以。合作(或者交...
用户131114 2010-12-11 17:06
STM32F207 demo板原理图
这个硬件是VersaloonHandy平台的第一个测试评估硬件。资源:1. usb device + host, LTC41602. 3路可控电压,分别用于SD供电、TFT背光、对外供电,IIC接口控...
用户131114 2010-09-13 15:13
Versaloon 平台硬件规划
按照计划,几个平台都进行的非常顺利。第二批的生产也在进行中。 抽空规划了一下Versaloon平台的下一个硬件。1。使用120M STM32F203系列100脚芯片,USB 2.0 HS OTG2。2...
用户131114 2010-09-11 01:04
USBDM也成为浮云了。。。。。
HSC08/HCS12(X)的调试支持也基本按时完成了。。。。。。碰到的困难比预想的多,8过仍旧只是浮云。。。。。。coldfireV1应该也可以支持,不过需要有demo板测试并做相应的调整。 上图:...
用户131114 2010-09-02 02:28
Versaloon平台发展规划
最近发布的Versaloon调试仿真平台计划,相信很快就能完成第一阶段,有人怀疑不? Versaloon在实现的理念上,有其先进性,在同一个简单的硬件上,能够实现这么多种芯片的支持,并且具备不错的性能...
用户131114 2010-09-01 17:40
STLink简单的像浮云一样
原来计划花2天时间,没想到一天就搞定了。。。。。。在STM8S103F2上测试通过。STVP在下载STM8S103F2的速度并不是一般的慢啊,每次64字节。。。。。。OMG。。。。 下一步准备OSBD...
EE直播间
更多
我要评论
7
6
关闭 站长推荐上一条 /3 下一条