不知道所所谓图表为何意?是加个自己的图标吗?
加图标可这样:
如果自定义组件没有图标,那么该组件是不完整的。要创建这样的图标,可以使用Delphi的ImageEditor(或者是其他的位图编辑器)来创建24×24的位图,并且这样的位图必须保存到DCR文件。DCR文件与RES文件一样,都是资源文件。所以,如果图标保存在RES文件,那么只要将其扩展名改为DCR即可。提示即使你的显示设备是256色或者更多颜色的,但是如果你要把该组件发布出去,最好不要超过16色,因为一个256色的位图在16色的机器上显示效果非常糟糕。创建了一个位图后,必须给这个位图命名。位图的名称要跟组件的类名相同,而且要大写。DCR文件的名称与组件的单元名称相同。因此,如果组件名称为TXYZComponent,那么位图的名称为TXYZCOMPONENT,如果组件单元的名称为XYZCOMP.PAS,那么DCR文件的名称就是XYZCOMP.DCR。该位图文件必须与组件的单元文件位于同一个目录,编译这个单元时,位图资源会自动加到组件库中。

解决方案 »

  1.   

    一、无非就是加个speedbutton之类的,caption是...,要做成一个控件的话也比较简单。
    二、两种方法
       1、直接继承 new|Activex|ActiveX Control
       2、复杂一点就做成ActiveForm。如带窗体的,先做成普通窗体,在转化成ActiveForm,就能得到OCX了,很简单,new|ActiveX|ActiveForm,然后加入你的Unit,在ActiveForm的Create事件中创建你的窗体,一切OK.别忘了Free。
      

  2.   

    我的意思不是这样的,谢谢楼上的回答我一定会给分的。
    但有个问题是怎样才能做自己的控件我是指不只是一个不显示的功能而是拉出来是个图形,可以用鼠标或者键盘控制的。
    如Edit控件是怎样做的,能写出来吗?
      

  3.   

    自己去看,VCL是完全开放的!一层层继承出来的!在底层开来,就是用GDI函数画和相应消息!
      

  4.   

    要转化为OCX,必须保证该VCL控件从TWinControl继承!
    File->New->ActiveX->ActiveX Control
    当然有些类型的数据不能转化,还需要改写!
      

  5.   

    To:ehom&All
    GDI函数怎样画?能举个比较简单的例子说明一下吗?
    也请广大高手指教指教。
      

  6.   

    见Graphics单元,里面有大量实例
    而windows单元有GDI函数的定义{ Externals from gdi32.dll }function AbortDoc; external gdi32 name 'AbortDoc';
    function AbortPath; external gdi32 name 'AbortPath';
    function AddFontMemResourceEx; external gdi32 name 'AddFontMemResourceEx';
    function AddFontResource; external gdi32 name 'AddFontResourceA';
    function AddFontResourceA; external gdi32 name 'AddFontResourceA';
    function AddFontResourceW; external gdi32 name 'AddFontResourceW';
    ...