Z
zhang_yz6666
Unregistered / Unconfirmed
GUEST, unregistred user!
不知众位高手中,在delphi开发过程中有没有遇到这样一个问题!
当要求系统弹出一个消息框:出现三种情况,如何进行显示,选择和确定。
比如:
要求有条件的删除一个文件:
1.当条件为1是删除。
2.当条件为2是删除。
3.不删除。
问题:
1。我用messagebox()函数,显示只有:yes,no,Cancel等(系统本身差数)类似的
按钮。不可能出现自制的按钮(“删除1”,”删除2“,“不删除”等按钮)。
2。我采用系统其他函数 messageDlg,showMessage,inputbox,Inputquery等都不能满足。
3。假如我采用messagebox
比如:
if Messagebox(Self.Handle,Pchar('你是要删除"'+BBCdwmc+'"全部数据,还是只删除该单位'+ BBCnf +'年' + BBCjd + '的数据!'+#13+'如果是删除全部数据,请选择"是"'+#13+'如果是删除该时段的数据,请选择"否"'+#13+'如果不删除数据,请选择"取消"'),'重要提示',MB_YESNOCANCEL+MB_ICONEXCLAMATION) = IDCancel then
begin
Exit ;
end
Else if Messagebox(Self.Handle,Pchar('你是要删除"'+BBCdwmc+'"全部数据,还是只删除该单位'+ BBCnf +'年' + BBCjd + '的数据!'+#13+'如果是删除全部数据,请选择"是"'+#13+'如果是删除该时段的数据,请选择"否"'+#13+'如果不删除数据,请选择"取消"'),'重要提示',MB_YESNOCANCEL+MB_ICONEXCLAMATION) = IDYes then
begin
showmessage('IDYes');
Exit ;
end
Else if Messagebox(Self.Handle,Pchar('你是要删除"'+BBCdwmc+'"全部数据,还是只删除该单位'+ BBCnf +'年' + BBCjd + '的数据!'+#13+'如果是删除全部数据,请选择"是"'+#13+'如果是删除该时段的数据,请选择"否"'+#13+'如果不删除数据,请选择"取消"'),'重要提示',MB_YESNOCANCEL+MB_ICONEXCLAMATION) = IDNO then
begin
showmessage('IDNO');
Exit ;
end ;
那么,我必须这样才能知道三个返回值。但最后一个消息要出现三次!
我的写法是否有误!请指正。
4。能否提供一个好的解决方法!(按钮方式)
5。能否提供一个类似下来框选择条件的方法!
当要求系统弹出一个消息框:出现三种情况,如何进行显示,选择和确定。
比如:
要求有条件的删除一个文件:
1.当条件为1是删除。
2.当条件为2是删除。
3.不删除。
问题:
1。我用messagebox()函数,显示只有:yes,no,Cancel等(系统本身差数)类似的
按钮。不可能出现自制的按钮(“删除1”,”删除2“,“不删除”等按钮)。
2。我采用系统其他函数 messageDlg,showMessage,inputbox,Inputquery等都不能满足。
3。假如我采用messagebox
比如:
if Messagebox(Self.Handle,Pchar('你是要删除"'+BBCdwmc+'"全部数据,还是只删除该单位'+ BBCnf +'年' + BBCjd + '的数据!'+#13+'如果是删除全部数据,请选择"是"'+#13+'如果是删除该时段的数据,请选择"否"'+#13+'如果不删除数据,请选择"取消"'),'重要提示',MB_YESNOCANCEL+MB_ICONEXCLAMATION) = IDCancel then
begin
Exit ;
end
Else if Messagebox(Self.Handle,Pchar('你是要删除"'+BBCdwmc+'"全部数据,还是只删除该单位'+ BBCnf +'年' + BBCjd + '的数据!'+#13+'如果是删除全部数据,请选择"是"'+#13+'如果是删除该时段的数据,请选择"否"'+#13+'如果不删除数据,请选择"取消"'),'重要提示',MB_YESNOCANCEL+MB_ICONEXCLAMATION) = IDYes then
begin
showmessage('IDYes');
Exit ;
end
Else if Messagebox(Self.Handle,Pchar('你是要删除"'+BBCdwmc+'"全部数据,还是只删除该单位'+ BBCnf +'年' + BBCjd + '的数据!'+#13+'如果是删除全部数据,请选择"是"'+#13+'如果是删除该时段的数据,请选择"否"'+#13+'如果不删除数据,请选择"取消"'),'重要提示',MB_YESNOCANCEL+MB_ICONEXCLAMATION) = IDNO then
begin
showmessage('IDNO');
Exit ;
end ;
那么,我必须这样才能知道三个返回值。但最后一个消息要出现三次!
我的写法是否有误!请指正。
4。能否提供一个好的解决方法!(按钮方式)
5。能否提供一个类似下来框选择条件的方法!