我最近开发一个应用程序,ADO+BPL+DEV EXPRESS
在CXGRID上遇到一些问题1.DBGRID中的COLEXIT事件,在CXGRID中是没有的,转化为FocusedItemChanged事件,非常不好用;
2.KEYPRESS、KEYDOWN事件也无法操作
3.我控制焦点移动时,用的方法是
tvoperator.Columns[0].Focused:=TRUE
不知道有没有更好的方法,还请各位大侠不啬赐教。
也请有CXGRID资料的朋友与我交流一下!msn:[email protected]

解决方案 »

  1.   

    procedure TBA002F.FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    begin
      inherited;
      if key=0 then
        tvoperator.Controller.FocusNextCell(true); //当按键为回车键时,移到下一格
      if key=vk_f2 then
      begin
        case tvoperator.Controller.FocusedItemIndex of
        2: tvoperatorRNAMEPropertiesButtonClick(Sender,0); //在第二列,按F2键,调用CELLBUTTON事件,弹出查找窗口
        3: tvoperatordNAMEPropertiesButtonClick(Sender,0); //在第三列,按F2键,调用CELLBUTTON事件,弹出查找窗口
        end;
      end;
    end;procedure TBA002F.FormKeyPress(Sender: TObject; var Key: Char);
    begin
      inherited;
      // 输入时,小写字母变成大写字母
      if (key>='a') and (key<='z') then key:=chr(ord(key)-32);
    end;
      

  2.   

    还有一个问题,就是
    DBGRID中的COLEXIT事件,和CXGRID中的什么事件是一致的?
    楼主24小时等待,这个问题解决后,马上结帖。