2016-11-03 17 views
9

Tôi đang phát triển một thành phần trực quan (VCL), một TPanel chuyên dụng. Tôi cần phải chặn khi người dùng di chuyển một điều khiển rơi trên bảng điều khiển đặc biệt của tôi trong khi chỉnh sửa biểu mẫu. Tôi cần phải ngăn chặn di chuyển để điều chỉnh các thuộc tính trực quan của các điều khiển khác rơi trên cùng một bảng điều khiển đặc biệt.Cách chặn chuyển động điều khiển khi chỉnh sửa biểu mẫu Delphi

Câu hỏi của tôi là: làm thế nào để chặn/phát hiện/phản ứng với việc di chuyển điều khiển bị rơi trên thành phần có nguồn gốc TCustomPanel, trong khi người dùng đang chỉnh sửa biểu mẫu trong IDE?

+0

Bạn có thể ghi đè lên 'AlignControls' – kobik

+0

Cảm ơn @kobik đó là giải pháp phù hợp. Nếu bạn viết lại nó như một câu trả lời, tôi sẽ cho bạn câu trả lời đúng. – fpiette

+1

Tôi rất tò mò nếu cách tiếp cận này hoạt động. – RBA

Trả lời

6

Bạn có thể ghi đè phương thức AlignControls của vùng chứa TPanel. đối số AControl sẽ cho bạn biết điều khiển con nào được di chuyển hoặc chèn vào vùng chứa và phản ứng tương ứng. Sau đó, bạn có thể điều chỉnh vị trí của các điều khiển con khác nếu cần.

+1

Điều đó hoạt động hoàn hảo. Cảm ơn. – fpiette

Các vấn đề liên quan