
IscanderCheJune 30, 2019, 3:07 a.m.
Как избавиться от расстояния между виджетами
Вроде всё перепробовал, а не получается избавиться от расстояния между paintwidget-ами...
// widget.h #ifndef WIDGET_H #define WIDGET_H #include <QWidget> class Widget : public QWidget { Q_OBJECT public: Widget(QWidget *parent = 0); ~Widget(); }; #endif // WIDGET_H // widget.cpp #include "widget.h" #include "paintwidget.h" #include <QVBoxLayout> #include <QHBoxLayout> Widget::Widget(QWidget *parent) : QWidget(parent) { PaintWidget* paintWidget1 = new PaintWidget(parent); PaintWidget* paintWidget2 = new PaintWidget(parent); QVBoxLayout* layoutV = new QVBoxLayout; layoutV->addWidget(paintWidget1); layoutV->addWidget(paintWidget2); setLayout(layoutV); } Widget::~Widget() { } // paintwidget.h #ifndef PAINTWIDGET_H #define PAINTWIDGET_H #include <QWidget> class PaintWidget : public QWidget { Q_OBJECT public: explicit PaintWidget(QWidget *parent = 0); protected: void paintEvent(QPaintEvent*); private: int rectPhotoX; int rectPhotoY; int rectPhotoWidth; int rectPhotoHeight; }; #endif // PAINTWIDGET_H // paintwidget.cpp #include "paintwidget.h" #include <QPainter> PaintWidget::PaintWidget(QWidget *parent) :QWidget(parent), rectPhotoX(0), rectPhotoY(0), rectPhotoWidth(110), rectPhotoHeight(110) { setMinimumWidth(rectPhotoWidth); setMinimumHeight(rectPhotoHeight); QRect rect(rectPhotoX, rectPhotoY, rectPhotoWidth, rectPhotoHeight); setGeometry(rect); } void PaintWidget::paintEvent(QPaintEvent*) { QPainter painter(this); int rectPhotoRadius = 5; QRect rect(rectPhotoX, rectPhotoY, rectPhotoWidth, rectPhotoHeight); painter.setClipRect(rect); QBrush brush(Qt::white, Qt::SolidPattern); painter.fillRect(rect, brush); QImage img(":/images/DSC_0024.jpg"); painter.setRenderHint(QPainter::Antialiasing, true); painter.setBrush(QBrush(Qt::white)); painter.setPen(QPen(Qt::black, 1, Qt::DotLine)); QRect rectPhoto(rectPhotoX, rectPhotoY, rectPhotoWidth, rectPhotoHeight); painter.drawRoundedRect(rectPhoto, rectPhotoRadius, rectPhotoRadius); int minimumOffset = 10; int maximumWidthPhotoView = rectPhotoWidth - minimumOffset * 2; int maximumHeightPhotoView = rectPhotoHeight - minimumOffset * 2; int coefficientWidth = img.width() / maximumWidthPhotoView; int coefficientHeight = img.height() / maximumHeightPhotoView; int coefficient = 0; if(coefficientWidth > coefficientHeight) coefficient = coefficientWidth; else coefficient = coefficientHeight; int realWidthPhotoView = img.width() / coefficient; int realHeightPhotoView = img.height() / coefficient; int offsetX = (rectPhotoWidth - realWidthPhotoView) / 2; int offsetY = (rectPhotoHeight - realHeightPhotoView) / 2; int photoViewX = rectPhotoX + offsetX; int photoViewY = rectPhotoY + offsetY; QImage img2 = img.scaled(realWidthPhotoView, realHeightPhotoView); painter.drawImage(photoViewX, photoViewY, img2); }

We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.Do you like it? Share on social networks!
Ua
- Unknown akadamn
- Jan. 24, 2025, 5:14 p.m.
Qt - Test 001. Signals and slots
- Result:84points,
- Rating points4
Ua
- Unknown akadamn
- Jan. 24, 2025, 4:22 p.m.
Qt - Test 001. Signals and slots
- Result:42points,
- Rating points-8
Last comments
ИМ
Django - Tutorial 017. Customize the login page to Django Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
Игорь МаксимовNov. 22, 2024, 9:51 p.m.

Evgenii LegotckoiOct. 31, 2024, 11:37 p.m.
Fb3 file reader on Qt Creator Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
ИМ
Django - Lesson 064. How to write a Python Markdown extension Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
Игорь МаксимовOct. 5, 2024, 4:51 p.m.
QML - Lesson 016. SQLite database and the working with it in QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
Now discuss on the forum
f
Рисование на QGraphicsScene при зажатой кнопке мыши Подскажите, пожалуйста! Как данный класс можно дополнить, чтобы созданные объекты можно было перемещать мышкой по сцене?
firstlunoxodFeb. 15, 2025, 1:46 p.m.

ДмитрийFeb. 3, 2025, 4:24 p.m.
не запускается компьютер!!! Не запускается компьютер (точнее работает блок , но сам монитор вообще жесть)В общем я ничего с интернета не скачивала в последнее время. На компе никаких левых пр…
Нужно запретить перемещение только некоторых итемов, остальные перемещать можно. Вопрос решен. Узнать QModelIndex элемента на который мы перетаскиваем другой элемент, можно с помощью функции indexAt(event->position().toPoint()) представления QTreeViev вызываемой в переопр…
OAuth2.0 через VK, получение email Спасибо большое за помощь и простите за то что отнял время своей невнимательностью.
Получилось так: