Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Qt QCommandLineParser передача значений в виджет https://www.cyberforum.ru/ qt/ thread1897925.html
Добрый день! Заранее извиняюсь, если глупый вопрос, я в некотором роде новичок. Я использую QCommandLineParser для считывания параметров запуска приложения с коммандной строки. Все работает (спасибо шикарной доке), но лишь для консольного приложения. А как мне передать значения в экземпляр QWidget или QMainWindow? Число параметров у меня достаточно большое, и не все обязательные. Первое что на...
C++ Qt Рисование точек на графике в качестве неких объектов
Снова доброй ночи, уважаемый форум. Задача стоит следующая: существует массив типа complex<double> хранящий в себе координаты точек на комплексной плоскости. Некий цикл бегает по этому массиву, считывает старое значения complex<double>, стирает точку с данными координатами, заносит в i-тый элемент массива новую точку, рисует ее. На данный момент код построен с помощью QGraphicView и QScene ...
C++ Qt Замена названий таблиц в отображении QTableView https://www.cyberforum.ru/ qt/ thread1897817.html
Всем добрый вечер! Вопрос следующий - можно ли заменить названия таблиц в QTableView на русскоязычные? Например отображаются : ID|Name|NameFam|Fam|Kol_chel и т.д А надо, чтобы отображалось : Номер|Имя|Фамилия|Семья|Количество человек| и т.д. Естественно вручную прописать, что ID - Номер, Name - Имя и т.д Слышал что-то про такое. Но не знаю даже как загуглить, прошу помочь. Заранее спасибо
C++ Qt Функции system(string) и fork() в qt https://www.cyberforum.ru/ qt/ thread1897745.html
В общем я сделал форму в дизайнере, там сделал 2 кнопки и установил слоты click() для них. Одна из них просто закрывает форму, другая по идее должна вызывать стороннее приложение с помощью функции system. Однако выскакивает ошибка the inferior stopped because it received a signal from the operating system Signal name: SIGSEGV Signal meaning : Segmentation fault Тоже самое происходит и при...
QSortFilterProxyModel и QTreeModel C++ Qt
Добрый день. Интересует использование метода filterAcceptsRow для фильтрации древовидной модели. есть такое: bool ProxyModel::filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const { if (m_minimumPrice != -1 || m_maximumPrice != -1) { QModelIndex index = sourceModel()->index(sourceRow, 2,
C++ Qt QTableView. WordWrap for Header Row, Vertical resize Header Row Добрый день. Возникло пару вопросов, не могу понять.. Есть класс наследник QTableView, вопрос: 1. как разрешить пользователю изменять высоту размера заголовка таблицы 2. как сделать WordWrap для заголовка, чтобы при одной ширине текст заголовка помещался в одну строку, при другой - слова переносились https://www.cyberforum.ru/ qt/ thread1897302.html
C++ Qt Как исправить вывод в логов в консоль qtcreator? https://www.cyberforum.ru/ qt/ thread1897273.html
Привет! Выводит такие вот каракули. Подскажите как исправить?
Функция-логер C++ Qt
такой вопросик, хочу написать для себя чтото типа логера. Сделал клас, в нем метод для записи в файл, вопрос в том можно ли както внутри метода этого класса, узнать информацию о том месте откуда она была вызвана. сейчас сделал метод принимающий значения __LINE__, __FUNCTION__, __FILE__,текстовый комент , а хочется чтобы небыло нужды прописывать эти макросы при каждом вызове, а просто...
C++ Qt Создание динамической библиотеки для GUI Доброй ночи, дорогие форумчане! Пишу Вам впервые, работаю с QT всего-ничего, так что не серчайте. Итак, есть некий проект, в котором происходит обработка комплексных чисел. Захотелось к этому проекту прекрутить графику. Сделал проект динамической библиотеки в QT, в котором описал форму (проект в QT будет просто отображает полученные из главного файла комплексные данные в виде точки на... https://www.cyberforum.ru/ qt/ thread1897160.html C++ Qt Как эффективно описать кнопки для калькулятора? Доброго времени суток. Решил написать калькулятор и столкнулся со следующей проблемой: дабы не громоздить лишний код, создаю один слот digitClicked(), для обработки сигналов цифр. Решил воспользоваться для этого QSignalMapper, но как потом понял, он больше применим для динамически создаваемых объектов, а у меня кнопки уже отрисованы. В итоге все равно получилось много кода. Можно ли как-то... https://www.cyberforum.ru/ qt/ thread1897142.html
Cookie в QWebView C++ Qt
Доброго времени суток. Как в QWebView добавить cookie чтоб один раз зашел в тот-же vk и при следующем запуске не надо было авторизоваться. Заранее благодарен.
C++ Qt Рисование QPainter на изображении с размерами бумаги А4 Мне нужно нарисовать на изображении прямоугольники с размерами в мм, так чтобы при печати на листе А4 эти прямоугольники имели размер, как при рисовании. https://www.cyberforum.ru/ qt/ thread1896714.html
18 / 18 / 15
Регистрация: 05.03.2016
Сообщений: 67
0

Отображение линий на QPainter по данным из QTableWidget - C++ Qt - Ответ 9992941

11.01.2017, 15:48. Показов 639. Ответов 1
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Есть два окна: первое окно - область для рисования, второе окно - таблица данных. В классе первого окна есть вектор точек, по которым рисуюються линии. Проблема состоит в том, что при считывании данных из таблицы в вектор - программа вылетает.
Не могу понять причины, прошу помощи.

Класс первого окна:
Кликните здесь для просмотра всего текста

C++ (Qt)
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
#ifndef WINDOW_H
#define WINDOW_H
 
#include <QDialog>
#include <QPaintEvent>
#include <QVector>
#include <QPainter>
 
#include "table.h"
 
class Table;
 
class Window : public QDialog
{
    Q_OBJECT
 
public:
    Window(QWidget *parent = 0);
    ~Window();
 
    QVector<QPointF> points;
    Table *table;
protected:
            virtual void paintEvent(QPaintEvent *ev);
};
 
#endif // WINDOW_H


Его методы:
Кликните здесь для просмотра всего текста

C++ (Qt)
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
#include "window.h"
 
Window::Window(QWidget *parent): QDialog(parent)
{
    table = new Table;
    table->show();
 
    QPoint temp;
    for(int i=0; i<10; i++)
    {
        temp.setX(i*30);
        temp.setY(i*40);
        points.push_front(temp);
    }
}
 
Window::~Window()
{
 
}
 
void Window::paintEvent(QPaintEvent *ev)
{
    QPainter painter(this);
 
    for(int i=0; i<9; i++)
        painter.drawLine(points[i], points[i+1]);
 
}


Класс второго окна:
Кликните здесь для просмотра всего текста

C++ (Qt)
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
#ifndef TABLE_H
#define TABLE_H
 
#include <QDialog>
#include <QTableWidget>
#include <QTableWidgetItem>
#include <QVBoxLayout>
#include <QPushButton>
 
#include "window.h"
 
class Window;
 
class Table : public QDialog
{
    Q_OBJECT
 
public:
    Table(QWidget *parent = 0);
    ~Table();
 
    QTableWidget *table;
    QPushButton *btn;
    Window *ptr;
 
private slots:
                void Slot();
};
 
 
#endif // TABLE_H


Его методы:
Кликните здесь для просмотра всего текста

C++ (Qt)
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
39
40
41
42
43
44
45
46
#include "table.h"
 
 
Table::Table(QWidget *parent) : QDialog(parent)
{
    table = new QTableWidget(10,2);
    QTableWidgetItem *item;
 
    for(int i=0; i<10; i++)
        for(int j=0; j<2; j++)
        {
            item = new QTableWidgetItem("1");
            table->setItem(i, j, item);
        }
 
    btn = new QPushButton("ok");
    connect(btn, SIGNAL(clicked(bool)), this, SLOT(Slot()));
 
    QVBoxLayout *lay = new QVBoxLayout;
    lay->addWidget(table);
    lay->addWidget(btn);
 
    this->setLayout(lay);
}
 
Table::~Table()
{
 
}
 
void Table::Slot()
{
    QPointF temp;
 
    for(int i=0; i<10; i++)
    {
        for(int j=0; j<2; j++)
        {
            temp.setX(table->item(i,j)->text().toInt());
            if(j) temp.setY(table->item(i,j)->text().toInt());
        }
 
        ptr->points.push_front(temp);
    }
 
}


Вернуться к обсуждению:
Отображение линий на QPainter по данным из QTableWidget C++ Qt
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.01.2017, 15:48
Готовые ответы и решения:

Что лучше для рисования линий и кругов - QPainter или QGraphicsScene?
Вот реально, что удобней и производительней? Слышал, что QGraphicsScene может быстро рисовать...

Неправильное отображение виджетов в ячейках QTableWidget на Qt 5.11
Вот такая проблема после перехода на Qt 5.11: Это QTableWidget заполненный...

Отображение линий на графике
Всем привет! Есть две линии line1 и line2 с одинаковыми координатами. Сначала рисуется line1, потом...

Отображение линий на графике
Всем привет! Есть две линии line1 и line2 с одинаковыми координатами. Сначала рисуется line1,...

1
11.01.2017, 15:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.01.2017, 15:48
Помогаю со студенческими работами здесь

Графика: отображение накладывающихся многоугольников с удалением невидимых линий
Напишите программу, которая создает изображения многоугольников. При этом многоугольники могут...

Неверное отображение типов линий в разных версиях атокада
Есть проблема, судя по всему связанная с разным восприятием разными версиями автокада...

Отображение вертикальных линий, соединяющих фигурные скобки в редакторе кода
В VS 2013 в C# можно то ли включить, то ли установить плагин, чтобы отображались вертикальные...

Отображение диаграммы по данным DataTable C#
Всем доброго времени суток, столкнулся с такой проблемой: необходимо вывести диаграмму по данным бд...

Настроить отображение значений в привязанному к данным ComboBox
Здравствуйте. У меня есть с combobox с кодом фильма. Для того чтобы в нем не отображались цифры,я...

QTableWidget (1) >>> QTableWidget (2) исключить повторяющиеся строки
Добрый день. Подскажите как лучше реализовать... Хочу реализовать исключение повторяющихся...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru