2018年4月10日

FontMetrics

モジュール

QtQuick 2.4

クラス継承

QQuickFontMetrics → QObject

プロパティー

ascent: real = プラットフォームデフォルト readonly
averageCharacterWidth: real = プラットフォームデフォルト readonly
descent: real = プラットフォームデフォルト readonly
font: font = プラットフォームデフォルト
height: real = プラットフォームデフォルト readonly
leading: real = プラットフォームデフォルト readonly
lineSpacing: real = プラットフォームデフォルト readonly
lineWidth: real = プラットフォームデフォルト readonly
maximumCharacterWidth: real = プラットフォームデフォルト readonly
minimumLeftBearing: real = プラットフォームデフォルト readonly
minimumRightBearing: real = プラットフォームデフォルト readonly
overlinePosition: real = プラットフォームデフォルト readonly
strikeOutPosition: real = プラットフォームデフォルト readonly
underlinePosition: real = プラットフォームデフォルト readonly
xHeight: real = プラットフォームデフォルト readonly

シグナル

fontChanged(font font)

メソッド

real advanceWidth(string text)
rect boundingRect(string text)
rect tightBoundingRect(string text)
string elidedText(string text, Qt::TextElideMode mode, real width, int flags = Qt::TextShowMnemonic)

説明


QFontMetricsF の機能を部分的に利用できるようにしたラッパータイプ。

プロパティーの説明

ascent: real

QFontMetricsF::ascent() を呼び出しその戻り値を返す。

averageCharacterWidth: real

QFontMetricsF::averageCharWidth() を呼び出しその戻り値を返す。

descent: real

QFontMetricsF::descent() を呼び出しその戻り値を返す。

font: font

font を参照。

height: real

QFontMetricsF::height() を呼び出しその戻り値を返す。

leading: real

QFontMetricsF::leading() を呼び出しその戻り値を返す。

lineSpacing: real

QFontMetricsF::lineSpacing() を呼び出しその戻り値を返す。

lineWidth: real

QFontMetricsF::lineWidth() を呼び出しその戻り値を返す。

maximumCharacterWidth: real

QFontMetricsF::maxWidth() を呼び出しその戻り値を返す。

minimumLeftBearing: real

QFontMetricsF::leftBearing() を呼び出しその戻り値を返す。

minimumRightBearing: real

QFontMetricsF::minRightBearing() を呼び出しその戻り値を返す。

overlinePosition: real

QFontMetricsF::overlinePos() を呼び出しその戻り値を返す。

strikeOutPosition: real

QFontMetricsF::strikeOutPos() を呼び出しその戻り値を返す。

underlinePosition: real

QFontMetricsF::underlinePos() を呼び出しその戻り値を返す。

xHeight: real

QFontMetricsF::xHeight() を呼び出しその戻り値を返す。

シグナルの説明

fontChanged(font font)

font および当タイプの独自プロパティーのプロパティー変更通知シグナル。

メソッドの説明

real advanceWidth(string text)

QFontMetricsF::width() を呼び出しその戻り値を返す。

rectf boundingRect(string text)

QFontMetricsF::boundingRect() を呼び出しその戻り値を返す。

rectf tightBoundingRect(string text)

QFontMetricsF::tightBoundingRect() を呼び出しその戻り値を返す。

string elidedText(string text, Qt::TextElideMode mode, real width, int flags)

QFontMetricsF::elidedText() を呼び出しその戻り値を返す。

注意


FontMetrics は Item を継承していないので parent プロパティーはない。従って、フォント参照はコンポーネントスコープ内のものか id 修飾が必要になる。

font 以外の独自プロパティーに対してはそれらのシグナルハンドラーは使わずに font のシグナルハンドラーを使い、シグナルハンドラーで設定した処理中でプロパティーが変更されているかを判断しなければならない。

問題


FontMetrics のリファレンスに fontChanged() シグナルが一般的な動作と異なることが説明されていない。

fontChanged() シグナルは、font プロパティーが変更されたときしか送信されていない。

onAscentChanged や onHeightChanged のように、font 以外の当タイプの独自プロパティーに対してシグナルハンドラーを記述できる。しかし独自プロパティーのすべてのプロパティー変更通知シグナルが fontChanged() になっているため、font を変更するとプロパティー値が同一であってもシグナルハンドラーで設定した処理が実行されてしまう。このため font 以外の独自プロパティーについて、その値が変わったときにのみシグナルハンドラーで設定した処理を呼び出させない。

参考情報

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。