这里的真正大小是包括屏幕客户区以外(需要滚动才能见到的)的那部分的
例如一共100行的文本,中间有各种不同的字体(高度不定),目前控件的大小为300*600
由于内容多,不可能在客户区全部显示出来,大部分必然的要通过滚动才能看见
我想得到的是这100行一共要占用多大的地方,而不是那300*600想要多少分只要我拿得出来您尽管吱声,
我的QQ:46436473
e-mail:[email protected] 或者 [email protected]
例如一共100行的文本,中间有各种不同的字体(高度不定),目前控件的大小为300*600
由于内容多,不可能在客户区全部显示出来,大部分必然的要通过滚动才能看见
我想得到的是这100行一共要占用多大的地方,而不是那300*600想要多少分只要我拿得出来您尽管吱声,
我的QQ:46436473
e-mail:[email protected] 或者 [email protected]
解决方案 »
- delphi 有什么好的入门方法么?
- 如何用BSD2006开发网络管理软件
- 各位Delphi专家或高手请教一下你们,请帮帮忙...
- 关于Delphi内存分配问题
- 大家在工作开发时用winapi多吗?
- 急,,,hlep webservice中能有form吗?
- c/s模式数据库开发,如何根据显示器分辨率改变窗体大小?
- 求教高手,关于备份数据库和恢复数据库功能程序编写?
- 求救!!,为什么老提示“ File not found: 'Unit5.dcu' ”…………
- 應用程序的發布問題
- 问关于ADO连接ACCESS数据库用InstallShield打包的问题
- 为什么我将dbgrid的dataset设置为我的adoquery后,dbgrid出现闪烁,一会后正常显示所有纪录
总面积= (300*600)*(AllLines/ShowLines)
procedure TForm1.FormCreate(Sender: TObject);
begin
DoubleBuffered:=true;
end;
vScrollInfo: TScrollInfo;
begin
vScrollInfo.cbSize := SizeOf(vScrollInfo);
vScrollInfo.fMask := SIF_ALL;
GetScrollInfo(RichEdit1.Handle, SB_VERT, vScrollInfo);
label1.Caption :='MAX:'+inttostr(vScrollInfo.nMax);
end;
窗体上放一个richedit,一个label,一个按钮
button下执行上边代码,label1上就可以显示出richedit的最大高度,最好用rtf文件试,rtf文件里设置不同高度的字体,结果马上就可以看出来了
同时感谢:cn2002boy()给出了详细的办法和代码
感谢大家的支持,另外建议大家在回答问题的时候,还是最好先看明白问题,因此个别回答我就不给分了