問題タブ [windows-ribbon-framework]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
188 参照

c++ - Vista Basic テーマ リボンの問題

Vista では、Basic テーマのときに IUIFramework::Destroy() を呼び出した後、Vista テーマが失われ、ウィンドウを拡大しても初期領域の外に表示されません。

SimpleRibbon SDK サンプルで簡単に再現できます。simpleribbon.cpp で、WndProc スイッチ ブロックに挿入します。

コンパイルして実行し、キーを押して、Vista Basic Theme で拡大してみます (Win7 または Vista aero または Windows classic では問題ありません)。

回避する方法

[編集]

調査するいくつかのトラックに満足しますが、調理済みのソリューションは期待していません:-)

0 投票する
3 に答える
9425 参照

delphi - Windowsリボンフレームワーク:フォントの面とサイズを変更するにはどうすればよいですか?

WindowsリボンフレームワークのUIRibbonで使用されるフォント面とフォントサイズをどのように変更しますか?

リボンで使用されるフォントが、ユーザーがWindowsの設定として選択したフォントと一致しません。これは私のアプリケーションが使用する設定です。これは、Windowsのフォントが大きくなると、リボンが小さくなることを意味します。

各スクリーンショットでリボンがどのように小さくなるかに注意してください。

Segoe UI 9pt(Windowsのデフォルト)

代替テキスト

Segoe UI 12pt(私が使用しているもの)

代替テキスト

Segoe UI 16pt(お客様が使用するもの)

代替テキスト

16ptに達するまでに、リボンのテキストが非常に読みにくくなっていることがわかります。

バックグラウンド

ユーザーは、好みのフォントサイズを使用するようにWindowsを構成できます。例:

  • 8点
  • 9点
  • 12点

およびそれらの優先フォント面、例:

  • MSサンセリフ
  • Microsoftサンセリフ
  • タホマ
  • Segoe UI
  • Calibri

ただし、Windowsリボンフレームワークはデフォルトで、ユーザーの好みではないフォントを使用します。

編集:光沢のあるものに引き付けられたリスを捕まえるために画像を上に移動しました。
編集2:バンプを取得するために、別のカラフルな画像を追加しました。
編集3:バンプを取得するための
編集編集4:バンプを取得するための別の別の画像の追加


リボンを使用すると、リボンの色をカスタマイズできます。

次のコードフラグメントはUI_PKEY_GlobalBackgroundColor、リボンのを設定するために使用されます。この場合、ユーザーが現在選択しているAero配色である色を使用します。

そして今、リボンはWindowsの配色に一致するように色付けされています。

代替テキスト

しかし、フォントの面/サイズを変更するオプションが見つかりません。

注:リボンユーザーのDPI設定を尊重する場合がありますが、それはこの質問ではありません。


Outlook2010で動作します

Outlook 2010のリボンは、ユーザーの(メニュー)フォント設定を尊重することに注意してください。次のコマンドを呼び出すと、ユーザーのメニューフォントを取得できます[SystemParametersInfo][6]

9pt Outlook 2010

代替テキスト

12pt Outlook 2010

代替テキスト

12pt Outlook 2010

代替テキスト

フォントサイズに応じてリボンのサイズが大きくなることに注意してください。(これは、これらのサイズ変更されたスクリーンショットでは、リボンが知覚的に小さくならないことを意味します。)

2つの可能性があります:

  • Outlook 2010は、Windowsリボンフレームワークでフォントサイズを調整する方法を知っています。
  • Outlook2010はWindowsリボンフレームワークを使用しません

Windows7ペイントが機能しない

また、Windows7のWindowsペイントはユーザーのフォント設定を尊重しないことに注意してください。これにより、(mspaint)はWindowsリボンフレームワークを使用し、Windowsリボンフレームワークはフォントサイズの設定をサポートしていないと思います。あなたが実際に助けようとして、ここまで読んだら、これが正しい答えであることに気付くでしょう:それは不可能です。したがって、無料の300担当者が必要な場合は、それを回答として追加します。

編集: Microsoftへのクロスポスト

キーワード: Windowsリボンフレームワーク、フォントサイズの変更、UIRibbon、フォントフェイス、リボンui、風光明媚なui、風光明媚なリボン、流暢なリボン、流暢なui、フォントウィンドウリボンの変更、uiribbon.h

Microsoftには、いくつかのリボン実装があります。


MSペイントはメニューのフォント設定を尊重しません

これは、構成済みのWindows 7メニューフォント設定が12ptで、msPaintが表示され、Outlook2010が比較のために表示されているスクリーンショットです。

代替テキスト


サンプルコード

Windowsリボンフレームワーク14pt!= 14pt

