Вот ситуация. У меня есть класс, который получен из QListView, который добавляет некоторые удобные функции, пользовательский виджет, если хотите. Я не хочу бороться с дизайнером, чтобы использовать мой виджет. Я просто хочу использовать простой QlistView в Designer (как заполнитель) и скомпилировать его с pyuic4. Во время выполнения я хочу заменить этот обычный QListView своей собственной версией.замена виджета во время выполнения
Как вы можете это сделать?
я что-то вроде этого, надеясь в INIT будет делать трюк:
self.lstView1 = MyListView
но это не ...
Пожалуйста, более конкретно. «Но это не так» недостаточно объяснимо. Есть ли ошибка при компиляции? Есть ли ошибка во время выполнения? Какая ошибка? – erelender
Ошибок в строке выше. Мой старый простой QListView по-прежнему существует (видимый) и никаких признаков моего пользовательского QListView. Я также пробовал некоторые другие опции: self.lstView1 = MyListView (self): здесь используется self (a QDialog) в качестве родителя. Пользовательское listview появляется сейчас, но не в том месте (где-то в верхнем левом углу и очень мало). Затем я попробовал self.lstType = TypeList (self.layoutWidget), где self.layoutWidget - это макет, используемый виджетами-заполнителями (простой QListView). Он снова появляется, но все еще не в нужном месте. Кстати, старый QListview все еще существует и никогда не удаляется. –