Trong các khoảng thời gian đều đặn của chương trình của tôi, cần phải thêm một khối (trong số 3 ô xếp chồng) vào bố cục nằm ngang. Kể từ khi các vật dụng trong mỗi khối là quan trọng đối với eachother, tôi muốn đóng gói mỗi ngăn xếp như là widget riêng của nó (làm cho việc bố trí thêm kinh doanh dễ dàng hơn nhiều).PyQt4 - Cấu trúc lớp tiện ích tùy chỉnh?
Tôi gặp sự cố khi PyQt4 nhận ra 'chồng' của tôi làm tiện ích.
Tôi đã tạo ngăn xếp tiện ích trong Nhà thiết kế Qt (dưới dạng biểu mẫu: tiện ích con) và chuyển đổi nó thành .py qua
'pyuic4 DesignerFile.ui> ClassFile.py'.
Bây giờ tôi không thể thêm 'ngăn xếp' này (tiện ích con của 3 tiện ích con) vào bố cục qua .addWidget (Lớp).
tôi đã cố gắng xây dựng một lớp siêu của lớp ngăn xếp (vì tôi cần thêm nhiều chức năng hơn để ngăn xếp) nhưng trường hợp của lớp được một trong hai ...
- Không công nhận là một widget
- Ẩn số
- bị lỗi vì tôi không có ý tưởng về cách cấu trúc lớp siêu.
Dưới đây là những gì tôi đang thất bại với tại thời điểm này (mặc dù đó là về cấu trúc lớp 8 tôi đã cố gắng):
from ClassFile import ClassCode
class Stack(ClassCode):
def __init__(self,parent= None):
QtGui.QWidget.__init__(self,parent)
ai đó có thể giúp tôi cấu trúc này hoặc đưa tôi đến với một số ví dụ tốt ?
(tôi đã bắt chước mã trong cả các nguồn sau đây nhưng không có avail !!
http://lateral.netmanagers.com.ar/stories/27.html#what-you-need-to-follow-the-tutorial
http://zetcode.com/tutorials/pyqt4/customwidgets/)
Cảm ơn!
Specs:
python 2.7.2
PyQt4
Windows 7
Có thể truyền một chuỗi cho hàm tạo (khi instantiation widget) được sử dụng thông qua widget không? Ví dụ: x = Stack ('cat') –
@AntiEarth. Chắc chắn: bạn có thể thiết kế lớp con 'Stack' của mình theo bất kỳ cách nào bạn thích - giống như phân lớp bất kỳ tiện ích Qt nào khác. Vì vậy, chữ ký của 'Stack .__ init__' có thể được thay đổi thành ví dụ: '__init __ (self, name, parent = None)'. – ekhumoro