これは、 14pt(96dpiマシン上)用に構成されたWindowsメニューフォントのスクリーンショットです。Outlook 2010は14ポイント、PhotoshopCS3は14ポイントです。リボンは...少ないです。

代替テキスト

も参照してください

0 投票する
2 に答える
2704 参照

windows-7 - Windows 7リボン:「4つのボタン、2つの大きなボタン、2つの小さなボタン」を指定するにはどうすればよいですか?

グループをレイアウトする場合、Windowsリボンフレームワークはいくつかの事前定義されたレイアウトをサポートします。4つのボタンを必要とするレイアウトの1つはと呼ばれFourButtonsます。

このレイアウトは、の3つの異なるサイズをサポートします。いずれの場合も、レイアウトを示します。

ここに画像の説明を入力してください

ここに画像の説明を入力してください

ここに画像の説明を入力してください

現在FourButtons、xmlファイルで事前定義されたテンプレートを次のように使用しています。

そして、あなたは線を見ることができます

FourButtonsレイアウトテンプレートを指定します。

そして私のレイアウトはFourButtonsです:

代替テキスト

FourButtonsレイアウトが必要ない場合を除いて、「 Four Buttons、Two BigTwoSmall」が必要です。

あるのと同じようにThreeButtons-OneBigAndTwoSmall

ここに画像の説明を入力してください

そして、ありますFiveButtons

ここに画像の説明を入力してください

FourButtons-TwoBigTwoSmall手動でモックアップできる、が必要です。

代替テキスト

残念ながら、Microsoftがカスタムレイアウトを作成するために発明した宣言型プログラミングは、プログラマーとして私を混乱させます。

誰かがページの下部にある宣言型言語の例を解読して、FourButton-TwoBigTwoSmallテンプレートを思い付くことができますか?

注:美しいグラフィック、フォーマット、リンクなどはすべて、光沢のあるグラフィックが大好きなリスを引き付けるために使用されます。そして、あなたが実際にここまで読んだら、私は実際にあなたの助けを使うことができます。

0 投票する
1 に答える
669 参照

delphi - Scenic Ribbon は Delphi フォームに表示されません // アイデアはありますか?

Scenic Ribbon API ( Windows リボン フレームワーク) で少し遊んでみました。これは私の結果です:

すべてがエラーなしで実行されます。リボン バイナリ XML 定義を使用してリソースを作成し、実行可能ファイルに正しくリンクしました。しかし、私のウィンドウはリボンなしで表示されます。

重要な部分は にありWndProcます。フレームワークはで初期化されtmpFrameW.Initializeます(正しいようです)。MyApp(私のIUIApplication実装です)の参照カウンターが増えます。tmpFrameW.LoadUIリボンの定義を呼び出すと、ロードする必要があります。この呼び出しにエラーはありません (結果は 0 で、例外は発生しません) が、参照カウンターがMyApp減少します。

それが起こることです.誰かが私が間違っていることを知っていますか?

0 投票する
2 に答える
902 参照

c++ - アプリウィンドウのサイズを水平方向に変更すると、リボンUIが表示されなくなるのはなぜですか?

新しいプロジェクトにリボンUIを採用したかったのですが、ツールバーの乱雑さを置き換えるリボンの実際の使用よりも、すごい要素に重点を置いている可能性があります。ただし、ウィンドウのサイズ変更を試し始めたとき、自動スケーリングに関連する機能のいくつかを確認しました。ウィンドウを最小幅よりも縮小した後、リボンUIが消えたばかりですが、リボンUIをすでに採用している商用ソフトウェアには存在しないのではないかと思いました。ペイントも同じ問題を抱えているようです。Office2007または2010も同じ問題に悩まされているかどうかはわかりません。

0 投票する
2 に答える
3307 参照

windows-7 - Windows XPでWindowsリボンUIを使用できますか?どうやって?

Arik Poznanskiのブログを読んで、WindowsリボンUIフレームワークはWindows 7のCOMオブジェクトであり、WindowsRibbonラッパーはその周りの.NETベニアであり、リボンUIをWindowsフォームアプリケーションで使用できるようにすることを理解しています。

このラッパーを使用するHelloWorldWindowsフォームアプリの実装に成功しました。

WindowsリボンHelloWorld

それは私の開発マシンであるWindows7で実行されています。


質問:

  • この「Hello、World」アプリケーションはVistaで実行されますか?XP?それを実現するために、それらのマシンに何かをダウンロードする必要がありますか?

  • MSIインストーラーでWindowsリボンUIコンポーネントを前提条件として指定する方法はありますか?

ありがとう


閲覧してみると、リボンUIを提供するWindows7上のDLLであるUIRibbon.dllのドキュメントが見つかりました。サポートされている最小のクライアントとしてこれらをリストします。

