关于项目中创建控件要注意的一些地方!

  很多地方都有介绍一个小控件如何创建,在这里介绍下在项目中创建小控件要注意的地方,直接上程序:

             if( m_pICIWinCtl == NULL )

{      
QStringList letterPixmap;

QFont font;
font.setPixelSize (20);

letterPixmap << "./image/bn_normal.png" << "./image/bn_select.png" << "./image/bn_press.png";

QBrush brush(QColor(255, 255, 255, 255));                                //画白色
brush.setStyle(Qt::SolidPattern);                                        //实线图案

QBrush brush1(QColor(106, 104, 100, 255)); 
brush1.setStyle(Qt::SolidPattern);

QPalette palette;                                                        //调色板
palette.setBrush(QPalette::Active, QPalette::WindowText, brush);              //活动的
palette.setBrush(QPalette::Inactive, QPalette::WindowText, brush);           //不活动的
palette.setBrush(QPalette::Disabled, QPalette::WindowText, brush1);

m_pICIWinCtl = new ICIQTBASEGUI::CICIWinCtl();

m_pICIWinCtl->InsertCtl(MM_CASE_UNIT_QUERYMODE_LB ,ICIQTBASEGUI::enum_winctl_type_qlabel,m_pFatherWin,"QueryModelb","查询方式",
     20,20,100,40,font,letterPixmap,palette);

 m_pICIWinCtl->InsertCtl(MM_RECORD_UNIT_QUERY_BT ,ICIQTBASEGUI::enum_winctl_type_cbutton,m_pFatherW in,"Querybt","查询",
     130 ,20,100,40,font,letterPixmap,palette);

connect((QObject *)m_pICIWinCtl->GetCtlHandle(MM_RECORD_UNIT_QUERY_BT), SIGNAL (clicked ()), this, SLOT (ON_BtnTest( )));

       

      这是实现控件的代码,前面部分介绍了控件所在窗口的一些属性,主要是后面的两行;

      m_pICIWinCtl->InsertCtl(MM_RECORD_UNIT_QUERY_BT ,ICIQTBASEGUI::enum_winctl_type_cbutton,m_pFatherWin,"Querybt","查询",
     130 ,20,100,40,font,letterPixmap,palette);

     m_pICIWinCtl是在控件管理类下的一个指针,项目中会将创建控件的一些指针,函数等组成一个总类,这就是控件管理类;

     InsertCtl()添加控件的函数;

    MM_CASE_UNIT_QUERYMODE_LB    这个是在本窗口的实现类下控件的ID;

     enum_winctl_type_qlabel    这个是在控件管理类下控件的ID;

     m_pFatherWin     父窗口的指针;

    "QueryModelb","查询方式"     名称;

    20,20,100,40   控件位置;

    font  字体;

    letterPixmap   控件图标的路径;

    palette   着色;

  

    从上面可以看出,创建一个控件图标所需要的就是这些,很明显,会比写一个小程序创建一个图标要多一些内容;


    connect((QObject *)m_pICIWinCtl->GetCtlHandle(MM_RECORD_UNIT_QUERY_BT), SIGNAL (clicked ()), this, SLOT (ON_BtnTest( )));


     通过上面信号和槽可以实现控件的功能,这里和平时的小程序是差不多的!


       

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值