帮我看看,这个语句那儿写错了?(20分)

  • 主题发起人 主题发起人 DreamLand
  • 开始时间 开始时间
D

DreamLand

Unregistered / Unconfirmed
GUEST, unregistred user!
Case message.LParam of
WM_RBUTTONDOWN:
begin
Getcursorpos(MousePos);
mnuTrayPop.Popup(MousePos.X,MousePos.Y);
end
WM_LBUTTONDBLCLK:
frmShell.Show;
 
最后少个 end
???
 
Getcursorpos(MousePos);
Case message.LParam of
WM_RBUTTONDOWN:
mnuTrayPop.Popup(MousePos.X,MousePos.Y);
WM_LBUTTONDBLCLK:
frmShell.Show;
end;
写成这样就通过了,难道不能再case..of中间使用begin..end???
 
当然可以,只不过你上面的语句少了一个END;
 
我加过的,但是代码还是报错,你把我的代码改出来看看?
 
既然case才有两种情况,为什么不用if...then...语句呢?
 
Getcursorpos(MousePos);
Case message.LParam of
begin
WM_RBUTTONDOWN:
begin
mnuTrayPop.Popup(MousePos.X,MousePos.Y);
end;
WM_LBUTTONDBLCLK:
begin
frmShell.Show;
end;
end;
end;(此End不能少)
 
呵呵,搞笑:)
Case message.LParam of
WM_RBUTTONDOWN:
begin
Getcursorpos(MousePos);
mnuTrayPop.Popup(MousePos.X,MousePos.Y);
end
//<-- 少一个分号
WM_LBUTTONDBLCLK:
frmShell.Show;
end
//<--- 少 end;

case 语句中每一个条件分枝都是一个程序块,而程序块结尾都要加分号。
只有一个列外,就是if 语句存在else程序块时,then后面的程序块不能加分号。
 
谢谢啦!
 
教你永远不会错,你要给分我哦.
按ctrl+J选合适的句子后enter会自动加入你的程序.
 
啊又学一招:)[:)]
 
这一招真不错!还有没有什么快捷招数?
 
Case语句通常用来取代过度复杂的IF..else...if...else嵌套结构,但是需要注意的是,
作为CASE语句分支选择依据的值表达式必须是序数类型,比如Char类型,int类型,枚举
类型等
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
508
import
I
I
回复
0
查看
446
import
I
后退
顶部