我有两个窗口,main和login
在main的菜单选择登录就进入login
如何从login返回登录成功与否的标志log给main???
log是boolean变量,怎样设置log参数啊??急,在线等...

解决方案 »

  1.   

    在main定义
    var log: boolean;在login定义
    var plog: ^boolean;在main里调用
    login := TLogin.Create(self);
    login.plog := @log;
    login.showmodal;在login里直接给plog赋值就可以了.
      

  2.   

    怎么对plog赋值不了啊?
    它提示说类型不匹配
      

  3.   

    何必麻烦,你将Login窗体ShowModal,在Login内设置它的ModalResult,在main窗体里只需要检查Login窗体的ModalResult就OK了.就像下面这样:
    // unit main
    var  log: boolean;
    with TLogin.Create(Self) do
    begin
      ShowModal;
      log:=(ModalResult=mrOk);
      Free;
    end;
      

  4.   

    哈哈,我用惯了C++的指针.
    其实用指针还有个好处,就是可以引用任意类型的变量,甚至是引用对象.
    而且不限于一个ModalResult赋值时要这样
    plog^:=true;
      

  5.   

    呵呵将login的确定按钮设置为一个BitBtn就可以了
    然后在main中来对这个事件进行判断
    if Login_Form.ShowModal=mrOK then
    begin
    ....
    ....
    end;