TDBGrid의 일부 셀에서 마우스 클릭을 시뮬레이션하는 방법은 무엇입니까?TDBGrid의 셀에 대한 마우스 클릭 시뮬레이션
1
A
답변
2
업데이트 :
이 코드는 당신이 원하는 것 무엇을 수행해야합니다
이type
TMyDBGrid = class(TDBGrid);
function TForm1.GetCellRect(ACol, ARow : Integer) : TRect;
begin
Result := TmyDBGrid(DBGrid1).CellRect(ACol, ARow);
end;
procedure TForm1.DBGrid1MouseUp(Sender: TObject; Button: TMouseButton; Shift:
TShiftState; X, Y: Integer);
var
Coords : TGridCoord;
begin
Coords := DBGrid1.MouseCoord(X, Y);
Caption := Format('Col: %d, Row: %d', [Coords.X, Coords.Y]);
end;
procedure TForm1.SimulateClick(ACol, ARow : Integer);
type
TCoords = packed record
XPos : SmallInt;
YPos : SmallInt;
end;
var
ARect : TRect;
Coords : TCoords;
begin
ARect := GetCellRect(ACol, ARow);
Coords.XPos := ARect.Left;
Coords.YPos := ARect.Top;
DBGrid1.Perform(WM_LButtonUp, 0, Integer(Coords));
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
SimulateClick(StrToInt(edX.Text), StrToInt(edY.Text));
end;
을 TDBGrid의 MouseCoord
함수는 열 번호로 좌표 (X, Y)의 한 쌍의 변환 (TGridCoord .X) 및 행 번호 ((TGridCoord.Y)
OnMouseUp
이벤트는 X & Y 입력 자료에 DBGrid1.MouseCoord를 호출 한 결과를 표시합니다 ents.
SimulateClick
은 그리드 셀의 클릭을 시뮬레이션합니다. GetCellRect를 사용하여 지정된 셀의 최상위 요소의 좌표 (DBGrid에서)를 가져온 다음 DBGrid에서 Perform (WM_LButtonUp, ...)를 호출하고 LParam 인수에 좌표를 전달합니다.
마지막으로 Button1Click
은 한 쌍의 TEd에서 Col 및 Row 값을 사용하여 SimulateClick을 호출합니다. 이로 인해 OnMouseUp 이벤트가 발생하고 Col 및 Row 번호가 표시되므로 해당 셀을 마우스로 클릭 할 때와 동일한 효과를 얻을 수 있습니다.
관련 문제
- 1. 마우스 클릭 시뮬레이션 AS3
- 2. NSWindow에서 마우스 클릭 시뮬레이션
- 3. Mac에서 마우스 클릭 시뮬레이션
- 4. 실제 마우스 클릭 시뮬레이션
- 5. jQuery에서 마우스 클릭 시뮬레이션
- 6. Windows에서 마우스 버튼 시뮬레이션 클릭
- 7. 백그라운드 창에서 마우스 클릭 시뮬레이션
- 8. C++ 마우스 클릭 시뮬레이션 코드
- 9. 자바 스크립트에서 마우스 클릭 이벤트 시뮬레이션
- 10. 최소화 된 창에서 마우스 클릭 시뮬레이션
- 11. 크롬 확장을위한 링크에서 마우스 클릭 시뮬레이션
- 12. 자스민 단위 테스트로 마우스 클릭 시뮬레이션
- 13. 웹 브라우저 컨트롤에서 마우스 클릭 시뮬레이션
- 14. jquery로 선택 옵션에서 마우스 클릭 시뮬레이션
- 15. 코드화 된 UI 테스트 : 마우스 클릭 시뮬레이션
- 16. QTableView : 특정 셀에 사용자가 클릭 마우스
- 17. iframe에서 마우스 커서 시뮬레이션
- 18. Android에서 마우스 시뮬레이션
- 19. 여러 마우스 이벤트 시뮬레이션
- 20. Windows에서 마우스 시뮬레이션
- 21. 마우스 릴리즈 시뮬레이션 Pyqt
- 22. 배경 마우스 시뮬레이션
- 23. 마우스 이동 시뮬레이션
- 24. Actionscript 3에서 마우스 이벤트 시뮬레이션
- 25. 테스트를위한 jqm 마우스 이벤트 시뮬레이션
- 26. C# x/y 위치에서 hwnd 마우스 클릭 시뮬레이션
- 27. 레이블 시뮬레이션 버튼 클릭 클릭
- 28. 페이지로드 후 시뮬레이션 마우스 왼쪽 클릭 추가 swf 객체
- 29. 마우스 클릭 시뮬레이션/파이썬에서 커서 아래에있는 색상 감지
- 30. 자바 스크립트를 사용하여 x, y에서 마우스 클릭 시뮬레이션
@RBA : OP의 특정 지점에 대답하지 않는 것 같습니까? – MartynA
왜 셀을 클릭하여 시뮬레이션해야합니까? 수행 할 행과 열을 알고 있다면 코드를 작성하여 수행하십시오. 그런 다음 셀을 실제로 클릭 할 때 같은 일이 발생하게하려면 OnCellClick 핸들러에서 해당 코드를 호출하면됩니다. 아니면 어떻게하는지 확신 할 수 없습니까? – MartynA
@MartynA 때로는 레코드를 제거하려고 할 때 문제가 발생합니다. 그러나 현재 행의 일부 셀을 선택하면 제거가 수행됩니다! .. – userPro