送分问题...CheckListBox的用法???

zzlazio 2004-12-26 04:20:25
不会用呀...
就是比如有几个Items..
选中第一项作...
选中第二项作....
两项一起选作.......
三项一起选作.............
...全文
313 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzlazio 2004-12-27
  • 打赏
  • 举报
回复
哎..还是没明白诶..
选择A和B我不是要作A.B两件事情.
而是作另外的第三件事情..
lwgygz 2004-12-27
  • 打赏
  • 举报
回复
我有点不解:
如:单选A就执行事件A
单选B就执行事件B...
那么选择A和B不就是先执行事件A再执行事件B就可以了吗?难道这时是执行事件C吗?
zzlazio 2004-12-27
  • 打赏
  • 举报
回复
就拿A.B.C.D.E模拟不行么??
我实际就是5种图表..
客户选了几个我就在DBChart上画出那几个图表来...
lwgygz 2004-12-27
  • 打赏
  • 举报
回复
能说你的选项是什么吗?
zzlazio 2004-12-27
  • 打赏
  • 举报
回复
就算是3个ITEM..也有七种可能性呢..哎...
zzlazio 2004-12-27
  • 打赏
  • 举报
回复
这样说吧..
比如有3个Items.分别为a,b.c
单选A时候 DO 事件1;
单选B时候 DO 事件2;
同时选A,B时候 DO 事件3;
同时选A,C时候 DO 事件4;
同时选A,B,C时候 DO 事件5;

Items少的时候还好...我现在是五项就已经有够多可能了..再多怎么办呀??
一定要先全列出所有可能性么??
lwgygz 2004-12-27
  • 打赏
  • 举报
回复
说说你想达到的目的好吗?
如果你指定的事件是动态的话,看来是要进行多次的判断才能正确的进入过程或函数
zzlazio 2004-12-27
  • 打赏
  • 举报
回复
都只考虑选一项的情况..
如果我现在有5项..就有N多中排列方法,.
谁知道客户会选哪几项呢??难道我必须先列出所有可能来?
wozhuchuanwei 2004-12-27
  • 打赏
  • 举报
回复
这样吧
procedure TForm1.CheckListBox1Click(Sender: TObject);
var
I : Integer;
str: String;
begin
for I:=0 to CheckListBox1.Items.Count-1 do
begin
if CheckListBox1.Checked[I] then
Str := Str + CheckListBox1.Items.Strings[I];
end;
if Str='a' then
begin
......
end
if Str='b' then
begin
......
end
if Str='ab' then
begin
......
end
if str=.......
end;
DG_1 2004-12-27
  • 打赏
  • 举报
回复
case CheckListBox1.Checked of
true:do something ....
end;
case CheckListBox2.Checked of
true:do something ....
end;
zzlazio 2004-12-27
  • 打赏
  • 举报
回复
晕哦..
说了这么多遍还没明白我的意思??
无言诶..
g961681 2004-12-26
  • 打赏
  • 举报
回复
我想没这必要吧!没通用兴!
你具体什么情况!
zzlazio 2004-12-26
  • 打赏
  • 举报
回复
UP..
又掉了啊....
zzlazio 2004-12-26
  • 打赏
  • 举报
回复
晕了..
两项还可以了.
如果搞个5项的话怎么办??
有可能只选其中一个..
也有可能选2个,3个....
那不要写N个条件呀??
Kevin_Lmx 2004-12-26
  • 打赏
  • 举报
回复
我好晕哪,呵呵。
gxgyj(杰克.逊)别来无恙?
^_^
gxgyj 2004-12-26
  • 打赏
  • 举报
回复
Kevin_Lmx(繁华阅尽)
你可真快手啊!.....^_^
gxgyj 2004-12-26
  • 打赏
  • 举报
回复
if form1.CheckListBox1.Checked[1] and form1.CheckListBox1.Checked[2] then
showmessage('你选中了第2和第3项');
Kevin_Lmx 2004-12-26
  • 打赏
  • 举报
回复
procedure TForm1.Button1Click(Sender: TObject);
begin
if (CheckListBox1.Checked[CheckListBox1.Items.IndexOf('a')]) and
(not CheckListBox1.Checked[CheckListBox1.Items.IndexOf('b')]) then
begin
ShowMessage('a Checked');
end;
if (not CheckListBox1.Checked[CheckListBox1.Items.IndexOf('a')])and
(CheckListBox1.Checked[CheckListBox1.Items.IndexOf('b')]) then
begin
ShowMessage('b Checked');
end;
if (CheckListBox1.Checked[CheckListBox1.Items.IndexOf('a')])and
(CheckListBox1.Checked[CheckListBox1.Items.IndexOf('b')]) then
begin
ShowMessage('a、b Checked');
end;
end;
zzlazio 2004-12-26
  • 打赏
  • 举报
回复
UP..
在线等啊.
zzlazio 2004-12-26
  • 打赏
  • 举报
回复
啊...我还没说明白呀?
这样说吧..
有2个Items.分别为a,b.
单选A时候DO 事件1;
单选B时候DO 事件2;
同时选A,B时候DO 事件3;

而且我的事件代码应该是写在Buttonclick里..不是CheckListBox1Click
这样说明白么??
加载更多回复(4)

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