2013-08-02 19 views
5

tôi có hai Widget có cài đặt riêng. Họ là ...
MessageInboxUi
ComposeMessageUiCách xác định lại thứ tự z trong tiện ích con Qt

Cả hai sẽ hiển thị ở chế độ toàn màn hình.

Trong MainWindow i thêm cả phụ tùng ở sau dãy

ComposeMessageUi* ptrEditor = new ComposeMessageUi(this); // this is inside 
MessageInboxUi * ptrInbox = new MessageInboxUi(this);  // MainWindow Constructor 

nên khi tôi gọi cho thấy chức năng của ComposeMessageUi khi MessageInboxUi đang hiển thị, nó không hiển thị (bởi vì nó hiển thị đằng sau MessageInboxUi).

Làm thế nào tôi có thể làm ComposeMessageUi phía trước (có nghĩa là làm thế nào tôi có thể định nghĩa lại họ z-trật tự)

+0

lookat QStackedLayout. có thể nó giúp bạn: http://harmattan-dev.nokia.com/docs/library/html/qt4/qstackedlayout.html – Mostafa

Trả lời

8

Nếu bạn muốn ComposeMessageUi để chặn MainWindow đặt cờ modal với

void setModal(true); 

Nếu mã của bạn không có nguồn gốc từ QDialog bạn cuối cùng cần phải sử dụng

void setWindowModality(Qt::ApplicationModal); 

(xem tài liệu cho alternative modality modes)

Để chỉ mang lại cho cửa sổ của bạn để phía trước, bạn có thể sử dụng:

void QWidget::raise(); 
+0

cảm ơn bạn đã trả lời. – Jai