回 帖 发 新 帖 刷新版面

主题:有关集合的问题

小弟我看不太明白这些代码;希望高手给做些注解~`[em1]
interface//定义全局变量
var

 form1: tform1;
  dlgtype:array [0..4] of TMsgDlgType=(mtwarning,mtError,mtInformation,mtconfitmation,mtcustom);
  buttons:set of TMsgDlgBtn=[];


~~~~~~~~~~
procedure TForm1.SpeedButton1Click(Sender: TObject);//这是按键程序
var value:integer;
begin
  if checkbox1.checked then buttons:=buttons + [mbOK]
  else buttons:=buttons - [mbOK];
  if checkbox2.checked then buttons:=buttons + [mbCamcel]
  else buttons:=buttons - [mbCamcel];
  if checkbox3.checked then buttons:=buttons + [mbAbort]
  else buttons:=buttons - [mbAbort];
  if checkbox4.checked then buttons:=buttons + [mbRetry]
  else buttons:=buttons - [mbretry];
  if checkbox5.checked then buttons:=buttons + [mbignore]
  else buttons:=buttons - [mbigonre];
  if checkbox6.checked then buttons:=buttons + [mbYes]
  else buttons:=buttons - [mbYes];
  if checkbox7.checked then buttons:=buttons + [mbNO]
  else buttons:=buttons - [mbNo];
  if checkbox8.checked then buttons:=buttons + [mbYestoall]
  else buttons:=buttons - [mbyestoall];
  if checkbox9.checked then buttons:=buttons + [mbnotoall]
  else buttons:=buttons - [mbnotoall];
  if checkbox10.checked then buttons:=buttons + [mbYestoall]
  else buttons:=buttons - [mbYestoall];
  if checkbox11.checked then buttons:=buttons + [mbhelp]
  else buttons:=buttons - [mbhelp];
  value:Messagedlg(memo1.Text,slgtype[radioGroup1.itemindex],buttons,0);
  showmessage('返回值是: '+inttostr(value);



大家给我留点注解  呵呵
[em8]

回复列表 (共2个回复)

沙发

interface//定义全局变量
var

 form1: tform1;
  dlgtype:array [0..4] of TMsgDlgType=(mtwarning,mtError,mtInformation,mtconfitmation,mtcustom);//定义dlgType变量为一维数组,共四个元素,其基类是TMsgDlgType(消息对话框类型)
  buttons:set of TMsgDlgBtn=[];//定义buttons变量为集合类型,初值为空集,基类是TMsgDlgBtn(消息对话框按钮)


~~~~~~~~~~
procedure TForm1.SpeedButton1Click(Sender: TObject);//这是按键程序
var value:integer;
begin
//以下代码为根据checkbox1-11的不同值,设置按钮的不同集合
  if checkbox1.checked then buttons:=buttons + [mbOK]//+为集合运算符,意思是并集
  else buttons:=buttons - [mbOK];//-为集合运算符,意思是差集
  if checkbox2.checked then buttons:=buttons + [mbCamcel]//以下同
  else buttons:=buttons - [mbCamcel];
  if checkbox3.checked then buttons:=buttons + [mbAbort]
  else buttons:=buttons - [mbAbort];
  if checkbox4.checked then buttons:=buttons + [mbRetry]
  else buttons:=buttons - [mbretry];
  if checkbox5.checked then buttons:=buttons + [mbignore]
  else buttons:=buttons - [mbigonre];
  if checkbox6.checked then buttons:=buttons + [mbYes]
  else buttons:=buttons - [mbYes];
  if checkbox7.checked then buttons:=buttons + [mbNO]
  else buttons:=buttons - [mbNo];
  if checkbox8.checked then buttons:=buttons + [mbYestoall]
  else buttons:=buttons - [mbyestoall];
  if checkbox9.checked then buttons:=buttons + [mbnotoall]
  else buttons:=buttons - [mbnotoall];
  if checkbox10.checked then buttons:=buttons + [mbYestoall]
  else buttons:=buttons - [mbYestoall];
  if checkbox11.checked then buttons:=buttons + [mbhelp]
  else buttons:=buttons - [mbhelp];
  value:(此处应有个'='号)Messagedlg(memo1.Text,slgtype[radioGroup1.itemindex],buttons,0);
  showmessage('返回值是: '+inttostr(value);
上面代码应是一个测试对话框返回值的程序

板凳

差集是怎么运算的啊:
我知道交集是:
A=[1,2,3,];B=[1.5.9]
A*B=[1]
并集是:
A=[1,2,3,];B=[1.5.9]
A+B=[1,2,3,5,9]
那么差集具体是怎么运算的啊~
高手指点下啦~小弟没学过差集啊~

我来回复

您尚未登录,请登录后再回复。点此登录或注册