Я хочу создать кнопку точно такого же размера, как и строка для этого. Я хочу ширину и высоту строки.
Как узнать ширину и высоту строки?
Ответ 1
Чтобы вручную получить размер строки, вам нужно использовать класс QFontMetrics. Это можно использовать вручную следующим образом:
QFont font("times", 24);
QFontMetrics fm(font);
int pixelsWide = fm.width("What the width of this text?");
int pixelsHigh = fm.height();
Если вы хотите рассчитать его для шрифта, используемого в заданном виджете (который вы, возможно, не знаете), то вместо построения fontmetrics получите его из виджета:
QFontMetrics fm(button->fontMetrics());
int pixelsWide = fm.width("What the width of this text?");
int pixelsHigh = fm.height();
Затем вы можете изменить размер виджета до именно этого значения.
Ответ 2
Используйте QFontMetrics.
Пример: http://www.developer.nokia.com/Community/Wiki/CS001349_-_Calculating_text_width_in_Qt