Windows 7、SP2を搭載したWindows Vista、およびWindowsVistaのプラットフォームアップデート

MSIでそれを確認するにはどうすればよいですか?

0 投票する
1 に答える
435 参照

winapi - Windowsリボンフレームワークの動的タブ

私は現在、Office2007リボンそっくりのサードパーティライブラリを備えたアプリケーションに取り組んでいます。アプリケーションは、広範なプラグインフレームワークとアクセス制御ルールを使用して、アプリケーションの起動時にリボンタブとコントロールを構築します。残念ながら、そのリボンライブラリには、私がなくても実行できる問題がいくつかあるため、Windowsリボンフレームワーク(WRF)に置き換えることを考えました。

ただし、WRFの背後には異なる哲学があり、リボン構造全体がXAMLで指定されています。私が理解できなかったのは、プラグインに基づいてタブを追加する方法です。これが私が思いついたいくつかのアイデアですが、そのほとんどはそのフレームワークでは実行できないようです。

  1. プラグインからの新しいコマンドを含むタブを追加します。実行可能ではないようです。
  2. プラグインからの新しいコマンドを含むXAMLを追加し、既存のXAMLとマージします。実行可能ではないようです。
  3. プラグインが読み込まれ、コマンドが使用可能になった後、UI全体のXAMLを生成します。これは実行可能であり、リボンコントロールを直接定義する現在の戦略とそれほど変わらないように見えますが、それが本当に唯一の方法でしょうか?

私が逃したオプションはありますか?

0 投票する
1 に答える
949 参照

delphi - TRibbon にタブが表示されない

64 ビット Windows マシン (Win 7) と 32 ビット Windows マシン (XP) の両方で Delphi 2010 を実行しています。

TRibbon コントロールの使用方法を学習しようとしています。

Marco Cantu の 2009 ハンドブックの例に従って、YouTube のデモを見てきましたが、本やデモで説明されているように、私のコントロールはうまくいきません。

コントロールを右クリックして、2 つのタブを追加しました。ただし、TRibbon をメイン フォームにドロップすると、スクリーンショットとまったく同じように見えました。本やYouTubeのデモほど高くはありません。

Windows XP と Delphi 2010 を実行している Win 32 ラップトップで同じことを試したところ、まったく同じ結果が得られました。

これが私のマシンでの外観です

64 ビット ラップトップのスクリーンショット

これは、デモでどのように見えると思われるかです

YouTubeビデオデモから

もう一度。フォームにドロップすると、デモで見たような形状と高さになりません。タブを追加しても。Delphi 2010 のインストール中に何か問題がありましたか?

0 投票する
1 に答える
1880 参照

windows-ribbon-framework - Windows リボン フレームワークがユーザーのフォント サイズを尊重するようにするにはどうすればよいですか?

Office 2007/2010 チームのリボンは、ユーザー (メニュー) のフォント サイズを尊重します。

Windows リボン フレームワークのリボン (MS ペイントと私のアプリケーションで使用) は、ユーザー (つまり私の) のフォント設定を無視します。

スクリーンショット表示:

  • エクセル2010
  • MSペイント(WRF)
  • 私のアプリケーション (WRF)

ここに画像の説明を入力

Windows リボン フレームワークのリボンにユーザーのフォント サイズを反映させるにはどうすればよいですか?

ボーナスおしゃべり

単一の「Windows フォント」はありません。ユーザーは 6 つの異なるフォントを設定できます。

  • アイコン タイトルのフォント
  • ステータスフォント
  • メッセージフォント
  • メニューフォント
  • キャプションのフォント
  • 小さいキャプション フォント

Office チームのリボンはMenuフォントを使用していますが、これはリボンがメニューであるため意味があります。以下を使用して、 Menu フォントを取得できます。

リボンの色:

デフォルトでは、リボンはユーザーの配色を尊重しません (私のスクリーンショットでは、茶色のガラス色の青いリボンに注意してください)。3 番目のリボン (私のアプリケーションでホストされているもの) でわかるように、リボンのを変更する APIあります。

ボーナスリーディング

0 投票する
1 に答える
354 参照

winapi - Win32 APIでリボンバーの座標を検出する方法

最新のリボン スタイルの UI を使用する Win32 API でアプリケーションを作成しています。SampleRibbon プログラムのテストに成功しました。私が抱えている唯一の問題は、リボンバーの X 座標と Y 座標を検出する方法です。(0,0) にコントロールを描画すると、リボン バーの後ろに隠れます。しかし、私はそれをバーの後ろに隠したくありません。リボンの下にコントロールを自動的に描画できるように、リボン バーの座標を取得する機能はありますか。