2010-06-28 33 views
6

Tôi biết giới hạn cho các điều khiển được đặt tên là 254, ngoài ra bạn phải sử dụng các mảng điều khiển. Nhưng có vẻ như chúng tôi cũng đã đạt đến giới hạn cho mảng. Bất kỳ ý tưởng giới hạn tuyệt đối đó là gì?VB 6: Tôi có thể có bao nhiêu điều khiển trên một biểu mẫu?

+3

Có thể bạn nên đánh giá lại thiết kế biểu mẫu của mình ... – ceejayoz

+2

Mục tiêu của tôi là thay thế toàn bộ ứng dụng, nhưng chúng tôi không thể thực hiện điều đó qua đêm. –

+0

Số chính xác không quan trọng đối với câu hỏi này tôi biết, nhưng hướng dẫn cho biết giới hạn là 254 thay vì 256 http://msdn.microsoft.com/en-us/library/aa240865(v=VS.60). aspx – MarkJ

Trả lời

7

Không có giới hạn tuyệt đối. Nếu bạn đặt đủ điều khiển trên biểu mẫu, cuối cùng bạn sẽ hết bộ nhớ. Tôi đã thực hiện một ứng dụng thử nghiệm tải các nút lệnh vào một mảng điều khiển. Lần chạy đầu tiên của tôi dừng lại với lỗi "Hết bộ nhớ" ở khoảng 6900 nút. Tôi tắt một vài ứng dụng khác và có thể tải gần 8200. Tôi đã làm điều tương tự với các hộp văn bản và có kết quả khác nhau (khoảng 7300 trước và sau 8600). Các điều khiển khác nhau tiêu thụ lượng bộ nhớ khác nhau, do đó, thực sự không có cách nào để chỉ định số lượng điều khiển chính xác mà bạn có thể đặt trên biểu mẫu.

1

Chúng tôi có hệ thống quản lý hồ sơ được viết bằng VB6 và có hướng dẫn UI cho biết mỗi bản ghi phải có chính xác một biểu mẫu nhập dữ liệu được liên kết với nó (tức là không thể mở các cửa sổ khác). Theo chính sách này, một trong các loại bản ghi phức tạp hơn trong hệ thống của chúng tôi hiện có biểu mẫu với tổng số 659 điều khiển riêng lẻ. Chúng tôi đã chạy vào 256 điều khiển được đặt tên giới hạn, và sau đó chuyển đổi nhiều điều khiển để kiểm soát mảng theo thời gian. Gần đây, chúng tôi đã nén phòng cho 5 hoặc 6 điều khiển mới, sau khi đi qua toàn bộ biểu mẫu và chuyển đổi một vài điều khiển độc lập còn lại để điều khiển mảng.

Đây là một lần mà tôi muốn phá vỡ các quy tắc, nhưng điều đó sẽ liên quan đến khá một chút việc tái cấu trúc để sử dụng phương pháp tiếp cận nhiều biểu mẫu.

Trong mọi trường hợp, bạn có thể phù hợp với ít nhất 659 điều khiển trên biểu mẫu, nhưng tôi chưa bao giờ có thể tìm ra giới hạn tuyệt đối thực sự là gì (và tôi không chắc chắn rằng mình muốn).

+0

Tôi nghĩ rằng chúng tôi đã vượt quá một nghìn khi chúng tôi đạt đến giới hạn khó khăn, nhưng tôi đang cố gắng tìm số chính xác để các nhà phân tích kinh doanh biết họ phải loại bỏ bao nhiêu dầu thô từ phiên bản tiếp theo. –

+1

Nếu biểu mẫu gần với giới hạn ngay bây giờ, bạn có thể thêm một số mã vào sự kiện _Form_Load_ để cho bạn biết có bao nhiêu điều khiển trên biểu mẫu ngay bây giờ, tức là 'MsgBox Me.Controls.Count'. Sau đó, bạn có thể thử và thêm nhiều điều khiển hơn cho đến khi bạn đạt đến giới hạn, sau đó chạy chương trình và xem số bạn nhận được trong hộp thư. –

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