2014-05-13 38 views
5

Tôi muốn tạo QToolBar có 3 cột nút khi được gắn ở bên trái của QMainWindow, nhưng có 1 hàng khi được gắn trên đỉnh của cửa sổ chính. Điều này có thể không?Tạo Thanh công cụ có bố cục lưới

Tôi đã thử sử dụng QToolBar với bố cục tùy chỉnh, nhưng hành vi kích thước lại bình thường của QToolBar không hoạt động (không ẩn tiện ích sau nút mở rộng khi quá nhỏ). Nút mở rộng không hoạt động không phải là vấn đề lớn, nhưng vấn đề lớn hơn là bố cục tùy chỉnh ngăn cửa sổ chính nhỏ hơn thanh công cụ.

Trả lời

6

Tôi có thể có được hành vi mong muốn bằng cách đặt mỗi hàng của các nút Công cụ trong một QHBoxLayout, đặt bố cục đó vào một ô trống QWidget và gọi toolBar->addWidget(widget) cho mỗi hàng. Điều này mang lại cho tôi một thanh công cụ lưới khi thanh công cụ được gắn ở bên trái và thanh ngang đơn khi được gắn trên đỉnh.

+0

Vui vì bạn đã làm điều đó! Bạn có thể chia sẻ một số hình ảnh về nó? – Tay2510

+1

Xin lỗi, tôi không nghĩ tôi có thể chia sẻ bất kỳ hình ảnh nào. Nhưng tôi có thể mô tả cách ứng xử của nó. Thanh công cụ, khi được gắn ở bên trái, là một lưới có 3 cột và một vài hàng. Khi tôi thu nhỏ cửa sổ theo chiều dọc để thanh công cụ không có đủ chỗ, các hàng nút sẽ bắt đầu biến mất sau nút QT mở rộng thông thường. Khi bạn nhấp vào nút mở rộng, các hàng ẩn sẽ xuất hiện, mặc dù hơi kỳ lạ vì chúng vẫn được nhóm trong 3. – pauld

+1

Khi thanh công cụ được gắn trên đỉnh, nó trông và hoạt động gần giống như một thanh công cụ thông thường, ngoại lệ duy nhất là khi cửa sổ chính bị thu hẹp theo chiều ngang, các nút sẽ bắt đầu sụp đổ theo nhóm 3, thay vì 1 tại một thời điểm . – pauld

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