Russian Qt Forum
Апрель 29, 2024, 08:08 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Не полностью рисует вектор на QTableWidget  (Прочитано 2968 раз)
aviabunin
Гость
« : Октябрь 09, 2011, 19:36 »

QTableWidget размером 5 х 5  ячеек , размер квадратной ячейки 25 х 25 .
Пытаюсь нарисовать отрезок
Код:
    p.drawLine(0,0,125,125); // Рисование линии
Но закрашивает чуть больше диагонали первой ячейки. Если рисовать горизонтальный отрезок,
то доходит до четвертой ячейки. Т.е. есть некая область рисования, дальше которой
нарисованный отрезок не виден.
Удалил и создал таблицу снова - эффект такой же.
В чем может быть дело?
Спасибо!
Записан
aviabunin
Гость
« Ответ #1 : Октябрь 09, 2011, 20:16 »

Добавил поверх таблицы layout, проблема снялась.
Код:
    wgt = new qpaintwidget(this, this);
    ui->verticalLayout->addWidget(wgt);
Думал вроде можно и напрямую на QTableWidget рисовать. Но не знаю как это сделать .
1 . У QTableWidget нет метода addWidget.
2. Не придумал пока как от повтора this избавиться. Конструктор paintWidget
Код:
iSticks *model;

qpaintwidget::qpaintwidget(QWidget *parent, iSticks *sticks) :
    QWidget(parent)
{

    model = sticks;
}
Первый параметр вроде должен быть типа QWidget , а не тип моего главного класса iSticks
Записан
Bepec
Гость
« Ответ #2 : Октябрь 10, 2011, 09:46 »

Кхм. вопрос а что мешает рисовать прямо на таблице?
QPainter painter(QTableView); не катит чтоли?


PS хочешь совета - выкладывай *.cpp и *.h где ты все создаешь и где ты там рисуешь. А то без кода гадать, да язык об зубы попусту бить.
Записан
twp
Гость
« Ответ #3 : Октябрь 11, 2011, 12:52 »

вообще-то отрисовка таблицы происходит во вьюпорте, то там и надо по идее рисовать линию
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.042 секунд. Запросов: 20.