質問

メニュー項目を太字で表示するのに必要な労力を調査してきました-自分でメニューを描画する必要はありません-いくつかのグーグルの後、MFS_DEFAULTメニュー項目の状態を発見しました。 MSDNドキュメントの言及

  

MFS_DEFAULT
  メニューが   itemがデフォルトです。メニューは   デフォルトのメニュー項目が1つだけ含まれている   太字で表示されます。

試してみたところ、ドキュメントに反して表示したように、このフラグを使用して複数の(またはすべて!)メニュー項目を太字で表示できるようです。誰かがこれについて経験を持っていますか?つまり、複数の太字のメニュー項目を持つことに落とし穴がある場合は?私が達成しようとしていることを達成するのは少しハックのように感じられ、未知の副作用(つまり、単一のメニューに複数の「デフォルト」メニュー項目がある)について少し心配しています。

編集:この記事は、MFS_DEFAULT flagは、メニュー項目を太字で表示するだけです。それでも、私は「公式」ドキュメントに反することに少し警戒しています...

EDIT2:これの目的は、問題のコントロールをダブルクリックすることで、問題のメニュー項目(太字のメニュー項目)も呼び出せることをユーザーに伝えることでした(メニュー項目はコンテキストメニューの一部です)。この問題について考えたとき、通常、ダブルクリックイベントに関連付けられるコマンドは1つだけであるという事実を考慮しませんでした(d'oh!)。そのため、zaphodの回答を受け入れました(この質問には直接回答しませんが、私の「問題」は解決しました)

役に立ちましたか?

解決

何を達成しようとしていますか

MFS_DEFAULTを意図した目的以外の目的に使用することに対する最大の異議は、Microsoftが太字のメニュー項目の意味とユーザー(またはスクリーンリーダーなどの支援プログラムは、遭遇したときに反応する必要があります。

あなたがやろうとしているのが、特に興味のあるいくつかのメニュー項目にユーザーの注意を向けるだけなら-それは少し奇妙に思えますが、それはかなり無邪気でもあり、私は驚いたでしょう将来的に大きな問題を引き起こしました。もちろん、何でも可能です!それでも、私はあなたが正確に何をしていたのか疑問に思うでしょう。

プログラムの状態の一部をメニュー項目を太字にしたり太字にしたりして公開しようとしている場合-これは少し予想外に思えますが、詳細を聞く前に判断を下すのは嫌です。

他の目標を念頭に置いている場合-メニューのデフォルトのフォントがいだと思うかもしれないし、すべてが太字になっている方が好きだと思う場合-あなたが発見した方法は便利かもしれませんが、あなたが望むものを正確に得るためのより良い方法であり、あなたが喜んでいるなら、私たちはより詳細に(おそらく別の質問で)議論することができます。私はこれが事実だとは思いませんが、誰が知っていますか?

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top