另类但是不复杂,需要修改memo的高度上限值...(100分)

  • 主题发起人 主题发起人 love4myxsg
  • 开始时间 开始时间
L

love4myxsg

Unregistered / Unconfirmed
GUEST, unregistred user!
Tmemo类是Tcontrol的子类,Tmemo里面的Height属性是源与Tcontrol的,在controls.pas中
有如下相关东西
TControl = class(TComponent)
private
...
FHeight:integer;
...
procedure SetHeight(Value: Integer);
...
published
property Height: Integer read FHeight write SetHeight;
...
end;
知道了后代通过published 属性height来动态改变 高度;
实际使用过程中遇到问题,发现 height属性有上限为32767(象素点);
(记忆中integer是可以4G的呀?怎么才32767,嗯,如果是longint,应该是4g没商量了吧)
现在需要改动height的上限,
其实只需要改动 Memo的height的上限即可,不过具体怎么操作呢;

尝试过: 想在memo类里面继承height,结果发现人家本来是 private方法和Fheight是private变量,
访问不了,不能用override;(说找不到)
如果单独在Memo里面写一个方法setHeight和
变量Fheight;属性height(仿Controls.pas里面的那个setHeight,Fheight,height);
结果发现控制面板里面的height是出来了,不过好像改任何值都没用,又变成0了。

(不要用怪怪的眼神看我,我是newbie......)
 
嗯,实际上是需要改flatmemo的,不过我想应该和Memo类似。
 
奇怪,这都没人要啊?熟悉vcl控件修改的都不屑这样简单的问题么,
可是100分可是没有难度区分的啊!
 
显示器象素才多少,32768高还不够啊
 
搞什么吗
 
你不会把Align属性设置了吧?
 
老大,都说了特殊需要,
所以要改32767象素的上限
我们只关心类似这种特别需要修改vcl的时候
到底应该怎么做。。。。。。。。
align没敢设置的,否则它会把screen当成上层窗口来适应;
 
后退
顶部