Russian Qt Forum
Май 18, 2024, 18:35 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Динамические вкладки в TabWidget qml  (Прочитано 4322 раз)
BuRn
Гость
« : Май 11, 2013, 17:20 »

Здравствуйте. Взял готовый пример таб виджета. Хочу создавать табы динамически, допустим на клик. Вот пример main.qml
Код:
import QtQuick 1.0

Rectangle{
    function addTab(){
        var newObject = Qt.createQmlObject('import QtQuick 1.0; Rectangle {property string title: "Green"; anchors.fill: parent;color: "#e3e3e3";Rectangle {anchors.fill: parent; anchors.margins: 20;color: "#7fff7f"; Text {width: parent.width - 20;anchors.centerIn: parent; horizontalAlignment: Qt.AlignHCenter;text: "Flower stems are green";font.pixelSize: 20;wrapMode: Text.WordWrap}}}',tabs);
    }

    Rectangle{
        id:button;
        height: 100;
        width: 100;
        color: "black"
        Text {
            id: text1
            text:"text"
            anchors.fill: parent
        }
        MouseArea{
            anchors.fill: button;
            onClicked: addTab();
        }
    }

 TabWidget {
     id: tabs
     x: 0
     y: 100
     width: 640; height: 380

     Rectangle {
         property string title: "Red"
         anchors.fill: parent
         color: "#e3e3e3"

         Rectangle {
             anchors.fill: parent; anchors.margins: 20
             color: "#ff7f7f"
             Text {
                 width: parent.width - 20
                 anchors.centerIn: parent; horizontalAlignment: Qt.AlignHCenter
                 text: "Roses are red"
                 font.pixelSize: 20
                 wrapMode: Text.WordWrap
             }
         }
     }
 }
}
Таба создается, но как - то не правильно. Складывается ощущение что нужно просто перерисовать весь элемент заново. Подскажите в чем мб проблема. Возможно ли такое получить с этим виджетом. Сам Tab Widget брал от сюда :http://qt-project.org/doc/qt-4.8/declarative-ui-components-tabwidget.html
Записан
lighting
Гость
« Ответ #1 : Май 13, 2013, 13:29 »

может создаваемому табу стоит родителя указать?
Записан
BuRn
Гость
« Ответ #2 : Май 13, 2013, 15:23 »

может создаваемому табу стоит родителя указать?
Код:
        var newObject = Qt.createQmlObject('import QtQuick 1.0; Rectangle {property string title: "Green"; anchors.fill: parent;color: "#e3e3e3";Rectangle {anchors.fill: parent; anchors.margins: 20;color: "#7fff7f"; Text {width: parent.width - 20;anchors.centerIn: parent; horizontalAlignment: Qt.AlignHCenter;text: "Flower stems are green";font.pixelSize: 20;wrapMode: Text.WordWrap}}}',tabs);
В конце строки, 2-ым аргументом, указан родительский виджет же
Записан
lighting
Гость
« Ответ #3 : Май 14, 2013, 12:23 »

сорри, не доглядел. Выложи компилируемый пример, чтобы можно было посмотреть детальнее.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.052 секунд. Запросов: 17.