9

今日の「トップエンド」の外観を持つアプリケーションをリリースする方法について、良い解決策/ヒントを見つけるためにあらゆる場所を探してきました。

誰もが知っているように、ウィンドウでコーディングする場合、通常、ウィンドウ スタイルの色/ボタン/リストなどを取得します。

私たちがアプリケーションを売りたいと決めたとき、人々は見栄えを良くしたいと思っています。

質問は次のとおりです。

  • 現在、優れたアプリケーションの外観はどのように達成されていますか?
  • 所有者の描画?( 本当?? )
  • カスタム コントロール ?
  • 「汚い」作業を行い、アプリケーションを「皮をむく」いくつかの優れたフリーでないライブラリはありますか?

プログラマーがこれらの「やり過ぎた」ヒントやトリックを行うとは思いません.1つのコントロールを完全に完了するには非常に時間がかかります..さらに、コントロールごとの描画で遊ぶよりも、内部アプリケーションのコーディングに時間を費やしたいと思います..

私には手がかりがありませんが、締め切りがあり、グーグルですべての「ownerdrawed」コントロールを調べた後、これは問題ではないことに気づきました..プログラマーが自分のアプリケーションはトップエンドに見えます!.

助けてください、何かツールはありますか?任意のヒント ?なんでも..?

いくつかの例、どのようにその外観を達成するのですか:

http://fooh.pl/pokaz/3198197337370da4cdfdebf0ae13933c_openfm.jpg

4

9 に答える 9

2

たとえば、 Qtを見ることができます。その基本的な機能に加えて、すべてのウィジェットを好みに合わせてスタイル設定し (CSS と非常によく似た方法で)、心ゆくまで「テーマ」を作成することもできます。

リンク先の画像のウィンドウの非長方形の外観については、Qt の setMask() 機能を使用できます。

于 2011-07-16T13:48:58.643 に答える
2

完全にスキン可能なアプリが必要なように思えますが、通常の Win32 コントロール以上の労力は必要ありません。これは不可能です。しかし、スキニングは一般的に難しくはありません。

次の問題は、スキンを適用したアプリを作成したら、優れたスキンを開発するためにプロのグラフィック デザイナーが必要になることです。あまりにも多くの小さなプロジェクトの開発者が、自分でスキンを作成できると考えていますが、ほとんどの場合、見た目はひどいものです。あなたが望むこのセクシーなプロの外観は、デザインの専門家なしでは不可能です.

最後に、最終的にどのような派手なカスタム スキンが作成されたとしても、その機能はおそらくカスタムである必要があります。つまり、四角形以外のコントロールやアニメーションが必要な場合は、開発に時間を費やす必要があります。

Qt のようなツールキットを使用することは、良い投資になる可能性があります。しかし、これはどのようにスライスしても非常に手間のかかるディテールです。

やや的外れ: UI の専門家によって正しく設計されているため、既定のウィンドウ コントロールは非常にプロフェッショナルに見える傾向があります。ネイティブの Windows コントロールを使用することには非常に多くの利点があります。車輪の再発明を試みる前に、慎重に検討する必要があります。

  1. キーボード ナビゲーション、スクリーン リーダー、ハイ コントラストなどのアクセシビリティ機能。Windows がコントロールで提供するすべてのアクセシビリティ機能を再発明しようとするつもりですか? それとも、スキンを使用できるようにするためだけに、障害のある人をアプリの使用から除外する価値がありますか (アクセシビリティ機能を使用する障害のない人は言うまでもありません)。
  2. サイズ変更。あなたの肌は、ウィンドウのサイズ変更を無効にすることを意味していますか? 繰り返しますが、それだけの価値はありますか?
  3. うまくスキニングできないものもあります。たとえば、スクロール バーとメニュー。一部の開発者はそれらを再発明します (スクロールバーは特に再発明が困難です)、他の開発者は単にスキンを適用せずに残します。
  4. Windows のテーマ。Windows のテーマは、スタート メニューの色だけではありません。OS全体の外観を決定するはずです。標準の Windows コントロールを使用すると、組み込みのメカニズムを使用してルック アンド フィールを選択できます。
于 2011-07-16T14:11:06.583 に答える
1

おそらく、そのアプリケーションには単一のコントロールはありません。

代わりに、全体が画像としてレンダリングされます。背景画像と、マウスオーバー ハイライトや無効化されたコントロールなどを提供するオーバーレイ画像 (ほとんどが透明) があります。プリレンダリングされていない唯一のものは、現在のトラックとプレイリストの情報で、特定のフォントを使用した純粋なテキストです。

ヒット テストは、さらに別のイメージで実行できます。

プログラマーは、凝ったデザインを実装するための作業をほとんど行わず、すべてアーティストによって行われます (また、Photoshop などのプログラムはエディターでレイヤーをサポートしているため、すべてのオーバーレイを非常に簡単に構築できます)。

もちろん、欠点は、ボタンが通常の Win32 ボタンとまったく同じように動作しないことです。それらはキーボード フォーカスをサポートしておらず (おそらくホットキーはありますが)、単にマウスアップでアクティブになります。また、アクセシビリティは恐ろしく、スクリーンリーダーに関する情報はなく、アプリケーションはシステムのフォント サイズ設定を尊重しません。目の不自由な人が UI を読みやすいようにするには、まったく別のスキンが必要です。

于 2011-07-16T14:06:16.033 に答える
1

C++ チームは、フレームワークを使用せず (ATL も MFC も使用しない)、すべてネイティブ コードであるHilo (ハワイの場所のような)というサンプルをまとめました。Windows 7 の多くの機能と、魅力的なグラフィックスとアニメーションを使用しています。すべてのコードと設計が利用可能で、文書化されています。見てください。

于 2011-07-16T14:07:40.650 に答える
1

特定のアプリの内部を掘り下げたい場合は、スパイ ユーティリティを起動して、インターフェイスがいくつのコントロールに分割されているかを確認できます。

Spy++ が欲しいのですが、Visual Studio がありません

WPF 用の Spy++ のようなユーティリティはありますか?

たとえば...スキン モードで Windows Media Player をスパイすると、 という名前のウィンドウ クラスがあり、子ウィンドウがゼロWMP Skin Hostであることがわかります。(通常の非スキン モードは、いくつかのリスト ボックスやボタンなどに分割されています。)

私の経験では、「モダンな」スキニングは、人々が再実装しすぎて「かっこよく見える」ようにしようとすると、一般的に惨事になります。障害者向けのアクセシビリティ機能は言うまでもなく、 ( AutoItなどによる)自動化の両方を妨げます。また、OS ベースのテーマ API を使用していない場合、現在のクールな外観は最新のものではありません。

(注:私は一般的にQtのファンなので、QStyle と QStylePainter を調べることをお勧めします。しかし、これは「スキニング」よりも「テーマ」です。)

アプリでスキニングを使用することには非常に慎重です。ただし、それが絶対に必要な市場 (音楽プレーヤーなど) 向けに開発していると判明した場合を除きます。

于 2011-07-16T14:07:54.397 に答える
0

SkinCrafterをよく見てください。成熟しており、安定しており、非常に柔軟です。私はもうそれを使用しませんが、それでの私の経験はとても楽しかったです.

于 2011-07-16T14:02:40.310 に答える
0

通常、GDI(+) レンダリングを使用してカスタム コントロールをレンダリングできます。

于 2011-07-16T13:49:01.343 に答える