0

GetThemeFont を使用してビジュアル スタイルからフォント データを読み取ろうとしていますが、何かを返すようには見えません。これが私がそれを使用している方法です:

IntPtr h = OpenThemeData(this.Handle, "Button");
LOGFONT font = new LOGFONT();
int r = GetThemeFont(h, IntPtr.Zero, 1, 1, 210, out font);
CloseThemeData(h);

戻り値は常に「-2147023728」で、フォントは常に null です。210 (TMT_FONT 用) を置いた場所ですが、そこで何を使用すればよいかよくわかりません。これに関するヘルプは大歓迎です。

4

2 に答える 2

1

-2147023728 は、 に割り当てられた値である 0x80070490L に相当する 10 進数ですE_PROP_ID_UNSUPPORTED。GetThemeFont のドキュメントの「備考」セクションから:

指定された部品と状態でプロパティがサポートされていない場合、E_PROP_ID_UNSUPPORTED が返されることがあります。

このプロパティは、渡されたパーツと状態の組み合わせではサポートされていません。

于 2009-01-26T05:18:51.943 に答える