这两个问题怎么办?

wjzhuang 2001-03-06 11:32:00
问题1;
我有两个form,主form(Form1)可以设置doublebuffer的属性.
如:Form1->Doublebuffer = true;
而form2,却不能设置该属性?
form2 由form1调用.
问题2:
而在form1中我可以使用SetBounds(..)函数.
但在form2中我也不可以使用SetBounds(..)函数.

compile可以通过,这些错误出现在running时.
为什么?
那位兄弟姐妹帮帮我!
...全文
118 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wjzhuang 2001-03-07
  • 打赏
  • 举报
回复
我明白了,或者我使用第一种方法,但是在project option中设置form2预先创建也可以搞定那两个问题.
holyfire 2001-03-07
  • 打赏
  • 举报
回复
主要是创建的时间,Application->CreateForm(__classid(TForm2), &Form2); 是在应用程序初始化的时候创建。
wjzhuang 2001-03-07
  • 打赏
  • 举报
回复
我搞定了这两个问题.我发现不同的窗体创建方法有差别的.
原来我用的是:
TForm2 *Form2 = new TForm2(Application);
Form2->Show();
而现在是:
Application->CreateForm(__classid(TForm2), &Form2);
Form2->Show();
我也不知道有什么差别.
那位朋友能告诉我有什么差别吗?

 
holyfire 2001-03-06
  • 打赏
  • 举报
回复
如果你把Doublebuffer = true;和SetBounds(..)放在Form2的OnCreate事件中可能解决你的问题。
holyfire 2001-03-06
  • 打赏
  • 举报
回复
如果你把Doublebuffer = true;和SetBounds(..)放在Form2的OnCreate事件中可能解决你的问题。
holyfire 2001-03-06
  • 打赏
  • 举报
回复
问题在于你使用Form2时,Form2有没有创建?
当你使用一个没有分配资源的窗体当然会出错。
BCB 2001-03-06
  • 打赏
  • 举报
回复
只有TWinControl::DoubleBuffered
Sachow 2001-03-06
  • 打赏
  • 举报
回复
你的DoubleBuffer是一个什么类型的变量?(private, __protected, public?)
wjzhuang 2001-03-06
  • 打赏
  • 举报
回复
to holyfire:
在form 的OnCreate使用不行,我原来就是这样的,试过了.form2事先有创建.
to Sachow:
doublebuffer是form的一个属性.
to bcb:
能说清楚一些吗?

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