Ich schreibe den komplizierten Rich-Text-Editor, abgeleitet von QTextEdit
Klasse. Es muss in der Lage sein, verschiedene Formatierungen in eingebettete Tabellen einzufügen, ihre Größe zu ändern und anzuwenden.Wie Zeilenhöhe in QTextTable ändern
Ich fand Funktion für Setup-Spaltenbreiten (setColumnWidthConstraints). Aber es ist niemand zu change _rows_ heights
.
Gibt es eine Möglichkeit, dies zu erreichen?
Beispielcode:
void CustomTextEdit::insertTable (int rows_cnt, int columns_cnt)
{
QTextCursor cursor = textCursor();
QTextTableFormat table_format;
table_format.setCellPadding (5);
// TODO: This call just changed the frame border height, not table itself.
//table_format.setHeight (50);
// Setup columns widths - all is working perfectly.
QVector <QTextLength> col_widths;
for (int i = 0; i < columns_cnt; ++i)
col_widths << QTextLength (QTextLength::PercentageLength, 100.0/columns_cnt);
table_format.setColumnWidthConstraints (col_widths);
// ...But there is no similar function as setRowHeighConstraints for rows!
// Insert our table with specified format settings
cursor.insertTable (rows_cnt, columns_cnt, table_format);
}
könnten Sie QTextFrameFormat verwenden :: setHeight (qreal height) –
@Cool_Coder Dies änderte nur die Höhe von _all_ dem Rahmen (dh wo der Rahmen angezeigt wird). Aber ich muss die Höhe für jede einzelne Zeile der Tabelle angeben. – eraxillan
kann bitte etwas Code zeigen, damit ich das kommentieren kann? –