Название: как в QTableView задать ширину заголовка Отправлено: Evgeniya от Июля 09, 2009, 11:06 Добрый день!!!!
Подскажите пожалуйста как можно в QTableView задать ширину заголовка... Я так полагаю через QHeaderView, но не могу найти соответствующую функцию... Название: Re: как в QTableView задать ширину заголовка Отправлено: Rcus от Июля 09, 2009, 11:40 void QHeaderView::resizeSection ( int logicalIndex, int size )
/* reading roxx */ Название: Re: как в QTableView задать ширину заголовка Отправлено: Evgeniya от Июля 09, 2009, 12:16 С помощью этой функции задается ширина строчек
Например, ui.tableLS->verticalHeader()->resizeSection(0,50); - ширина первой строки А мне нужно задать ширину самой шапки таблицы...просто длинные названия столбцов и растягивать в длину не вариант Название: Re: как в QTableView задать ширину заголовка Отправлено: pastor от Июля 09, 2009, 12:26 С помощью этой функции задается ширина строчек Например, ui.tableLS->verticalHeader()->resizeSection(0,50); - ширина первой строки Что-то мне так кажется, что это высота строки, а не её ширина :) Для задания ширины колонки используй ui.tableLS->horizontalHeader()->resizeSection(0,50); - ширина первой колонки Название: Re: как в QTableView задать ширину заголовка Отправлено: Evgeniya от Июля 09, 2009, 12:32 Что-то мне так кажется, что это высота строки, а не её ширина :) только мне надо высоту шапки таблицы изменить... Название: Re: как в QTableView задать ширину заголовка Отправлено: Rcus от Июля 09, 2009, 12:53 ну есть setFixedHeight, только без переноса слов в нем нет смысла.
Название: Re: как в QTableView задать ширину заголовка Отправлено: Evgeniya от Июля 09, 2009, 13:13 ну есть setFixedHeight, только без переноса слов в нем нет смысла. Спасибочки!!! А как слова переносить?А то действительно смысла нет :) Название: Re: как в QTableView задать ширину заголовка Отправлено: Evgeniya от Июля 09, 2009, 14:29 неужели там все сложно с переносом слов :-( ... чет не могу найти как это сделать
Название: Re: как в QTableView задать ширину заголовка Отправлено: pastor от Июля 09, 2009, 15:39 Перенос нужно писать самому. Ничего сложного в этом нет. Можно даже подсмотреть в исходники QLabel, как сделано там
Название: Re: как в QTableView задать ширину заголовка Отправлено: Evgeniya от Июля 09, 2009, 21:47 Чего-то не получается у меня...может я не так понимаю...
Написала в QLabel Предельная розничная торговая надбавка Посмотрела в исходнике, там вон как все: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">\n<html><head><meta name="qrichtext" content="1" /><style type="text/css">\np, li { white-space: pre-wrap; }\n</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">\n<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Предельная розничная </span></p>\n<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;">торговая надбавка</p></body></html> И что же мне вставить в заголовок QTable чтобы получилась аналогичная строчка Название: Re: как в QTableView задать ширину заголовка Отправлено: Evgeniya от Июля 09, 2009, 22:24 Все намного проще чем думалось как всегда ;D
model->setHeaderData(1,Qt::Horizontal,"Предельная оптовая\n торговая надбавка"); Название: Re: как в QTableView задать ширину заголовка Отправлено: pastor от Июля 09, 2009, 22:58 А я подумал, что нужен автоперенос (например при изменении ширины столбца)
Название: Re: как в QTableView задать ширину заголовка Отправлено: Evgeniya от Июля 21, 2009, 15:38 А можно еще один вопросик по этому поводу...
Подскажите пожалуйста, как сделать, чтобы текст в столбце таблицы был выровнен по центру.... ui.tableView->verticalHeader()->setDefaultAlignment(Qt::AlignCenter) выравнивает по центру только самый первый столбец, где нумеруются строки. Или вообще это возожно сделать?? Название: Re: как в QTableView задать ширину заголовка Отправлено: uriel от Июля 21, 2009, 16:20 Один из вариантов - переопределить в модели метод data().
Код
Название: Re: как в QTableView задать ширину заголовка Отправлено: Evgeniya от Июля 21, 2009, 16:46 Один из вариантов - переопределить в модели метод data(). Спасибочки!!!Вроде сам смысл поняла...только вот SomeModel и SomeModelParentClass это что???Или это нужно будет создать свой класс можели, унаследованный от QSqlQueryModel???Код
Название: Re: как в QTableView задать ширину заголовка Отправлено: uriel от Июля 21, 2009, 17:06 Ну да. Чтобы переопределить поведение базового класса мы наследуемся и замещаем метод. Потом при определённых условиях делаем то, что нужно, а иначе просто передаём эту обязанность обратно базовому классу.
Название: Re: как в QTableView задать ширину заголовка Отправлено: Evgeniya от Июля 22, 2009, 07:54 А чтобы мне редактировать данные БД прям в QTableView, что мне для этого нужно???подскажите пожалуйста...
Название: Re: как в QTableView задать ширину заголовка Отправлено: uriel от Июля 22, 2009, 09:59 С QSqlTableModel Вы и так можете их редактировать. В ассистенте есть пример.
Код
Название: Re: как в QTableView задать ширину заголовка Отправлено: Evgeniya от Июля 22, 2009, 15:45 Я уже с этим разбралась...у меня просто QSqlQueryModel, а не QSqlTableModel
только вот один вопрос остается нерешенным..Редактировать я могу только при двойном нажатии на ячейку, а я хочу, чтобы при двойном нажатии не редактировалось, а редоктировалось, например при нажатии кнопки QPushButton и как так можно сделать??? Название: Re: как в QTableView задать ширину заголовка Отправлено: linuxevolution от Августа 03, 2009, 13:57 У меня такой вопрос возник, можно ли задать ширину столбца в процентном соотношении, или проще написать свою функцию которая будет вычислять размер каждого столбца относительно размера окна? Т.е. имеется ввиду если окно принимает развернутый вид, то и ширина столбцов в процентном соотношении с размером окна растягивается. Все сводится к тому чтобы неоставлять пустое место с правой стороны таблицы(не красиво получается). Или можно оставить в начальном положении как есть, а потом при определенном размере окна, когда пользователь растягивает окно, начать вычисление. Как правильней сделать?
Название: Re: как в QTableView задать ширину заголовка Отправлено: spectre71 от Августа 03, 2009, 20:59 У меня такой вопрос возник, можно ли задать ширину столбца в процентном соотношении, или проще написать свою функцию которая будет вычислять размер каждого столбца относительно размера окна? Т.е. имеется ввиду если окно принимает развернутый вид, то и ширина столбцов в процентном соотношении с размером окна растягивается. Все сводится к тому чтобы неоставлять пустое место с правой стороны таблицы(не красиво получается). Или можно оставить в начальном положении как есть, а потом при определенном размере окна, когда пользователь растягивает окно, начать вычисление. Как правильней сделать? Писать самому.Название: Re: как в QTableView задать ширину заголовка Отправлено: Кутенок от Февраля 04, 2010, 22:05 У меня такой вопрос возник, можно ли задать ширину столбца в процентном соотношении, или проще написать свою функцию которая будет вычислять размер каждого столбца относительно размера окна? Т.е. имеется ввиду если окно принимает развернутый вид, то и ширина столбцов в процентном соотношении с размером окна растягивается. Все сводится к тому чтобы неоставлять пустое место с правой стороны таблицы(не красиво получается). Или можно оставить в начальном положении как есть, а потом при определенном размере окна, когда пользователь растягивает окно, начать вычисление. Как правильней сделать? ui->myTabWidget->horizontalHeader()->setResizeMode(QHeaderView::Stretch); |