Форум программистов, компьютерный форум, киберфорум
Python: GUI, графика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Эксперт Pascal/Delphi
 Аватар для mmm_corp
103 / 91 / 32
Регистрация: 30.05.2015
Сообщений: 594

Qt, Skin NotClientArea

25.08.2015, 08:36. Показов 792. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
как заскинить не клиентскую область окна в Qt
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
25.08.2015, 08:36
Ответы с готовыми решениями:

VCL Skin 5.25
Подскажите где найти кряк? ) Погуглил, нашёл кряки только для Delphi и то для ранних версий...need help!

Skin Программы
Вопрос! когда я применяю скин почему у компонента Label не могу поменять цвет он встает такой который в скине и не меняется кто-нить знает...

Material Skin
Вот у меня такой вопрос,к тем кто пользовался даной библиотекой У меня есть несколько форм и я хочу на каждой разное цветовое оформление ...

16
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
25.08.2015, 09:29
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import sys
import time
 
from PyQt4 import QtGui
 
 
class MainWindow(QtGui.QWidget):
    def __init__(self):
        super().__init__()
        self.file_name = '%Y-%m-%d_%H-%M-%S.jpg'
 
        self.main_layout = None
        self.label = None
        self.button = None
 
        self.build_widget()
 
    def build_widget(self):
        self.main_layout = QtGui.QVBoxLayout()
        self.setLayout(self.main_layout)
 
        self.label = QtGui.QLabel()
        self.main_layout.addWidget(self.label)
 
        self.button = QtGui.QPushButton('Take screenshot')
        self.button.clicked.connect(self.grab)
        self.main_layout.addWidget(self.button)
 
    def grab(self):
        screenshot = QtGui.QPixmap.grabWindow(self.winId())
        screenshot.save(time.strftime(self.file_name), 'jpg')
        self.label.setText('Скриншот сделан')
 
 
app = QtGui.QApplication(sys.argv)
window = MainWindow()
window.show()
app.exec_()
0
Эксперт Pascal/Delphi
 Аватар для mmm_corp
103 / 91 / 32
Регистрация: 30.05.2015
Сообщений: 594
25.08.2015, 22:29  [ТС]
извините, но мне нужно разрисовать заголовок окна и т.д... скриншот то мне зачем непойму?)
0
 Аватар для akzo
71 / 67 / 6
Регистрация: 08.08.2013
Сообщений: 286
Записей в блоге: 8
25.08.2015, 22:38
Заскинить, заскринить)
0
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
25.08.2015, 23:25
Цитата Сообщение от mmm_corp Посмотреть сообщение
извините, но мне нужно разрисовать заголовок окна и т.д... скриншот то мне зачем непойму?)
Цитата Сообщение от mmm_corp Посмотреть сообщение
как заскинить не клиентскую область окна в Qt
Что попросил, то я тебе и дал.
0
Эксперт Pascal/Delphi
 Аватар для mmm_corp
103 / 91 / 32
Регистрация: 30.05.2015
Сообщений: 594
25.08.2015, 23:28  [ТС]
Цитата Сообщение от alex925 Посмотреть сообщение
Что попросил, то я тебе и дал.
мне нужно скинить окно а не скринить))))
0
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
25.08.2015, 23:36
Ты код запускал вообще? Скрин окна и получается в итоге, если что так....
0
 Аватар для akzo
71 / 67 / 6
Регистрация: 08.08.2013
Сообщений: 286
Записей в блоге: 8
25.08.2015, 23:39
mmm_corp, тебе всмысле рамку изменить?
0
Эксперт Pascal/Delphi
 Аватар для mmm_corp
103 / 91 / 32
Регистрация: 30.05.2015
Сообщений: 594
26.08.2015, 00:08  [ТС]
Цитата Сообщение от akzo Посмотреть сообщение
mmm_corp, тебе всмысле рамку изменить?
ДА! рамку, системние кнопочки (свернуть, закрыть и т.д...)
хотябы для винды
0
 Аватар для akzo
71 / 67 / 6
Регистрация: 08.08.2013
Сообщений: 286
Записей в блоге: 8
26.08.2015, 00:28
mmm_corp, Ох таж беда, тож одно время хотел рамку зеленой сделать, но знаний не хватило
0
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
26.08.2015, 09:00
mmm_corp, Так что тебе надо сделать в итоге. Сделать скрин и просто захватывать ещё и рамку окна или изменить эту рамку? Пишешь ты одно, а оказывается надо другое.
0
Эксперт Pascal/Delphi
 Аватар для mmm_corp
