C++Builder 程序员博客
3 Aug
目前我实现了一个MDI程序,我想通过双击方式,然后用我自己的MDI程序打开这个文件。目前文件类型已经和我的MDI程序关联起来了。因为这个MDI程序只允许一个进程实例。所以在没有启动的时候可以通过双击文件,在MDI show的时候获得传入文件的参数(文件名),然后将这个文件显示到子窗体中。
未实现点: 但是我想在任意时刻双击自定义文件的时候,MDI都能接受到这个消息并将获得这个文件名。从而在子窗体中显示出这个文件的内容。这个应该怎么做呢?
在你的应用程序中,判断ParamCount>1,说明有参数代入,ParamStr(1)就是双击的那个文件名。
那就是要在程序中用一个循环来不断检测这个参数值?
不需要。
关键的问题在于,你是如何“这个MDI程序只允许一个进程实例”,在这里做文章就行了。
是不是可以这样,你双击文件的时候其实都是要启动你的应用程序检测的,如果有实例已经运行的时候可以给你已有的实例发个消息,然后,你的应用处理这个消息就可以了吧
3 Aug
目前我实现了一个MDI程序,我想通过双击方式,然后用我自己的MDI程序打开这个文件。目前文件类型已经和我的MDI程序关联起来了。因为这个MDI程序只允许一个进程实例。所以在没有启动的时候可以通过双击文件,在MDI show的时候获得传入文件的参数(文件名),然后将这个文件显示到子窗体中。
未实现点: 但是我想在任意时刻双击自定义文件的时候,MDI都能接受到这个消息并将获得这个文件名。从而在子窗体中显示出这个文件的内容。这个应该怎么做呢?
在你的应用程序中,判断ParamCount>1,说明有参数代入,ParamStr(1)就是双击的那个文件名。
那就是要在程序中用一个循环来不断检测这个参数值?
不需要。
关键的问题在于,你是如何“这个MDI程序只允许一个进程实例”,在这里做文章就行了。
是不是可以这样,你双击文件的时候其实都是要启动你的应用程序检测的,如果有实例已经运行的时候可以给你已有的实例发个消息,然后,你的应用处理这个消息就可以了吧
3 Aug
目前我实现了一个MDI程序,我想通过双击方式,然后用我自己的MDI程序打开这个文件。目前文件类型已经和我的MDI程序关联起来了。因为这个MDI程序只允许一个进程实例。所以在没有启动的时候可以通过双击文件,在MDI show的时候获得传入文件的参数(文件名),然后将这个文件显示到子窗体中。
未实现点: 但是我想在任意时刻双击自定义文件的时候,MDI都能接受到这个消息并将获得这个文件名。从而在子窗体中显示出这个文件的内容。这个应该怎么做呢?
在你的应用程序中,判断ParamCount>1,说明有参数代入,ParamStr(1)就是双击的那个文件名。
那就是要在程序中用一个循环来不断检测这个参数值?
不需要。
关键的问题在于,你是如何“这个MDI程序只允许一个进程实例”,在这里做文章就行了。
是不是可以这样,你双击文件的时候其实都是要启动你的应用程序检测的,如果有实例已经运行的时候可以给你已有的实例发个消息,然后,你的应用处理这个消息就可以了吧
3 Aug
目前我实现了一个MDI程序,我想通过双击方式,然后用我自己的MDI程序打开这个文件。目前文件类型已经和我的MDI程序关联起来了。因为这个MDI程序只允许一个进程实例。所以在没有启动的时候可以通过双击文件,在MDI show的时候获得传入文件的参数(文件名),然后将这个文件显示到子窗体中。
未实现点: 但是我想在任意时刻双击自定义文件的时候,MDI都能接受到这个消息并将获得这个文件名。从而在子窗体中显示出这个文件的内容。这个应该怎么做呢?
在你的应用程序中,判断ParamCount>1,说明有参数代入,ParamStr(1)就是双击的那个文件名。
那就是要在程序中用一个循环来不断检测这个参数值?
不需要。
关键的问题在于,你是如何“这个MDI程序只允许一个进程实例”,在这里做文章就行了。
是不是可以这样,你双击文件的时候其实都是要启动你的应用程序检测的,如果有实例已经运行的时候可以给你已有的实例发个消息,然后,你的应用处理这个消息就可以了吧
3 Jul
我以下代码自定义数据集,然后添加数据,但发现在 DataSource6->DataSet->Open();
这行开始出错,请问怎么解决?
TDataSet *ADataSet=new TClientDataSet(this);
TClientDataSet *TempTable=NULL;
TDataSet *dsResult=NULL;
TFieldDefs *AFieldDefs;
ADataSet->FieldDefs->Add("Name",ftString,30,false);
ADataSet->FieldDefs->Add("Value", ftInteger,0,false);
AFieldDefs=ADataSet->FieldDefs;
TempTable=new TClientDataSet(Application);
TempTable->FieldDefs->Assign(AFieldDefs);
TempTable->CreateDataSet();
dsResult=(TDataSet *)TempTable;
TempTable->Append();
TempTable->FieldByName("Name")->AsString="Huang";
TempTable->FieldByName("Value")->AsString="123";
DataSource6->DataSet->Open();
delete ADataSet;
这不是建立临时表那个吗?
你的DataSource6什么时候绑定数据集了,我怎么没看到?
用代码怎么设置绑定以及添加数据,麻烦给个简单的例子吧
我想问一下,创建字段的时候,例如以下这句,最后面那2个参数 0,false 分别是代表什么意思,另外这个具体的说明我应该查阅什么帮助文件?
ADataSet->FieldDefs->Add("lackKuCun",ftFloat,0,false);
16 Feb
我有一个mdi程序,无菜单,只有按钮,点击每个按钮生成不同的页面,请问如何给每个按钮定义快捷键?这个快捷键在整个程序都是通用的,比如在a页面按下f1,立刻切换到b页面
注册热键或者通过键盘钩子实现。
最简单的设置你的按钮的快捷键后,把它拷贝到另外一个页面。
工作室寻求网络游戏外挂程序员,可长期合作,技术好的加QQ6630828 !!打扰之处,敬请见谅!!
13 Dec
class node
{
public:
int depth;
list <node> nlist;
};
提示:ompiling…
main.cpp
d:program filesmicrosoft visual studiovc98includelist(29) : error C2079: '_Value' uses undefined class 'node'
f:My DocumentsFiveInRowmain.cpp(24) : see reference to class template instantiation 'std::list <class node,class std::allocator <class node> >' being compiled
d:program filesmicrosoft visual studiovc98includefunctional(185) : error C2079: 'value' uses undefined class 'node'
d:program filesmicrosoft visual studiovc98includelist(285) : see reference to class template instantiation 'std::binder2nd <struct std::not_equal_to <class node> >' being compiled
f:My DocumentsFiveInRowmain.cpp(24) : see reference to class template instantiation 'std::list <class node,class std::allocator <class node> >' being compiled
Error executing cl.exe.
Creating browse info file…
FiveInRow.exe - 2 error(s), 0 warning(s)
但是把list <node> nlist换成 vector <node> nlist就没有错误,很是奇怪。
求高人解决啊!分数一定给,当搞了一天了,头都大了,也没整明白!
30 Nov
下面是一个自定义消息处理函数:
selectMsgHandle(TMessage & MSG)
请问,中间这个 & 号是什么意思呀。
多谢了。
取地址啊。
参数前加一个&表示传址模式
* 指针运算符
& 地址运算符
非常感谢了
也就是说,相当于传了一个指针过去。
30 Nov
下面是一个自定义消息处理函数:
selectMsgHandle(TMessage & MSG)
请问,中间这个 & 号是什么意思呀。
多谢了。
取地址啊。
参数前加一个&表示传址模式
* 指针运算符
& 地址运算符
非常感谢了
也就是说,相当于传了一个指针过去。
30 Nov
下面是一个自定义消息处理函数:
selectMsgHandle(TMessage & MSG)
请问,中间这个 & 号是什么意思呀。
多谢了。
取地址啊。
参数前加一个&表示传址模式
* 指针运算符
& 地址运算符
非常感谢了
也就是说,相当于传了一个指针过去。