标准写法:
TV:TTreeView;
if Assigned(TV.Selected) then
if TV.Selected.Text = 'a' then
begin
//...............
end;但这样用也不出错: if Assigned(TV.Selected) and (TV.Selected.Text = 'a') then
begin
//............................. end;是不是Delphi判断 and 前面的不成立就不执行后面的了?
这种用法是否安全?
TV:TTreeView;
if Assigned(TV.Selected) then
if TV.Selected.Text = 'a' then
begin
//...............
end;但这样用也不出错: if Assigned(TV.Selected) and (TV.Selected.Text = 'a') then
begin
//............................. end;是不是Delphi判断 and 前面的不成立就不执行后面的了?
这种用法是否安全?
begin
//............................. end;//安全的~~
//测试如下代码~~procedure TForm1.Button1Click(Sender: TObject);
begin
{$B-}
if (MessageDlg('1', mtWarning, [mbYes, mbNo], 0) = mrYes) and
(MessageDlg('2', mtWarning, [mbYes, mbNo], 0) = mrYes) and
(MessageDlg('3', mtWarning, [mbYes, mbNo], 0) = mrYes) and
(MessageDlg('4', mtWarning, [mbYes, mbNo], 0) = mrYes) and
(MessageDlg('5', mtWarning, [mbYes, mbNo], 0) = mrYes) then ;
{$B+}
if (MessageDlg('*1', mtWarning, [mbYes, mbNo], 0) = mrYes) and
(MessageDlg('*2', mtWarning, [mbYes, mbNo], 0) = mrYes) and
(MessageDlg('*3', mtWarning, [mbYes, mbNo], 0) = mrYes) and
(MessageDlg('*4', mtWarning, [mbYes, mbNo], 0) = mrYes) and
(MessageDlg('*5', mtWarning, [mbYes, mbNo], 0) = mrYes) then ;
end;//Delphi中默认为$B-