Политика конфиденциальностиКонтактыО сайтеОтзывыGitHubDonate
© EVILEG 2015-2018
Рекомендует хостинг
TIMEWEB
ЧГ
16 декабря 2018 г. 8:04

Как сменить превью окна в Qt программе на windows?

Qt, c++, WinApi

Добрый день, есть приложение, с нестандартным интерфейсом. Как можно поменять превью приложения в панели задач на свою картинку? Как например в аimp, там наводишь мышь на иконку в таск баре и показывается какой-то значок, никак не само приложение, хотелось бы в своём проекте подобное реализовать. Спасибо

2

Добрый день!

Скорее всего нужно будет использовать winextras компоненты.

Вот несколько статей на эту тему:

Они не имеют прямого отношения к тому, что вам нужно, но там есть пример того, как использовать QtWinExtras классы.

Возможно, что-то можно будет сделать с помощью класса QWinTaskbarButton

А вообще, из того, что там что-то можно сделать, максимум будет в одном из этих классов

Если там нет необходимого, то тогда придётся смотреть в сторону использования WinAPI напрямую.

1
R

перевірено все працює

http://doc.qt.io/qt-5/appicon.html

Setting the Application Icon on Windows

First, create an ICO format bitmap file that contains the icon image. This can be done with e.g. Microsoft Visual C++: Select File|New, then select the File tab in the dialog that appears, and choose Icon. (Note that you do not need to load your application into Visual C++; here we are only using the icon editor.)

Alternatively, an .ico file can be created from a set of images using ImageMagick's convert tool:

magick.exe convert icon-16.png icon-32.png icon-256.png icon.ico

Store the ICO file in your application's source code directory, for example, with the name myappico.ico.

Then, assuming you are using qmake to generate your makefiles, you only need to add a single line to your .pro project file:

RC_ICONS = myappico.ico

Finally, regenerate your makefile and your application. The .exe file will now be represented by your icon in Explorer.

However, if you already have an .rc file, for example, with the name myapp.rc, which you want to reuse, the following two steps will be required. First, put a single line of text to the myapp.rc file:

IDI_ICON1 ICON DISCARDABLE "myappico.ico"

Then, add this line to your myapp.pro file:

RC_FILE = myapp.rc

If you do not use qmake, the necessary steps are: first, create an .rc file and run the rc or windres program on the .rc file, then link your application with the resulting .res file.

0

Комментарии

Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь
IO
20 января 2019 г. 18:39
Ivan Otreshko

C++ - Тест 003. Условия и циклы

  • Результат:0баллов,
  • Очки рейтинга-10
IO
20 января 2019 г. 15:27
Ivan Otreshko

C++ - Тест 003. Условия и циклы

  • Результат:0баллов,
  • Очки рейтинга-10
v
17 января 2019 г. 11:51
vitalir12

C++ - Тест 004. Указатели, Массивы и Циклы

  • Результат:20баллов,
  • Очки рейтинга-10
Последние комментарии
I
16 января 2019 г. 8:06
IscanderChe

Заработало. Забыл model->select(); вписать.
I
16 января 2019 г. 8:02
IscanderChe

Всё равно пусто, хотя строка с данными в базу добавляется.
16 января 2019 г. 7:51
Евгений Легоцкой

потому, что нужно сохранять информацию для всех остальных ролей и столбцов через вызов переопределённого метода. Да к тому же вы ещё и зациклили вызов метода data. QVariant MySqlTableModel:...
I
16 января 2019 г. 7:43
IscanderChe

Сделал вот так. В tableView ничего нет, кроме заголовка. QVariant MySqlTableModel::data(const QModelIndex &index, int role) const{ if (role == Qt::DisplayRole) { QTime ...
Сейчас обсуждают на форуме
21 января 2019 г. 21:32
Евгений Легоцкой

Добрый день. Потому, что C# и Java библиотеки внутри имеют байт-код, а не компилированные исходники в машинном коде, как в C++. Для их использования нужен JIT-компилятор, который на лету...
21 января 2019 г. 21:16
Евгений Легоцкой

День добрый. Я у себя это дело запустил. Но у меня оба варианта заработало. Но у меня версия Qt была 5.11.2. Из-за этого версия Qt Quick 2.12,которую вы использовали, не нашлась. Я...
21 января 2019 г. 16:24
Михаиллл

Нашел ссылку на древние типы данных , а тут нынешние их аналоги.Но все равно каое что непоня:что такое : LPCTSTR, CALLBACK (наверно QDialig),IDOK, EDITSTREAM, TCHARКод...
21 января 2019 г. 14:30
Евгений Легоцкой

Порядок создания тем - пункт 4
21 января 2019 г. 7:36
Евгений Легоцкой

Добрый день! Из ваего вопроса понятна первая часть. На сайте есть статья по динамическому созданию виджетов, посмотрите её для начала - Динамическое создание виджетов . ...
Присоединяйтесь к нам в социальных сетях

Для зарегистрированных пользователей на сайте присутствует минимальное количество рекламы