Как сделать MainView максимально развернутым

Наборы Java обеспечивают LinkedHashMap из поля, которое является подходящим к созданию кэшей. У Вас, вероятно, нет этого в ME Java, но можно захватить исходный код здесь:

http://kickjava.com/src/java/util/LinkedHashMap.java.htm

, Если Вы не можете просто вставка копии, это, смотря на него должно получить Вас, начал реализовывать один для включения в Ваше мобильное приложение. Основная идея состоит в том, чтобы только включать связанный список через элементы карты. Если Вы держите это в курсе каждый раз, когда кто-то действительно помещает или добирается, можно эффективно отследить заказ доступа и использовать порядок.

документы содержат инструкции для создания Кэша MRU путем переопределения removeEldestEntry(Map.Entry) метод. Все, что действительно необходимо сделать, делают класс, который расширяется LinkedHashMap, и переопределите метод как так:

private static final int MAX_ENTRIES = 100;

protected boolean removeEldestEntry(Map.Entry eldest) {
   return size() > MAX_ENTRIES;
}

существует также конструктор , который позволяет Вам определить, хотите ли Вы, чтобы класс сохранил вещи в порядке вставкой или использованием, таким образом, у Вас есть немного гибкости для Вашей политики замещения, также:

public LinkedHashMap(int initialCapacity,
                     float loadFactor,
                     boolean accessOrder)

Передача верный для порядка использования и ложь для порядка вставки.

2
задан 15.05.2020, 13:10

2 ответа

Чтобы максимизировать окно, учитывая, что ваша цель - приложение для настольного компьютера, я бы использовал стандартные ярлыки, такие как двойной щелчок в строке заголовка. Конечно, есть и элементы управления оформлением окон.

Чтобы начать максимизацию, вы можете использовать свойства экрана:

import QtQuick 2.0
import QtQuick.Window 2.0

Rectangle {
    width: Screen.width
    height: Screen.height
    border.color: "lime"
    border.width: 15
    color: "transparent"
    Text {
        anchors.centerIn: parent
        text: Screen.width + " x " + Screen.height
        font.bold: true
        font.pointSize: 80
        color: "lime"
        smooth: true
    }
}

Только Qt5.1 предлагает точный контроль над такими операциями с окнами: Посетите http://qt-project.org/ doc / qt-5.1 / qtquick / qml-qtquick-window2-window.html # visibility-prop

В качестве альтернативы, чтобы максимизировать представление, вы можете экспортировать функцию C ++, которая вызовет QWidget: : showMaximized () для вас, а затем вызовите его из QML.

3
ответ дан 15.05.2020, 13:11

Просто используйте visibility:

visibility: "Maximized"

Документ гласит:

visibility : QWindow::Visibility

состояние занятости окна.

Видимость - это то, должно ли окно появляться в оконной системе как нормальное, свернутое, развернутое, полноэкранное или скрытое .

Установить видимость на AutomaticVisibility означает дать окну видимое состояние по умолчанию, которое может быть полноэкранным или оконным в зависимости от платформы. Однако при чтении свойства видимости вы всегда получите фактическое состояние, а не AutomaticVisibility.

Когда окно невидимо, его видимость скрыта, а настройка видимости скрыта аналогична настройке, видимой ложно.

Также известно возможные значения для этого атрибута.

3
ответ дан 15.05.2020, 13:11

Теги

Похожие вопросы