现在被单击的是列表BUTTON 我想当单击TDBgrid 时就变到 场位这个BUTTON 被单击的状态TDBgrid 选择单击我都会 现在就不知道该怎么实现  点击BUTTON这个功能
以前用VC的时候 用过下面这个函数
SendMessage(WM_COMMAND, MAKEWPARAM(IDC_BUTTON1,BN_CLICKED), 0);
可是在DELPHI 里面怎么改都不行或者有没有其他的办法

解决方案 »

  1.   

    如果你是用adoquery关联dbgrid的,你就写在adoquery的afterscroll事件里,以此类推,就是把button里的功能写在关联dbgrid的数据源的afterscroll时间里就可以了最好判断下
    if adoquery.eof and adoquery.bof then
    begin
      button的功能
    end;
      

  2.   

    SendMessage(Button.Handle,WM_SETFOCUS,0,0);//为的是显示已单击的状态
    SendMessage(Button.Handle,WM_RBUTTONDOWN,0,0);
    SendMessage(Button.Handle,WM_RBUTTONUP,0,0);
      

  3.   

    在DBGRID中的鼠标点示事件上将BUTTON的状态修改..procedure TForm.DBGRIDCellClick()...
    begin
       //do edit button style.
    end;
      

  4.   

    procedure TForm1.DBGrid1CellClick(Column: TColumn);
    begin
        showmessage('你点击了DBGRID');
         //下面是修改BUTTON,
        SendMessage(Button1.Handle,WM_SETFOCUS,0,0);
    end;
      

  5.   

    procedure TForm1.Button1OnClick(Sender:TObject);
    begin
      showmessage('点击了按钮');
    end;procedure   TForm1.DBGrid1CellClick(Column:   TColumn); 
    begin 
            showmessage( '你点击了DBGRID '); 
              //下面是修改BUTTON, 
            Button1OnClick(Button1);
    end;