Почему следующая функция возвращает 0? (Моя среда: Windows Vista, VC++ 9, Qt4.5)QFontMetrics :: leading() возвращает 0
int func()
{
QPushButton button("Blah blah");
QFontMetrics fm = button.fontMetrics();
return fm.leading();
}
Вызов к "fm.height()" возвращает разумные результаты (16 точек в моем случае).
Вызов «fm.lineSpacing()» возвращает тот же результат, что и «fm.height()».
Вызов "fm.boundingRect (QRect(), 0," первая строка \ n вторая строка \ n третья строка "). Height();" возвращает 16 * 3, т. е. снова межстрочный интервал, не включенный в результат ...
Это неправильное использование с моей стороны или что-то еще?
Я использую предопределенный шрифт (шрифт по умолчанию для кнопок в системе Vista) для титров кнопок (текст кнопок в терминологии Qt). Когда я устанавливаю многострочный текст на кнопку, каждая строка текста отделена от соседних строк некоторым пространством (ненулевое пространство). Итак, я не могу понять, почему leading() возвращает «0», но на самом деле у меня есть некоторый интервал между строками (который я не могу вычислить calling leading()) ... – cybevnm