103 / 91 / 32
Регистрация: 30.05.2015
Сообщений: 594
26.08.2015, 10:08  [ТС]
Цитата Сообщение от alex925 Посмотреть сообщение
mmm_corp, Так что тебе надо сделать в итоге. Сделать скрин и просто захватывать ещё и рамку окна или изменить эту рамку? Пишешь ты одно, а оказывается надо другое.
про скриншот я нислова не говорил, мне нужно разрисовать не клиентскую область окна, напр. вот как сделано здесь: http://www.alphaskins.com/asdwnld.php, тоесть своя отрисовка, по всей логике должен быть модуль для Qt, для этого, поскольку иначе нужно обрабатывать WM_NCPAINT (для винды), что весьма плохо делать в принципе из питона (из-за частого вызова)

Еще раз повторяю, скриншот мне не нужен, нужен скин (штура, тема...) для неклиентской области
0
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
26.08.2015, 10:34
Цитата Сообщение от mmm_corp Посмотреть сообщение
про скриншот я нислова не говорил,
Все, что ты говорил, это что хочешь сделать скриншот и глупо пытаться отпираться, когда все могут прочитать твое первое сообщение
Цитата Сообщение от mmm_corp Посмотреть сообщение
как заскинить не клиентскую область окна в Qt
Цитата Сообщение от mmm_corp Посмотреть сообщение
Еще раз повторяю, скриншот мне не нужен, нужен скин (штура, тема...) для неклиентской области
А я ещё раз повторяю, что попросил то и по лучил. Если хочешь, чтобы небыло лишних вопросов пиши по человечески и вопросов не будет.
0
Эксперт Pascal/Delphi
 Аватар для mmm_corp
103 / 91 / 32
Регистрация: 30.05.2015
Сообщений: 594
26.08.2015, 10:34  [ТС]
Цитата Сообщение от alex925 Посмотреть сообщение
как заскинить не клиентскую область окна в Qt
заскинить - это по вашему значит сделать скриншот?
вы случаем не путаете с термином "заскриншотить"?)

внимательно прочтите пожалуйста, примеры того что хочется также привел.
0
 Аватар для akzo
71 / 67 / 6
Регистрация: 08.08.2013
Сообщений: 286
Записей в блоге: 8
26.08.2015, 11:37
alex925, ну вот вы уже демагогничаете, авьор все отметил в комментарии 02.08 за сегодня.

Добавлено через 5 минут
mmm_corp, навряд ли то что вы хотите сделать возможно на питоне
0
Эксперт Pascal/Delphi
 Аватар для mmm_corp
103 / 91 / 32
Регистрация: 30.05.2015
Сообщений: 594
26.08.2015, 12:11  [ТС]
Цитата Сообщение от akzo Посмотреть сообщение
mmm_corp, навряд ли то что вы хотите сделать возможно на питоне
можно еще как можно, только я вот в сишке совсем не силен, на делфи даже скиновку свою делал под винду, (скролбары только запарили в корень, обошолся без них). Для Qt, даже какиэто потугу в людей есть: http://habrahabr.ru/post/116752/
жаль ссылки дохлые, однозначно точно что модуль должен быть на С++. На чистом питоне также можно через отлов WM_NCPAINT, но здесь проблема в очень его частых вызовах...

попробую топорно, напишу простенький скинер на делфи, и попробую передать хендл окна Qt, это обычное окно, никакой магии здесь нет, только в упор не понимаю как же так что нет готовой из коробки реализации... эх...
0
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
26.08.2015, 12:23
Цитата Сообщение от akzo Посмотреть сообщение
навряд ли то что вы хотите сделать возможно на питоне
Сделать можно, просто это не совсем тривиально будет и все.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.08.2015, 12:23
Помогаю со студенческими работами здесь

Qip skin-тупит
скачал пару скинов засунул папки с файлами в папку скинов,всплывающие подсказки со скином,остальное нет,что делать,бесит так

Alien Skin Xenofex 2
я установила Alien Skin Xenofex 2, но в фильтрах он не появился

GridView CommandField skin
Доброго времени суток! Ребята, нужна помощь. Все gridview в проекте повешаны на дефолтный скин <asp:GridView ...

LFS Skin-patch!
Всем доброго времени суток! Коротко о проблеме: создав удалённый сервер Live for Speed пропатченый IP-patch'ем (патч для пропуска пакетов...

Rainmeter-Weather skin
Помогите правильно выставить город в погодном скине райнметра, уже все пальцы стер в поисках этого кода, вообщем мне нужен код рсс моего...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru