CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C++ Builder >  VCL组件使用和开发

编写控件的问题

楼主renhaobin2000()2005-11-18 16:37:43 在 C++ Builder / VCL组件使用和开发 提问

我要编写了一个控件,最简单的功能是:根据主程序中定义的一个变量的值(而不是通过改变控件的属性来改变字体的颜色)来自动改变控件中字体的颜色。  
  比如我在主程序中定义:MyValue=1;则控件字体颜色为红色  
        当MyValue=2;此时控件字体颜色为蓝色。  
  此过程不调用控件的属性,只是简单的改变MyValue的值来实现。  
  请问我在编写控件的时候该怎么处理呢? 问题点数:20、回复次数:7Top

1 楼shadowstar(CodeFast for Delphi & C++Builder)回复于 2005-11-18 16:47:26 得分 0

swith   (MyValue)  
  {  
  case   1:  
          Font->Color   =   clRed;  
          break;  
  case   2:  
          Font->Color   =   clBlue;  
          break;  
  }Top

2 楼shadowstar(CodeFast for Delphi & C++Builder)回复于 2005-11-18 16:51:11 得分 12

void   __fastcall   SetMyValue(int   Value);  
   
  __property   int   MyValue   =   {   read   =   FMyValue,   write   =   SetMyValue   };  
   
  void   __fastcall   TMyControl::SetMyValue(int   Value)  
  {  
          if   (Value   !=   FMyValue)  
          {  
                  FMyValue   =   Value;  
                  swith   (Value)  
                  {  
                  case   1:  
                          Font->Color   =   clRed;  
                          break;  
                  case   2:  
                          Font->Color   =   clBlue;  
                          break;  
                  }  
          }  
  }  
  Top

3 楼zzq4823(高原猫)回复于 2005-11-18 17:21:17 得分 2

楼上正解,在控件中加入MyValue属性,在程序中设置该属性即可。Top

4 楼renhaobin2000()回复于 2005-11-18 17:30:27 得分 0

我说的是不通过更改控件的属性来完成,假如界面上有上千个颜色需要设置,那不是很慢吗?难道不能让控件去监视主程序中特定的变量,让控件根据变量的值来设定自己字体的颜色吗???Top

5 楼pp616(坏蛋)回复于 2005-11-18 18:03:22 得分 2

 
  最好手里拿个调色板和笔然后自己在屏幕上画。不需要控件。Top

6 楼PPower(月亮光光,照地堂)回复于 2005-11-18 19:54:59 得分 2

用個定時器監視這個變量是否改動可以滿足你的想法。  
  但那樣做系統資源可是嚴重浪費哦。用屬性來做多容易。Top

7 楼zqhkd(zqh)回复于 2005-11-18 21:15:37 得分 2

.   首先按照shadowstar的方法编写一个控件  
  .   而后编写一个线程,该线程负责刷新数据,即更新系统中各个控件的MyValu属性即可。  
  .   当然,也可用定时器,但正如PPower所说,资源开销太大。Top

相关问题

  • 怎样编写DBGrid控件?
  • 编写自定义控件
  • 编写控件的问题!
  • 关于控件编写
  • 如何编写word控件?
  • 编写控件遇到的问题2
  • 控件编写遇到的问题
  • 编写 OCX 控件的问题
  • Delphi 中如何编写控件?
  • vb.net控件的事件编写问题

关键词

  • 控件
  • 属性
  • 字体
  • myvalu
  • 编写
  • fmyvalue
  • setmyvalue
  • 主程序
  • 变量
  • 颜色

得分解答快速导航

  • 帖主:renhaobin2000
  • shadowstar
  • zzq4823
  • pp616
  • PPower
  • zqhkd

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo