如何在fluid中添加自定义控件
2007-04-26 11:59
211 查看
fluid中已经有它自己自带的控件,那如何让我们自定义的控件放到fluid中呢,这里有两种方法,一种是修改fluid代码,一种是以另外的控件来代替自定义的控件,只是在代替控件属性的class选项下填写自定义控件的类名,这种方式优点是添加方便,缺点是不能所得即所见。另一种方式就是修改fluid的代码,让自定义控件像fltk自带的控件一样使用,下面就介绍如何通过修改fluid代码,添加自定义的控件。
以下以Fl_Lcdnumber控件为例。
第一步:首先需要在fltk的库中添加该控件
将Fl_Lcdnumber.H 保存在FL目录下
将Fl_Lcdnumber.cxx 保存在src目录下
修改src->Makefile文件,将Fl_Lcdnumber.cxx添加到makefile文件中,在src目录下运行make,重新编译fltk库。
第二步:在function_panel.fl增加一个按钮,修改相关属性,与其他控件的属性一样,不同的是在属性面板的C++下user_data框中的写上“Fl_Lcdnumber”
这一步的目的是在控件面板中增加该控件的选项,点击这个控件的按钮后在窗口中就会出现这个控件。
第三步:将控件添加到fluid的new 菜单
在factory.cxx中定义class Fl_Lcdnumber_type,内容如下:
#include<FL/Fl_Lcdnumber.H>
class Fl_Lcdnumber_Type:public Fl_Widget_Type {
public:
virtual const char *type_name(){return "Fl_Lcdnumber";}
Fl_Widget *widget(int x, int y,int w,int h){
return new Fl_Lcdnumber(x,y,w,h);}
Fl_Widget_Type *_make(){return new Fl_Lcdnumber_Type();}
int pixmapID(){return 15;}
};
static Fl_Lcdnumber_Type Fl_Lcdnumber_type;
在factory.cxx的New Menu[]中添加以下两行
{"coustom widget",0,0,0,FL_SUBMENU},
{0,0,cb,(void*)&Fl_Lcdnumber_type},
第四步:重新编译fluid
在fluid目录下运行make,编译fluid,重新打开fluid后就可以看到在控件面板中和new菜单中有Fl_Lcdnumber控件了,使用方法与其他控件一样。
以下以Fl_Lcdnumber控件为例。
第一步:首先需要在fltk的库中添加该控件
将Fl_Lcdnumber.H 保存在FL目录下
将Fl_Lcdnumber.cxx 保存在src目录下
修改src->Makefile文件,将Fl_Lcdnumber.cxx添加到makefile文件中,在src目录下运行make,重新编译fltk库。
第二步:在function_panel.fl增加一个按钮,修改相关属性,与其他控件的属性一样,不同的是在属性面板的C++下user_data框中的写上“Fl_Lcdnumber”
这一步的目的是在控件面板中增加该控件的选项,点击这个控件的按钮后在窗口中就会出现这个控件。
第三步:将控件添加到fluid的new 菜单
在factory.cxx中定义class Fl_Lcdnumber_type,内容如下:
#include<FL/Fl_Lcdnumber.H>
class Fl_Lcdnumber_Type:public Fl_Widget_Type {
public:
virtual const char *type_name(){return "Fl_Lcdnumber";}
Fl_Widget *widget(int x, int y,int w,int h){
return new Fl_Lcdnumber(x,y,w,h);}
Fl_Widget_Type *_make(){return new Fl_Lcdnumber_Type();}
int pixmapID(){return 15;}
};
static Fl_Lcdnumber_Type Fl_Lcdnumber_type;
在factory.cxx的New Menu[]中添加以下两行
{"coustom widget",0,0,0,FL_SUBMENU},
{0,0,cb,(void*)&Fl_Lcdnumber_type},
第四步:重新编译fluid
在fluid目录下运行make,编译fluid,重新打开fluid后就可以看到在控件面板中和new菜单中有Fl_Lcdnumber控件了,使用方法与其他控件一样。
相关文章推荐
- 如何在fluid中添加自定义控件
- C#如何给自定义控件添加说明(解释)
- c# 自定义控件如何在属性栏添加自定义事件
- 如何给自定义控件添加事件
- 如何在自定义控件里添加复杂属性(struct,class等)
- N2CMS 实践之路 Tip.3 自定义控件如何添加
- 【C#】妈妈再也不用担心自定义控件如何给特殊类型的属性添加默认值了,附自定义GroupBox一枚
- 自定义控件如何给特殊类型的属性添加默认值 z
- easyui datagrid的toolbar如何添加输入框或自定义控件
- 如何给自定义控件添加自定义属性
- 自定义控件如何给特殊类型的属性添加默认值 z(转)
- 【BS】 如何向aspx窗体中添加一个自定义控件
- Xcode6为什么干掉pch(Precompile Prefix Header)&如何添加pch文件
- Windows如何添加Loopback
- 如何给C# 中的tabControl 控件添加图片
- 如何在Word中添加分页符?
- 如何添加WebService调用时的用户认证
- Ubuntu-10.10如何给用户添加sudo权限
- 如何添加内核驱动修改makefile
- [FAQ13934]如何添加Static Library (静态库)到Share Library(共享库)