2010-12-13 20 views
8

Có thể tra cứu giá trị biểu định kiểu khi chạy trong Qt không?Xác định tùy chọn biểu định kiểu Qt theo chương trình?

Tôi đang làm việc trên nút tùy chỉnh bắt nguồn từ QPushButton có một số thuộc tính biểu định kiểu được đặt. Tôi muốn có thể tra cứu một số cài đặt biểu định kiểu như chiều rộng đường viền, margin, padding-top, padding-left, padding-right, v.v. Điều này có thể thực hiện được mà không cần gọi số widget->getStyleSheet() và tự phân tích cú pháp các giá trị không?

Trả lời

3

Đừng nghĩ vậy, bạn có thể tìm thấy thứ gì đó bằng cách bước qua mã vẽ. Nhưng việc phân tích cú pháp và việc áp dụng các bảng định kiểu được tối ưu hóa khá tốt và sử dụng rất nhiều tiền xử lý. Tôi thậm chí không nghĩ rằng bạn có thể nhận được các stylesheet của một widget nếu nó đã thực sự được thiết lập trong một phụ huynh.

5

Trong nội bộ, khi bạn gọi QApplication :: setStyleSheet() Qt tạo một lớp con QStyle có tên là QStyleSheetStyle.

Điều đó có nghĩa là bạn có thể truy vấn thông tin về bảng định kiểu thông qua các phương pháp QStyle thông thường. Chỉ cần nhớ điền các tùy chọn và thông số tiện ích đúng cách để đảm bảo bạn nhận được đúng giá trị từ bảng định kiểu.

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