1 名前:デフォルトの名無しさん [2009/12/27(日) 10:58:30 ] あたらしいユーザーインターフェースシステム、Windows Presentation Frameworkについ て語るスレ。.NET3.5 SP1 もリリースされて盛り上がってまいりますた。 Visual Studio 2008 ttp://www.microsoft.com/japan/msdn/vstudio/ Microsoft .NET Framework 3.5 Service Pack 1 ttp://www.microsoft.com/downloads/details.aspx?FamilyId=AB99342F-5D1A-413D-8319-81DA479AB0D7&displaylang=ja WPF Toolkit - June 2009 Release ttp://wpf.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=29117 Visual Studio 2010 ttp://www.microsoft.com/japan/msdn/vstudio/2010/overview/ 関連スレ Microsoft Silverlight その4 ttp://pc12.2ch.net/test/read.cgi/tech/1244812356/ 過去スレ WPF(XAML,XBAP,.NET3.5)GUIプログラミング Part3 ttp://pc12.2ch.net/test/read.cgi/tech/1245384489/ WPF(XAML,XBAP,.NET3.5)GUIプログラミング Part3 ttp://pc12.2ch.net/test/read.cgi/tech/1231506876/ WPF(XAML,XBAP,.NET3.5)GUIプログラミング ttp://pc11.2ch.net/test/read.cgi/tech/1211453941/ 【新GUI FW】WPF(XAML,AVALON,.NET3.0)【重い?】 ttp://pc11.2ch.net/test/read.cgi/tech/1162950198/
388 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 17:18:43 ] >>387 つEnsureVisible()
389 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 17:33:12 ] 普通に、IsSelected=trueするだけだろ
390 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 01:16:40 ] WPF M-V-VM Toolkit 0.1のドキュメント Model-View WPF Applications--Part 2, Walkthroughにおいて コマンド呼び出しにわざわざCommandReferenceを間にかませているのだけど これは何の意味があるのでしょうか? ViewModelのプロパティ名を記述する部分を一箇所にまとめるという意味はあると思いますが。。。 そもそもCommandReference自体が何をするためのもの?
391 名前:390 mailto:sage [2010/03/20(土) 01:06:56 ] <KeyBinding Key="X" Modifiers="Control" Command="{StaticResource ExitCommandReference}" /> となってるところを <KeyBinding Key="X" Modifiers="Control" Command="{Binding ExitCommand}" /> こうしちゃえばいいじゃんと思ったら依存関係プロパティじゃないからバインドできないということなのね〜 StaticResourceでワンクッション置けばできる仕組みはなんとなくしか理解してないが バインドできない(Dependencyでない)プロパティ用の中継オブジェクトという認識で理解。
392 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 20:34:28 ] Microsoft Extensible Application Markup Language (XAML) technical documentation set www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=52A193D1-D14F-4335-AA86-C53193E1885D 読んでないけど、なんか来てた。
393 名前:デフォルトの名無しさん [2010/03/20(土) 20:49:32 ] XAMLで書かれたベクタ画像を動的に読み込んで表示したいのですが、 どうしたらいいでしょうか?
394 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 20:53:25 ] XamlReader.Load
395 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 21:03:10 ] これでも動く。 [STAThread] static void Main(string[] args) { Application application = new Application(); application.StartupUri = new Uri(new FileInfo(args[0]).FullName); application.Run(); }
396 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 15:27:44 ] 等幅フォントを列挙するにはどうしたら良いんでしょうか? Fonts.SystemFontFamilies で列挙できる FontFamily で等幅かプロポーショナルか 判断する方法ありますか?
397 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 00:41:43 ] OnClosingのタイミングで設定保存とか続行確認とかしたいので OnClosingとかOnLoadイベントにICommandをバインド?したいのですが どう書けばいいのですか? xamlに直接書けないのかな? イベントハンドラ作ってxaml.csにコードで書くのかな? できないことはないと思いますがぐぐっても情報が見つけられないです
398 名前:397 mailto:sage [2010/03/22(月) 23:32:43 ] いろんなblogとか見てると MVVMでのイベント処理は結構悩みどころなんですね。 添付プロパティをくっつけてイベントキックさせるというメンドクサイやりかたが見つかりました。 ↓ ttp://blogs.wankuma.com/kazuki/archive/2009/05/05/172467.aspx xaml的には美しいですけどね・・・ このままではあまりに使い勝手が悪いので汎用的になるように改造してみます。 てか絶対誰か既に作ってるだろ。。。趣味だからいいんだけれどね・・・
399 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 10:59:35 ] OnClosing とかポップアップは MVVM 的にすとんと落ちないらしいよね。 個人的には落ちない部分は大人しくコードビハインド書いたらいいのにとは思うけど。
400 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 13:36:30 ] ViewModel→Viewの操作でどうしてもバインドで書けないところは var service = (IWorkspaceService)this.Services.GetService(typeof(IWorkspaceService)); service.OpenWorkspace(HogeWorkspaceViewModel); みたいにしたらだいたいなんとかなるとおもう
401 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 14:42:36 ] Eventにコマンドをバインドしたければ AttachedCommandBehaviorが使えるよ。 marlongrech.wordpress.com/2008/12/13/attachedcommandbehavior-v2-aka-acb/
402 名前:デフォルトの名無しさん [2010/03/23(火) 16:22:41 ] WPF3.5でテキストがGDIに比べてぼやけた状態で描画されてしまう問題に対応しようとしています。 私なりに調べた結果、WPFの描画の際に論理座標で色を配置する仕様が原因であること、図形と画像については RenderOptionsのパラメータで解決させることができる。 ですがテキストに関しては解決させる方法が見つからないでいます。 WPF4.0から対応するといった内容のページも見つけましたが、なんとか解決させたいと思っています。 どなたか解決方法を教授願えませんでしょうか。
403 名前:397 mailto:sage [2010/03/23(火) 17:04:58 ] >>399 まぁ >>122 ということなのです。 WPF触りたてなのでまだまだMVVMの華麗なる疎結合に夢と希望をもっていますのでw >>400 IWorkspaceService ってインターフェースはMSDNもグーグルさんも知らないとおっしゃってるのですが・・・ >>401 おお!すばらしいです。 ぱっとみ問題ありそうなのはEventArgsが利用できなさそうなくらいですかな。 大変参考になります。 こんな↓ページを見つけまして ttp://blogs.microsoft.co.il/blogs/tomershamam/archive/2009/04/14/wpf-commands-everywhere.aspx でも上のはRoutedEventにしか対応してないから普通のEventHandler対応版を追加するのに リフレクション使ってイベント名からイベント追加してというコードを作ったのですが 同じコードがあるじゃないか・・・orz
404 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 17:29:16 ] >>402 WinFormsHost 敗北宣言に等しいけど
405 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 17:38:10 ] カスタムスタイルでレイアウトの入れ子が増えるとおかしくなる。
406 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 17:48:50 ] 知らん XAMLくらい出せるだろ
407 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 22:35:36 ] あと、.NET 3.5のWPFでぼけたように見える原因の1つに埋込ビットマップをまったく使わないせいというのもある。 だからどうしたらいいと言えるわけではないけれど。
408 名前:デフォルトの名無しさん [2010/03/23(火) 22:51:45 ] VS2010RC, WPF4.0 を使っているのだが、 Win32におけるWM_GESTUREみたいなもので Gestureイベントってあるのかな? zoomとかrotateとか簡単に取得できると 良いのだが。
409 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 22:59:34 ] WPF マルチタッチ でググる
410 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 23:34:37 ] >>409 それで解答が得られたのであれば 本気で教えて欲しい。 どうせ「WPF マルチタッチ」でググったことないんだろ?
411 名前:410 mailto:sage [2010/03/23(火) 23:38:39 ] >>409 正直スマンかった。 最近、海外のサイトばかり回っていたのだが 日本のサイトでもWPF4.0について書かれているサイトが 少しずつ増えているんだな。
412 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 21:26:14 ] これXPには対応していない部分とかあるの? XP用に開発するのは無謀?
413 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 22:33:26 ] XPだとなんか重いし、見た目もいまいちだし。 俺はもうXPはサポート外でやろうと思ってるくらいだ。
414 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 23:08:34 ] WPF初めて触って面白そうと思ったんですが(まだハローワールドしかやってないんですが)そんなにはやってないんですか XPだと表示が微妙なんでしょうか?
415 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 23:09:18 ] Silverlight使えば? Silverlight4ならブラウザ外実行の普通のデスクトップアプリケーションとして CDなどで直接配布できるよ
416 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 23:17:52 ] >>414 微妙っていうか重いってのが一番のネックかと。 今のところ、WPF でやってみました!!なんてのが売りになるぐらい流行ってないと思う。 少なくとも国内では。
417 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 23:28:38 ] WindowsFormで作られたC#アプリを 簡単にWPFのGUIに移行できる? 簡単に言うとform1だけwindows1にするだけで 作り変えられるのか?ってとこが疑問なんだけど このGUIで非同期とか実現できるのかなー
418 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 23:31:12 ] 新しい概念が登場しすぎで全体像把握すんのが大変 昔の素朴なイベントキューアーキテクチャって一目で理解できたもんな それってある意味ではすごい
419 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 23:32:32 ] >>417 ならない 細かいところで変わってるから
420 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 23:33:31 ] >>417 > form1だけwindows1にするだけで作り変えられるのか? 一応WinFormとの相互運用性は確保されてるが、 Windowに直接System.Windows.Forms.Controlは乗せられないから多少手間が必要 しかしそれ以前にそもそもWPF使う意味皆無だろそんなもん > このGUIで非同期とか実現できるのかなー 意味分からん
421 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 23:38:29 ] >>416 重いんですか、残念 こういうの待ってたんだけどなぁ Silverlightってwikipedia見る限りWPFと同じなのかな??は調べてやってみまする
422 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 23:39:54 ] XPだと重いってどういうことよ? プラットフォームに依存しないんじゃないの?
423 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 23:40:55 ] 同じPC/AT互換プラットフォームなら全て同じ性能出せと言いたいのか
424 名前:デフォルトの名無しさん [2010/03/24(水) 23:41:04 ] >>422 GUI周りの構造の問題じゃないの? 試してないけどもしかするとvistaのAero切ったらだめってのと同じかもね
425 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 23:42:41 ] まあSilverlightなら軽いし確実に同じ外観と操作性を実現できるもんなあ
426 名前:デフォルトの名無しさん [2010/03/24(水) 23:43:42 ] vista以降ってOSのGUI周りがゲームと変わらないといっても過言じゃないくらい GPUと融合果たしてるけど、xpまでは2Dが基本なのでWPFだといろいろ 無駄がありそうってイメージ
427 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 23:59:15 ] 細かい違いはあるけど Silverlight 覚えるのも WPF 覚えるのも大差ないような気はするよね。
428 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 04:20:54 ] Expression Blend 3をダウンロードしてみたんだが UIがめっちゃオサレですね でも使い方が全然わからん ほんとにデザイナさんこんなの使えるの???
429 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 06:40:20 ] flashでas3やってるデザイナなら使えると思う
430 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 10:53:57 ] 体を使う技はデザイナでも訓練しなければ云々
431 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 13:04:21 ] >>426 OSはあんまり関係ないよ WPFは基本的にウィンドウ内で完結してるのでほんとにゲームと全く変わらない
432 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 17:46:11 ] 描画システムが違うって点でOS関係あるんじゃないの?
433 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 17:59:00 ] XPがWDDM1.1に対応してないという点では関係ある ウインドウの中身をdirectxで書いてるという点では関係ない
434 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 22:30:39 ] XPだとGPU支援が得られず、CPU負荷が大きい。 なのでOSは思いっきり関係ある。
435 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 22:33:57 ] それ迷信 単なるゲームだと何度言ったら
436 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 22:42:50 ] XPでGPUアクセラレーションが効かないっていう噂の発端は XPでは透明ウィンドウがソフトウェア処理されていたこと .NET3.5ではXPでも透明ウィンドウにGPUが効くようになった
437 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 22:49:27 ] なるほど。 3.5以降ターゲットで作ればVista以降と比べて遅いってことはなくなるのか。
438 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 00:13:16 ] 3.5のせいでウィンドウフックするタイプのソフトは全部使えなくなったわ
439 名前:デフォルトの名無しさん [2010/03/27(土) 01:22:15 ] WPF3.5 SP1 です。 イラレで描いた絵をXAML形式で吐いて WPFに配置することはできますが、 以下のことは可能でしょうか? ・座標 (a, b) を設定する ・ボタンを押す ・指定した座標に、イラレで描いた絵を配置する たとえば、ある canvas に対する相対位置 (a, b) に XAML形式のものを配置するということを、C#のコードで 実現することは出来るのでしょうか?
440 名前:デフォルトの名無しさん mailto:sage [2010/03/27(土) 08:06:13 ] できるとしか答えられない
441 名前:デフォルトの名無しさん mailto:sage [2010/03/27(土) 08:23:34 ] >>440 *.cs からイラレxamlって生成できるの? どうやんの?
442 名前:デフォルトの名無しさん mailto:sage [2010/03/27(土) 08:27:29 ] どうやるかは分からないが 労力を無視すれば どんなことであれ不可能ではないだろう
443 名前:デフォルトの名無しさん mailto:sage [2010/03/27(土) 09:08:38 ] *.cs で、はしらんけどイラストレーターには Xaml 出力のプラグインがあったよ? www.mikeswanson.com/xamlexport/
444 名前:デフォルトの名無しさん mailto:sage [2010/03/27(土) 09:24:27 ] >>439 XamlReaderでXAMLを読み込んでXAMLのルート要素の型(IllustratorならたぶんCanvas)にキャスト Canvas.SetLeftとCanvas.SetTopで位置を設定 配置されてるCanvasのChildrenに追加
445 名前:デフォルトの名無しさん mailto:sage [2010/03/27(土) 15:17:30 ] あるいはC#で静的にXAMLファイルを書きかえる
446 名前:デフォルトの名無しさん mailto:sage [2010/03/27(土) 19:26:24 ] >>442 〜でできますかという言い方をすれば俺ならこうやってできるぜ という人が必ず現れるので労力は無視できる。
447 名前:デフォルトの名無しさん mailto:sage [2010/03/27(土) 19:37:45 ] >>446 それが2ちゃんの正しい使い方
448 名前:デフォルトの名無しさん mailto:sage [2010/03/27(土) 19:39:35 ] 「◯◯って××も出来ないんだね→ばーかばーか、△△で出来るっつーの」メソッドと、 「◯◯ってどうやるんでしょう?→△△で出来ますよ(嘘自演)→アホ、□□だ情弱」メソッドもあるでよ。
449 名前:デフォルトの名無しさん mailto:sage [2010/03/27(土) 19:44:39 ] もはやそのメソッドも使い古されて「△△で」「□□だ」は書かれない傾向が
450 名前:439 mailto:sage [2010/03/27(土) 22:09:58 ] >>443 ありがとうございます。 そのプラグインで生成したxamlを *.cs.xaml に記述するのではなく *.cs の中から生成したいのです。 >>444 ありがとうございます。 今、外出中なので帰宅したらやってみます。 また、いただいた情報から更に調べてみます。 >>445 ありがとうございます。 検索の手がかりになるキーワードだけでも 教えていただけないでしょうか。
451 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 02:42:38 ] WPF覚える前に検索方法覚えたほうがいいんじゃね 検索キーワード聞かなきゃ検索できないとか冗談にもならないレベルだよ
452 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 09:35:00 ] いやいや何言ってんだ・・・キーワード知らなきゃ検索出来んだろ普通。
453 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 10:41:34 ] >>439 大漁でしたね
454 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 12:24:39 ] google入門とか読めよ。 簡単に言うと、自分が思いつくいちばん近いキーワードで検索してページを読んで もっと近そうなキーワードを見つけていくんだよ。誰でもできるだろ? やれ。
455 名前:439 mailto:sage [2010/03/28(日) 14:13:30 ] ネットはテレホーダイの時代以前から触っているので それなりに検索術はあると思っていますが 皆さんの反応を見る限り、そうではなかったようです。 >>454 氏の書き込んでいることはもはや当然のことで、 かれこれ3週間MSDNやらcode projectやらブログやらを 探っていますが、解に到達できていません。 その上で質問に来ています。 が、経験上、この流れになったが最後、 これ以上の情報をこのスレで得ることは困難なため 大人しく身を引きます。ありがとうございました。 >>453 遊びではありません。
456 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 14:38:44 ] 傲慢過ぎワラタ こんな捨て台詞数年ぶりに見たわ
457 名前:デフォルトの名無しさん [2010/03/28(日) 16:01:23 ] そうか?俺も他スレで同じ経験すること多いぞ 技術的な他分野ってこんなもんだろ
458 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 16:06:43 ] 無駄にプライド高いのに教えを乞うからだよ。 希望の機能ならライブラリにメソッドがちゃんと用意されてるよ。 遊びじゃないなら3週間給料泥棒だったね。
459 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 16:09:21 ] 今質問すると、ググレカスで一蹴されそうだが width, height を Auto にして Stretch にすると たとえば Name="canvas1"のCanvasに対して int w = (int)(canvas1.Width); としても w に変な値が入ってしまう。 // HeightとWidthはあくまで開発者がデザイン時に設定した値 ということは分かったのだが、 ではどうやって値を取得するのかが分からん。 canvas1.RenderSize.Width canvas1.ActualWidth とか調べても分からん。 windowサイズの拡縮に合わせて変化する canvas の 縦横を取得するにはどうすれば良いの? # VC#2008, WPF3.5SP1
460 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 16:15:53 ] ActualWidth/ActualHeightでいいはずだが? 「調べても分からん」?「確認したけど期待した値じゃない」じゃなくて?
461 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 16:17:37 ] 計算される前に呼んでるんだろ
462 名前:459 mailto:sage [2010/03/28(日) 16:20:36 ] >>460 >「確認したけど期待した値じゃない」じゃなくて? そうでした。すまん。 なんか 0 が返ってくる。 >>461 ・・・ビンゴな気がする。 Invalidatなんたらを実行してからとか そんなのですかね。色々試してみる。 お二方ありがとうノシ
463 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 16:35:23 ] ggrks
464 名前:459 mailto:sage [2010/03/28(日) 16:42:19 ] 何を血迷ったか、WinMain() の中で呼んでいたよ orz Window_Loaded() の中で呼んだら、期待した値が来ました。 本当にありがとうございました。
465 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 18:09:57 ] >>464 いいってことよ
466 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 18:44:24 ] おまえら質問のしかたで反応が違いすぎ
467 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 18:54:47 ] いや普通そうだろ
468 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 18:56:06 ] >>466 普通そうです
469 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 18:57:59 ] 私は女子中学生だけどそれが普通だと思います。
470 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 19:02:41 ] 「自分のしたいことが明確にわかっている」のが質問の最低条件だから。 ここコミュ力試験に出るよ。
471 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 19:07:14 ] エスパーじゃないからな でも初めてのことだとたまにエスパーして欲しいことはあるな そういうときは答えをもらおうとせずもらえそうなところに愚痴っておくといい たまーにヒントがもらえるから
472 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 19:26:58 ] >>470 あと「回答すべきことを明確に伝えれる」「必要なことは書き余分なことは書かない」も重要。 「ネットはテレホーダイの時代以前から触っているので」とか 歯に詰まったクラッカーのカスほどの価値もないことを書いて 自分が調べたキーワードがどういうものかもかかない奴には当然冷たい。
473 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 20:01:39 ] >>459 最初の一行が効いたな
474 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 20:03:03 ] >>472 おまえはテレホマンの魂を侮辱した!
475 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 20:17:42 ] しかしネットで難解なドキュメントやマニアックなブログ見るよりも ビギナー向けのXAML入門書読んだほうが早いような気もするが
476 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 20:34:18 ] 普段、難解なことを扱っているんだろ。 入門書で分かるレベルのことであっても いつも通りの調べ方をしてしまったんだろな。 それ故にプライドも高い。
477 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 20:44:19 ] スレチ
478 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 20:44:23 ] WPFで、マウスポインタがディスプレイの端を触った時に 発生するイベントってありますか? 現状では、以下の2通りの方法で何とか実現していますが 美しくありません。 1) DispathderTimer を使う ・ System.Windows.Forms を参照 ・ timer で定期的に呼ばれる関数内で Cursor.Position.X, Y を取得し 予め取得しておいた、解像度の情報と X, Y を比較して判定 問題点:タイマーを設けることで常に関数が呼ばれることになる 2) 透明の Rectangle などを置いて、MouseEnter で判定 ・そのままです。 問題点:問題と言うか、美しくないです。 もしあるようでしたら、ご教授願いたいです。 よろしくお願いします。
479 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 20:55:04 ] 2)は美しくなくない
480 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 20:55:39 ] MouseMoveイベントと www.atmarkit.co.jp/fdotnet/dotnettips/003screen/screen.html を組み合わせてみては?
481 名前:478 mailto:sage [2010/03/28(日) 21:11:57 ] >>479 美しくなくないですか。 例えば市場に出すアプリを組んでいるプロ?の方でも こういった力技で解決するのでしょうか。 >>480 あぁーなるほど。MouseMoveですか。盲点でした。 座標比較が頻繁に行われることに違いはありませんが、 timerよりかは遥かに良い方法ですね。 以下、つぶやきです。 1)の方法でも、OSは定期的に MouseEnter しているのか 判定しているのでしょうかね。それなら1)も2)も処理量は 大差ないかもしれません。が、仮定の話なので無駄ですね。
482 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 21:19:33 ] マウスポインタがある領域に入ったってイベントが欲しいわけでしょ 正しい実装じゃん 力技じゃない
483 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 21:21:40 ] タイマで処理するにしてもそれぐらいカスみたいなコスト
484 名前:478 mailto:sage [2010/03/28(日) 21:21:56 ] >>482 なるほど、考えを改めます。 ありがとうございました。
485 名前:デフォルトの名無しさん mailto:sage [2010/03/29(月) 21:53:38 ] Blendでコードビハインドべったりで書いていくと簡単だったりするんだよなwpf 昔のVBと大して変わんないってくらい
486 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 08:02:13 ] macで使われてるGUIのボタンってなんっていいましたっけ・・・ あれを再現は可能ですか?
487 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 09:03:01 ] Dockか? そりゃWPFはまさにああいうことをやるためのフレームワークだから
488 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 10:29:01 ] aquaのことじゃないの