Ярлыки

пятница, 6 апреля 2018 г.

KDE - одинаковые панели на каждом экране

При подключении второго монитора в KDE обычно системная панель не появляется, поэтому ее необходимо добавить.
 - На экране нажимаем правую кнопку мыши.
   Add Panel > Default panel (если вы хотите настроить свою панель выберите Application Menu Bar)
 - Если панель появилась не на нужной стороне:
   Правой кнопкой мыши по панели.
   Panel Options > Panel Settings
   Нажимаем на Screen Edge и тащим к нужной грани экрана.

Более подробно тут.

понедельник, 2 апреля 2018 г.

QQuickItem добавить дочерний элемент

Если необходимо чтобы один элемент рисовал поверх другого, то его необходимо сделать потомком. Это можно сделать передав родительский QQuickItem в конструктор потомка или вызвав метод setParentItem(parent) в потомке.
Более подробно тут.

четверг, 29 марта 2018 г.

Qt - QAbstractItemModel обновить при добавлении содержимого

Для обновления связанных с моделью представлений необходимо использовать beginInsertRows() endInsertRows() во время добавления данных. А в конце еще выпустить сигнал dataChanged().
Более подробно тут.

QML - TreeView скроллинг к текущему элементу

Если размер содержимого превышает размер TableView необходимо проскроллировать до текущего элемента. Для этого необходимо использовать скрытую переменную __listView.

    __listView.positionViewAtIndex(row, mode)

Более подробно тут.

QML - ListView прокрутить до выбранного значения

Если содержимое ListView превышает его размеры, то возможно понадобится программно совершить прокрутку до выделенного элемента, для этого используется positionViewAtIndex

   ListView {
        id: listView
        onCurrentIndexChanged: {
            positionViewAtIndex(currentIndex, ListView.Visible)
        }
   }

Более подробно тут.

QML - TreeView выделить строку программно

Если есть необходимость выделить строку из JavaScript необходимо использовать selection.setCurrentIndex.

import QtQml.Models 2.2

TreeView {
    id: viewPerSe
    selection: ItemSelectionModel {
        model: viewPerSe.model
    }
}
function select (idx) {
    viewPerSe.selection.setCurrentIndex(idx, ItemSelectionModel.ClearAndSelect)
}

Более подробно тут и тут.

понедельник, 19 марта 2018 г.

QML - TableViewColumn delegate вывести значение роли

Если необходимо переписать делегат, и вывести значение содержащееся в роли можно воспользоваться специальным свойством styleData.value.

delegate: {
   Text { text: styleData.value }
}

Более подробно тут и тут.