0

私は winform アプリケーションを作成していますが、リボン UI 要素から大きな恩恵を受けると思います。自分のアプリケーションにリボンを付けることはできますか? もしそうなら、どのように?

Delphi のようなサードパーティ製ツールに依存しないことを望んでいます。なぜなら、私のアプリケーションは、Windows の将来のバージョン (または現在のバージョン) ですぐに時代遅れに見えるからです。これは、Creating Ribbon Styled Applicationsを見ていて、おそらく同じマシン上で Office 2010 ビジュアル スタイルを使用する Windows 7 のワードパッドと比較されているにもかかわらず、Office 2007 のように見えることに気付いたからです。今でも、MS Windows 8 アプリケーションは、エクスプローラー、ワードパッド、ペイントなどで Office 2013 スタイルを使用しています。Delphi がそのビジュアル スタイルをまだサポートしているという証拠も、Vista のような古いプラットフォームにスタイルを適応させるという証拠も見当たりません。必要。これがあまりにも些細なことでしたら申し訳ありませんが、私は自分の経験や将来の経験ではなく、慣れ親しんだ経験をユーザーに提供したいと考えています。

4

2 に答える 2

2

ユーザーに "最もネイティブなルック アンド フィール" を提供する場合は、Windows リボン フレームワークに固執する必要があります。これは、Microsoft がこの API を「デフォルト」の Windows リボン アプリケーション (MS Word、MS Paint) にも使用しているためです。この「ネイティブ」実装の利点は次のとおりです (したがって、このリストはすべてを網羅しているわけではありません)。

  • Look'n'feel はオペレーティング システムに依存します。これは、リボン アプリケーションが、たとえば Windows 7 および 8 の MS ペイントおよび MS ワードパッドとまったく同じに見えることを意味します。このようにして、アプリケーションのリボンは、Microsoft が将来の Windows 更新プログラムおよび (もちろん Windows バージョン) で Windows リボン フレームワークに提供する改善/パッチから直接利益を得ることができます)。

  • 追加のソフトウェアは必要ありません (Windows リボン フレームワークをサポートするためにプラットフォーム アップデートが必要な Windows Vista / Server 2008 を除く)。

  • したがって、リボン GUI である COM API は、COM プログラミング (.NET、C++、Delphi など) をサポートする Windows 上の任意のプログラミング言語のアプリケーションに統合できます。

Microsoft が提供するリボンの実装は他にもいくつかありますが (説明を参照する場合はファースト パーティ)、それらはすべて特定のソフトウェア (Office リボン) またはプラットフォーム (WPF リボン) 用に実装されているか、時代遅れ (MFC リボン) です。 . Office リボンはもちろん Microsoft Office アプリケーションに限定されているため、オプションではありません。MFC リボンも COM ベースであるため、理論的には使用できます。しかし、前述のように、これらはかなり古いため、アプリケーションは Office 2007 の子孫のように見えます。次のように、WPFは間違いなくオプションです。

  • コンポーネントは非常に強力で、WPF コンポーネントは積極的に更新/保守されています。

  • 開発者の観点からは、多くのドキュメントがあり、Visual Studio などの一般的な IDE によってコンポーネントが十分にサポートされているため、アプリケーションへの統合がさらに簡単になります。

  • .NET フレームワークがインストールされていると、Windows XP などの「古い」オペレーティング システムでもリボンを使用できます。それでも Windows XP / 2003 をサポートする必要がある場合は、これを念頭に置いておく必要があります。

ただし、前述のように、これらは Microsoft が "既定の" リボン アプリケーションに使用するコンポーネントと同じではないため、Windows リボン フレームワークと比較すると常に少し異なって見えます。

したがって、Windows リボン フレームワークを使い続けることに決めた場合は、「ハードコア」に進んで必要なインターフェイスを独自に実装するか、「Windows リボン for WinForms」や「Delphi 用 Windows リボン フレームワーク". そして、Delphi を「サードパーティ ツール」と呼んでください。Embarcadero が提供するリボン コンポーネントを見たからだと思います。(Delphi パブリッシャー)。確かに、これらは非常に時代遅れで、たわごとのように見え、積極的にメンテナンスされていません (そしてバグがあり、...)。したがって、それらを使用しないでください。代わりに、Windows リボン フレームワークを直接使用してください。上記のラッパーはこれを行います。必要なすべてのインターフェイスを実装し、デザイナーといくつかのサンプル アプリケーションが付属しているため、開発プロセスが大幅に簡素化されます。

別のプログラミング言語を使用したい場合でも、これは問題ありません。最初に Delphi について言及した理由は、あなたが最初の投稿で書いたとおりで、ラッパーが非常に優れているからです。前述のように、COM API プログラミングをサポートする他のプログラミングも使用できます。

物事がもう少し明確になったことを願っています。【そしてここまで来てくれた方々、ありがとう!;)]

PS: とにかく Microsoft の実装に固執したかったので、DevExpress や TMS などの実際のサードパーティの実装については言及しませんでした。

于 2014-09-04T19:39:40.663 に答える
1

「サード パーティ ツール」をどのように定義するかはわかりませんが、このコード プロジェクトcodeplex のライブラリを使用しており、office 10 および office 13 スタイルを非常によくサポートしています。

以下は、味を確認するためのスクリーン ショットです (codeplex の公式サイトからのコピー)。

2007年

2007年

2010年

2010年

2013年

2013年

于 2014-09-03T19:45:53.083 に答える