ДС
01 лютого 2022 р. 14:15
Синхронизация анимаций в ListView
Добрый день. Столкнулся с проблемой синхронизации анимации разных делегатов. У меня есть ListView, в котором хранятся делегаты состояния сети, я навешиваю анимацию на индикатор состояния при переходя состояний. Вопрос, как синхронизировать анимации внутри делегатов, чтобы они меняли свойство opacity в "такт".
ListView { id: networkList model: ListModel { id: networksModel } highlightMoveDuration : 200 orientation: ListView.Horizontal anchors.right: right_button.left anchors.left: left_button.right anchors.top: parent.top anchors.bottom: parent.bottom anchors.leftMargin: 10 * pt anchors.rightMargin: 10 * pt delegate: networkItem interactive: false clip: true } Component { id: networkItem Item { id:controlDelegate width: networksModel.count > visible_count -1 ? item_width : parent.parent.width/networksModel.count height: 40 RowLayout { anchors.verticalCenter: parent.verticalCenter anchors.horizontalCenter: parent.horizontalCenter spacing: 5 * pt Text { id: nameNet Layout.fillWidth: true font: dapQuicksandFonts.dapMainFontTheme.dapFontQuicksandBold12 color: currTheme.textColor text: name } ImageLoader{ id:img Layout.alignment: Qt.AlignVCenter Layout.preferredHeight: 8 * pt Layout.preferredWidth: 8 * pt innerWidth: 8 * pt innerHeight: 8 * pt source: networkState === "OFFLINE" ? "qrc:/resources/icons/" + pathTheme + "/indicator_offline.png" : networkState === "ERROR" ? "qrc:/resources/icons/" + pathTheme + "/indicator_error.png": "qrc:/resources/icons/" + pathTheme + "/indicator_online.png" } SequentialAnimation { NumberAnimation { target: img properties: "opacity" from: 1.0 to: 0.1 duration: 1000 } NumberAnimation { target: img properties: "opacity" from: 0.1 to: 1.0 duration: 1000 } loops:Animation.Infinite running: networkState !== targetState? true : false onRunningChanged: { if(!running) img.opacity = 1; } } } } } }
1
99
Вам це подобається? Поділіться в соціальних мережах!
- Останні пройшли тести
- АП09 березня 2025 р. 21:16
- Останні коментарі
- VP09 березня 2025 р. 16:14Здравствуйте! Я устанавливал Qt6 из исходников а также Qt Creator по отдельности. Все компоненты, связанные с разработкой для Android, установлены. Кроме одного... Когда пытаюсь скомпилиров…
- ИМ22 листопада 2024 р. 21:51Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
- Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
- Тепер обговоріть на форумі
- f15 лютого 2025 р. 13:46Подскажите, пожалуйста! Как данный класс можно дополнить, чтобы созданные объекты можно было перемещать мышкой по сцене?
- Не запускается компьютер (точнее работает блок , но сам монитор вообще жесть)В общем я ничего с интернета не скачивала в последнее время. На компе никаких левых пр…
- Вопрос решен. Узнать QModelIndex элемента на который мы перетаскиваем другой элемент, можно с помощью функции indexAt(event->position().toPoint()) представления QTreeViev вызываемой в переопр…
- Спасибо большое за помощь и простите за то что отнял время своей невнимательностью.