Ứng dụng của chúng tôi được sử dụng để sử dụng một biểu mẫu cơ sở chung mà tất cả các biểu mẫu có nghĩa là kế thừa từ đó. Tôi muốn loại bỏ nó vì một số lý do, từ sự cần thiết đến cảnh sát mà mọi người đều sử dụng nó để một số phiền toái liên quan đến việc thực hiện VFI của Delphi. Nó chỉ ra rằng phần lớn các tính năng nó cung cấp có thể được thực hiện theo cách khác, đáng tin cậy hơn.Cách định vị biểu mẫu trước khi biểu mẫu hiển thị?
Điều mà tôi không chắc chắn, tự động định vị tất cả các biểu mẫu ở chính giữa người gọi của họ. Vì vậy, nếu tôi mở Hộp thoại A từ biểu mẫu chính của tôi, nó sẽ được đặt ở giữa biểu mẫu chính. Và nếu tôi mở Hộp thoại B từ Hộp thoại A, nó sẽ được đặt trên trung tâm của Hộp thoại A và cứ thế.
Chúng tôi đã từng xử lý tất cả điều này bằng cách đặt thuộc tính Vị trí của biểu mẫu cơ sở thành poOwnerFormCenter và nó hoạt động rất tốt. Nhưng làm cách nào để làm điều này trên toàn ứng dụng?
Tôi đã nghĩ đến việc sử dụng Screen.OnActiveFormChange, nhưng tôi nghĩ điều này xảy ra mỗi khi biểu mẫu nhận được tiêu điểm. Tôi cũng nghĩ đến việc sử dụng Application.OnModalBegin nhưng dường như không có cách nào rõ ràng để tìm thấy biểu mẫu tại thời điểm này được gọi.
Có ai đã thử điều này không?
+1 Tôi đã thoát khỏi căn cứ bởi vì mọi người không sử dụng nó và nó là một nỗi đau để cảnh sát nó. Vì vậy, tôi thực sự muốn lỗi logic của bạn ở đây, nhưng bạn nói đúng. Tôi vẫn không thể tìm thấy một cách đáng tin cậy để chăm sóc một hoặc hai yêu cầu mà không có cơ sở, vì vậy tôi đoán tôi sẽ phải đưa nó trở lại. Tôi chắc chắn nghĩ rằng tôi nên bỏ qua phần trực quan của thừa kế, bởi vì điều đó chỉ không hoạt động tốt. –
Tôi không chắc chắn, nhưng có thể là IDE Delphi có thể được cấu hình để ít nhất hỗ trợ bạn trong việc đánh giá lớp mà các biểu mẫu mới được dựa trên. –