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/
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のことじゃないの
489 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 13:00:22 ] ボタンの見栄えを自由にするなんてのはお手のもんでしょうな。 別にFormで出来なかったわけでもないけど。
490 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 21:11:48 ] WPF Themesにいろいろ綺麗なテーマがあるよ Macの真似みたいな貧乏臭いことはやめてくれ
491 名前:デフォルトの名無しさん [2010/03/31(水) 22:27:14 ] WPFで3Dグラフィックの仕事をやることになったんだが、皆目見当がつきません。 何か良い本は無いでしょうか。
492 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 22:46:11 ] まずは、Essential WPF。後は英語でググレ。
493 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 23:18:18 ] そんなもん読んでるに決まってるだろ。 他に無いでしょうか。
494 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 23:28:13 ] だれか何かを挙げる→そんなもん読んでるに決まってるだろ→ だれか何かを挙げる→そんなもん読んでるに決まってるだろ→ だれか何かを挙げる→そんなもん読んでるに決まってるだろ→(ry まぁ、挙げるだけ無駄ってことだなw
495 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 23:45:33 ] 返答してる人が同一人物である保証すらないしな。
496 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 23:51:02 ] idほしいお・・・
497 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 00:12:50 ] 3D PROGRAMMING FOR WINDOWS
498 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 07:31:59 ] WPF 3Dプログラミング―誰でも簡単に3Dゲームやツールが作れる最新技術!
499 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 11:24:40 ] WPFによる3Dプログラミングの極意 (民明書房)
500 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 14:45:12 ] 質問かいてたら答えが見つかったけどもったいないのカキコ HTMLのMarquee的な動作をするテキストブロックを作ろうと <Canvas> <TextBlock 〜> </Canvas> としておいて、 下記のように添付プロパティのCanvas.Leftをアニメーションさせています。 <Storyboard x:Key="test" RepeatBehavior="Forever"> <DoubleAnimation From="1" To="100" Duration="0:0:10" Storyboard.TargetName="textBlock1" Storyboard.TargetProperty="(Canvas.Left)"/> <!-- ←なんで括弧が必要? --> </Storyboard> 括弧がなぜ必要なのか教えてください。 ひょっとして拡張部分のそういう仕様ですか? ↓ 仕様でした><
501 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 21:45:22 ] GJ
502 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 22:58:08 ] Canvas canvas1 Ellipse elli1, elli2 ああるとして canvas1.Children.Add(elli1); canvas1.Children.Add(elli2); とした後に elli2 だけ Clear することってどうやれば良いんですか?
503 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 23:01:24 ] Remove
504 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 23:07:15 ] >>503 あ・・・ありがとう。 なんで見つからなかったんだろう。
505 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 04:26:05 ] >>491 Practical WPF Graphics Programming この本なんかはどう?
506 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 07:52:30 ] >505 ttp://www.free-ebooks-download.org/free-ebook/dotnet/Framework/practical-wpf-graphics-programming.php なんかあったがなんかいろいろばら撒く気満載泣きガス・・・ とりあえずダウンロードはできた。中身もあってるっぽいが・・・
507 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 09:09:51 ] 最近Freeに影響されたかバラ撒くとこ増えたねえ。 それとも欧米では結構昔からこういうことするとこ多かったのかな?
508 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 09:55:54 ] ローマ字変数名しか使えない俺には無用
509 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 10:16:55 ] 少なくともWPFに関する本はほぼすべてネットで拾えてしまうからなあ。 実に由々しき事態だ。(棒)
510 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 10:19:12 ] ちょっと目を通してみたけどWPFの本というよりグラフィックスの基礎の本だなあ 普通は可視化にOpenGLとか使うところをたまたまWPF使ってるだけな感じ
511 名前:デフォルトの名無しさん [2010/04/04(日) 22:14:21 ] ttp://www.atmarkit.co.jp/fdotnet/dotnettips/717excelfile/excelfile.html こちらを参考にしてWPFにExcelファイルを読み込まれるまではできたのですが、 これをWPFコントロールにそのまま表示させることって出来ないのでしょうか。 セルの1つひとつの情報を取ることはできるので Gridをひいてセルを写すことは可能なのですが、 Excelの表をそのままWPFのwindowに表示させたいのです。 それとも、セルから全部コピーしないとダメなのでしょうか?
512 名前:デフォルトの名無しさん mailto:sage [2010/04/05(月) 01:03:51 ] >WPFにExcelファイルを読み込まれる たぶんもうちょっと理解してから弄った方がいい(というかformsで構築したほうがいいだろ) こういう方法はあるみたい social.msdn.microsoft.com/Forums/ja-JP/wpfja/thread/b0612ddb-2390-4458-bb3d-86c904509d82
513 名前:デフォルトの名無しさん mailto:sage [2010/04/05(月) 02:52:05 ] >>512 ありがとうございます。 その質問+解答も見ていましたが やはりその方法しかないみたいですね。 まずはWinFormで作ってみてから WPFに応用してみます。 ※Animationを使いたいので、WPFのが良いんです。
514 名前:デフォルトの名無しさん [2010/04/06(火) 00:11:32 ] BeginAnimationって、 「さーアニメってこい!」 ってゴーサイン出すだけじゃん? FromからToまで行き終わったときに 何か処理して欲しい場合って どうすれば良いの? FinishedAnimationとかあれば良いのに。
515 名前:デフォルトの名無しさん mailto:sage [2010/04/07(水) 13:49:44 ] completedイベントなかったっけ
516 名前:デフォルトの名無しさん mailto:sage [2010/04/08(木) 00:05:35 ] もうexpression4が出るのか・・・まあ出るわな なにが変わるのかわかる資料が全然見当たんないなー
517 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 01:02:24 ] まだ出ないんじゃない?
518 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 01:05:14 ] 無料あぷでは確定です
519 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 00:12:37 ] Focus()して成功する条件って何でしょう? キーボードフォーカスをそのエレメントに移動できなければfalse、ってのは分かるのですが そもそもキーボードフォーカスを移動できる条件って何でしょうか?
520 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 06:20:25 ] ウインドウの初期化が終わる前にコントロール関連のメソッドを呼ぶなと
521 名前:514 mailto:sage [2010/04/11(日) 15:59:49 ] >>515 おそくなりましたが ありがとうございました。
522 名前:デフォルトの名無しさん mailto:sage [2010/04/11(日) 21:49:49 ] >>520 CheckBoxのIsCheckedをTrueにしてると、初期化中にチェックイベントが実行されたりするあれ?
523 名前:デフォルトの名無しさん mailto:sage [2010/04/13(火) 17:17:58 ] Expression BlendとかWPFで作られたソフトが起動しなくなった
524 名前:デフォルトの名無しさん mailto:sage [2010/04/13(火) 17:33:22 ] 環境壊れてるんじゃないか
525 名前:デフォルトの名無しさん [2010/04/13(火) 21:48:30 ] 趣味でWPFで3Dモデリングツールを作ろうとしてるんだけど、OpenGLとかDirectXでやった方が幸せかな? ざっくりした質問で悪いけど、皆さんWPFの3Dって総合的にどう評価してます?
526 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 05:48:41 ] >>525 「wpf direct3d 制約」でググるいいよ。 正直、WPFの3Dっておまけ機能だと思ってるけど。
527 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 10:17:47 ] UIはWPFで3DビューはD3DImage+MDX/SlimDXくらいが現実的なんじゃね
528 名前:デフォルトの名無しさん [2010/04/14(水) 13:52:27 ] msdn.microsoft.com/ja-jp/windows/cc811510.aspx XAMLなんて誰が考えたんだ? こんなソース読む気も書く気もしねー
529 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 13:58:43 ] めちゃめちゃ頭のいい人 ただ、凡人の限界を知らなかったらしい
530 名前:デフォルトの名無しさん [2010/04/14(水) 14:02:34 ] 100円の和菓子1つを10万円の箱に入れてるようなもんだな
531 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 15:10:29 ] ツールの使用を前提にしてるよなぁ〜
532 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 15:45:31 ] ワロタ Xamlコードを出力するツールをまず自作しなきゃな。 blend?高いしイラネ
533 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 17:04:29 ] コードで計算してジオメトリ作ってxamlで書き出すんだよ? まあなんとかいうモデリングソフトで書いてxaml出力してもいいけどね
534 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 18:41:57 ] >>528 > 2 次元から抜け出そう 心にぐさりと来ました
535 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 19:02:31 ] まだ入り込めてもいないのに
536 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 20:04:03 ] まあ普通はツールで出力するだろ そのためのXMLだ
537 名前:デフォルトの名無しさん [2010/04/14(水) 20:15:00 ] WPFの3Dって、モデリングツール(DirectX)で画像処理ー>XAMLフォーマットで出力という使い方を想定してんじゃねえの? わざわざ手かせ足かせを嵌めて走る意味はなかろう。
538 名前:デフォルトの名無しさん [2010/04/14(水) 20:59:43 ] Visual Studio 2010 + WPF4.0 を使っている方は少ないと思いますが、 「これが原因じゃない?」程度でも構いませんので 何か思い当たることがありましたら、お願いします。 ■質問内容 以下の2つの方法で、挙動がことなります。 1) xmalで Button を配置して Click イベントを与えたもの 2) csファイルに Button b = new Button(); b.Click += new RoutedEventHandler(hoge); として Click イベントを与えたもの ■挙動 1) Win7+タッチ対応ディスプレイにて、タッチでも Click が反応します 2) Win7+タッチ対応ディスプレイにて、タッチでは Click が反応しません ButtonをManipulationで操作したいため、TouchUp などは使えません。 ボタンの Click イベントを 2) の方法で生成した Button に対して適用したい のですが、どのようにしたら良いかアイデアが思いつく方、お願いいたします。
539 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 23:46:11 ] MouseMoveとか他のイベント捕まえてみたら?
540 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 00:01:33 ] MouseMoveですか? ManipulationではなくMouseMoveで 操作しろということでしょうか?
541 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 07:51:03 ] WPFってなんでこんなもっさりしてんの? Direct3Dとか少ししか触ってないので見当違いなこと言ってたらすまん。 1.UIElementツリー 2.Direct3DのVertexBufferとかMesh 3.実際の出力 WPFは主に1の画面要素自体とイベントなどのハンドリング、状態通知でごにょごにょとなどとそれらを2に反映させるものだと思ってるんだが、 1自体が重いのか1から2への変換などが重いのか? 2,3とかは高速なんだろうし、現状では削りようのないところなんだろうけれど。 たとえば画面のボタンの背景色を変えた場合は内部でどんな動作になるんざんしょ。
542 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 08:03:57 ] 普通に1だろ ちなみに1と2の間にはもう一つ層がある Direct3DをGUI向けにラップしたネイティブコードのライブラリを使ってる
543 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 10:08:43 ] もっさりっていうならまずスペック更科よ
544 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 21:06:10 ] ゲーム作成にWPFを使いたいんですが、文献が少なくて困ってます。 オススメの文献とかありませんか?
545 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 21:33:45 ] ゲームってジャンルくらい書きなよ
546 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 21:40:07 ] WPFの文献だと日本語のはエッセンシャルWPFぐらいしかないんだっけかね?
547 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 21:40:59 ] 失礼しました。2Dで、ベクター画像を用いた格闘ゲームです。 ですが、格闘ゲームに限らず、 WPFでのゲームプログラミングの情報自体が見つけられなかったので、 ほかのジャンルの情報でも充分助かります。
548 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 21:47:43 ] ギャルゲーくらいですよこれ。 ギャルゲーでビデオカード要求とかあり得ないんでギャルゲーでは主流になってもいいと思います。
549 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 21:50:22 ] WPFは基本的にビデオカード要求だけど
550 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 21:58:28 ] >>547 「エッセンシャル WPF」 「XAML プログラミング WPFアプリケーションの概要と開発」 このスレではこの2冊がそこそこ評判が良かった。 もし英語に抵抗が無ければ出版数が多い洋書で探した方が良いかと。 個人的には書籍じゃないけどMSDNのサンプルが一番役に立ったよ。 WPFでゲームを作ってる人は少ないだろうなあ。 DirectXかXNAを使った方が良いと思うんだけど。
551 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 22:29:22 ] google booksでwpf検索してみたら だいたい用は足りると思う
552 名前:デフォルトの名無しさん [2010/04/16(金) 00:11:31 ] ボタンの中に画像を置く ということをXMALではなくC#のコードから実現したいです。 ネタとしては、ここの質問のC#版です。 質問内容を理解しないでXAMLの話をする回答者が多いみたいですが。 ttp://bbs.wankuma.com/index.cgi?mode=al2&namber=38523&KLOG=66 プログラム内で動的にButtonを配置したいため、 XAMLではなくC#から生成したいのです。 画像の情報も動的に取得するので、画像もC#で生成したいです。 (実際には、画像のパスを動的に取得し、そのパスからImageを生成) ググってもXAMLの話ばかりです。よろしくお願いします。
553 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 00:23:24 ] Imageを持ったButtonのUserControlをXAMLで書いておいて、コード内で生成
554 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 01:45:52 ] >ということをXMALではなくC#のコードから実現したいです。 そうですか >質問内容を理解しないでXAMLの話をする回答者が多いみたいですが。 そうですか >XAMLではなくC#から生成したいのです。 そうですか >画像の情報も動的に取得するので、画像もC#で生成したいです。 そうですか >ググってもXAMLの話ばかりです。よろしくお願いします。 なにをよろしくですか
555 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 01:48:33 ] ちなみに 38526の回答以外のなにものでもないよ 質問内容を理解しないんじゃなくて、回答読んでも理解できない脳みそを恨め
556 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 02:02:05 ] >>554 中身の無いレスだな お前みたいなのは来なくて良いよ
557 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 02:11:34 ] >>556 これがどれだけ程度の低い質問かわかんないってことは本人だろうな・・・
558 名前:552 mailto:sage [2010/04/16(金) 02:19:45 ] >>553 ありがとうございます。 UserControlなるものを使ったことが無いので 早速調べてみます。 >>554-555 38526がコードの話をしていることは分かっています。 >XAMLの話をする回答者が多いみたいですが。 と書いているのは、それを示しています。 38526の回等と>>553 氏のレスが同値だと分かるレスを していただき、ありがとうございます。 >>556 555のレスから得たことがありますので大丈夫です。 >>557 552は私です。 UserControlの話など、もっと汎用的な調べ方をすれば 沢山情報が得られるのかもしれませんが、具体的な事例が あまりないというのは、それだけ壊滅的なほどに初歩的ということなのですね。 もっと勉強します。ありがとうございました。
559 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 02:20:54 ] >>557 は?程度の低さは関係ないだろ どれだけ馬鹿なんだよ
560 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 02:21:32 ] >>558 違うよ ButtonオブジェクトのContentプロパティにImageオブジェクト突っ込めばいいだけ
561 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 02:22:47 ] >>559 はいはい お前が気の済むように回答してやれよ
562 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 02:29:42 ] >>561 >はいはい え?マジで分かってないの? こりゃ重症だな。関わらないでおくよ。 >お前が気の済むように回答してやれよ うわーまいったねこりゃ。 既に解答が出ているのに更に回答しろと? 別の機会に謹んで回答させていただきますw
563 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 02:32:36 ] >>562 中身の無いレスだな 以下略
564 名前:558 mailto:sage [2010/04/16(金) 02:55:46 ] >>560 お恥ずかしいです。ありがとうございます。 質問をする前にスレを見返していましたが、 人を馬鹿にするレスしかしない人が多い中、 あきれずに回答していただきありがとうございました。
565 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 06:49:02 ] 横着せずにWPF入門書を最初から読んでいけばコントロールの追加方法なんて最初にかいてある。 なんで未知の言語なのにチュートリアルすっとばそうとするかな。 別にすっとばしてもいいけどひとりで悩んでくれよ。ひとのせいにすんな。
566 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 07:26:49 ] これだからIDの無い板は。
567 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 07:51:10 ] >>565 おおむね同意だが >ひとのせいにすんな。 これってどこを見て感じたことなんだ? なぜこう感じたのか、俺には全く分からんのだが。
568 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 11:50:17 ] blend4のベータ出たな www.microsoft.com/expression/products/Blend4RC_Features.aspx めぼしい機能追加はピクセルシェーダくらいじゃないのかな あとはギャラリーで公開してくれれば済むような追加しかないような
569 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 11:59:39 ] ああでも3->4のアップグレードは全員無料なのか
570 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 12:02:40 ] スレ伸びてるから WinSDK 7.1 でも出たのかと思ったら・・・ >>552 >質問内容を理解しないでXAMLの話をする回答者が多いみたいですが。 XAML ←→ C#コード なんか、ボタンやイメージどうこう以前に WPF の基礎だから。 自分の無知を棚上げに「理解しないで」などと回答者をアホ扱いするから荒れる訳。 「M女史の遺したもの」を一回は読んでおくといいよ。 public Window1() { InitializeComponent(); this.Content = new Button { Content = new Image { Source = new BitmapImage(new Uri("c:\\image\\test.bmp", UriKind.Absolute)) } }; }
571 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 14:07:51 ] 「.netなんて池沼にもできる障碍者用言語だろ余裕だよ。入門書?そんなもん小学生にでも読ませとけ」 →「はー?なんでうごかねーんだよこの欠陥言語。おいくずどもどうなってるか説明しろ!」 ようするにこういう思考だろ。 「なんでおれがこんな低レベル言語にてこずらなきゃならないんだよ」みたいな 雰囲気ぷんぷんさせながら質問するとか鼻で笑うわ
572 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 22:21:44 ] > ボタンの中に画像を置く > ということをXMALではなくC#のコードから実現したいです。 キチ○イwww
573 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 00:01:45 ] >>570 へーこんな書き方できるんだ はじめて知った。 >>571 お前みたいに"決め付ける"人って 大抵・・・
574 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 09:50:13 ] WPFで「コードから動的にボタンを配置したい」ということ自体めったに無いよね WinFormsでそうやってたようなことはアイテムテンプレート使えばだいたいXAMLだけで完結する
575 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 13:18:15 ] アイテムテンプレートでできるけどある条件の時はこっちとかするのも含めてコードで書いちゃった方が好きかなー
576 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 14:52:46 ] XAMLって「データ言語」っていうんだっけ。 プロパティの指定はXAMLコードから判るが、メンバの設定は何度読んでも混乱する。
577 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 22:05:41 ] Rectangleを20個ほど一気にAnimationさせると Core2 E7400 + GeForce9400GT でも若干ガクガクするんだけど WPFってそんなもんなの? それとも、うまい書き方があるの? RectangleはXAMLで配置して、AnimationはC#内で書いてるんだけど。
578 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 22:18:56 ] 描画だけでよければDrawingVisual使ってみたら 間違ってもDrawingContextは使わないように
579 名前:577 mailto:sage [2010/04/19(月) 23:12:18 ] >>578 ありがとう、調べてみた。 これってアニメーションできないように思うんだけど そんなことないの? イベントとかは使わないから描画だけといえばそうなんだけど。 20個(できればそれ以上)のRectangle、長い長方形をぐるぐる回したいんだよね。 風車がたくさん立っているイメージ。
580 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 00:46:03 ] オブジェクトの重なりが多いほど重くなる
581 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 00:47:39 ] CPUでピクセルの合成してるんだっけ? そういうのはGPUが得意なんだがな・・・
582 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 00:49:14 ] WPFのウインドウ内部は全部directxで書いてるって何回書いたらわかるんだよ けちらずエッセンシャル買え
583 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 01:35:21 ] >>579 その程度のアニメーションなら普通にStoryboardじゃいかんの?
584 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 12:27:39 ] 描画じゃなくてレイアウトとか入力とか高次の部分で引っかかってるんだろ RenderTransform使ってみるとか
585 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 11:11:04 ] みんなRelayCommandとDelegateCommandのどちらを使ってる?
586 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 12:11:56 ] 使うも何も両方ともただのサンプルでしょ 必要に応じて自分で作るんだよ
587 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 12:19:10 ] 他人に説明するとき、アレと一緒で済むから楽じゃん。
588 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 15:06:02 ] www.codeproject.com/KB/WPF/NitoMVVMCommands.aspx?msg=3132936 面白い比較の記事を見つけた。 こういうのを探していたんだ。 終わりの方の比較のところね。
589 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 21:53:09 ] というか RelayCommand でも DelegateCommand でもどっちでもいいけど 標準で用意しときゃいいのにとはおもったわ。
590 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 22:00:52 ] だってMとVMはWPFと関係ないじゃん
591 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 22:26:42 ] 依存プロパティではCLRラッパーが使えて、添付プロパティでは 使えないのはどうして? MSDNでは「WPF の添付プロパティには、get および set のアクセスを容易にするための 標準的な CLR "ラッパー" メソッドはありません。 これは、添付プロパティが設定されたインスタンスの CLR 名前空間に、 その添付プロパティが属しているとは限らないからです。」 って書いてあったけど。つまり・・・どういうことだってばよ
592 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 22:33:09 ] 自分自身のプロパティじゃなくて他のオブジェクトに設定するプロパティだから プロパティ構文じゃ書けないよってこと
593 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 22:33:59 ] たとえばCanvasのLeft添付プロパティはCavnasクラスに定義されたプロパティだけど そのプロパティの値を実際に持つのはCanvasの中に追加する他のクラスのインスタンスだろ CLRプロパティではプロパティが定義されてるクラスとその値を持つインスタンスのクラスは必ず一致するけど 添付プロパティでは一致しないからCLRプロパティでは表現できない
594 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 22:39:53 ] でも、アクセスする構文ってCanvas.Leftみたいに[クラス名].[プロパティ名]でしょ。 ラッパーを静的にする必要はあるけど、コードからでも普通に使えそうだけどなあ。
595 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 22:42:44 ] だからCanvas.SetLeftメソッドがあるだろ
596 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 22:44:03 ] 「どのオブジェクトの」Canvas.Leftなのよ? ということになって結局Canvas.GetLeft(obj)で十全だろ、分かりやすいし
597 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 22:48:49 ] 設定を行うインスタンスを知る必要がある(引数として送る)からラッパーでは出来ないってことか なっとく
598 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 23:04:20 ] Obj.Canvas.Left とかならまだわかる
599 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 23:06:01 ] Obj[Canvas.Left]だな
600 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 23:15:27 ] DependencyObjectにthis[DependencyProperty]を定義すると obj[Canvas.LeftProperty]にせざるを得ないからなぁ objectでしか扱えないし それ以上は言語の方に手を入れなきゃなんなくなる いや、dynamicでなんとかなる・・・か? しないで良いけど
601 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 23:20:15 ] WPF は結局ユーザーの要求するパフォーマンスに達しなかったね。
602 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 23:50:23 ] 自分が使いこなせないからってひとも同じだと思う人って…
603 名前:デフォルトの名無しさん mailto:sage [2010/04/22(木) 02:50:17 ] BlendとかXamlPadみたいにリアルタイムでXamlの内容を表示するのってどうやるの?
604 名前:デフォルトの名無しさん mailto:sage [2010/04/22(木) 06:57:38 ] >>603 これがおのぞみのかな? XamlPadを作ってみた。 pro.art55.jp/?eid=863237
605 名前:デフォルトの名無しさん mailto:sage [2010/04/22(木) 07:42:46 ] >604 それリアルタイムでの編集内容反映は入ってないよね?
606 名前:デフォルトの名無しさん mailto:sage [2010/04/22(木) 21:28:40 ] >>604 おー、意外にシンプルでびっくり。さんくす >>605 更新タイミングは工夫次第でいけそう。
607 名前:デフォルトの名無しさん mailto:sage [2010/04/22(木) 23:02:07 ] テキスト変更イベントのたんびにパースするとかね。
608 名前:デフォルトの名無しさん mailto:sage [2010/04/22(木) 23:26:42 ] あるWindow window1 があって、 window1の中のある領域に X を配置して、 その X の中を右方向にアニメーションさせた場合、 X の右端がXの左端にくっついたように ずっと X がループされてスライドするアニメーションって どうやったらできますか? ここで X とは、CanvasでもPageでも何でもよいので、 ボタンとかラジオボタンとかが配置できる領域のことです。 説明が難しいのですが、例えば window1 に電車を描き、 電車の窓から X (外の景色) を眺めているとし、外の景色が ずっとスライドしていく感じです。 このとき、X に動的に「電柱」の絵を置いたら、ループ絵として 次に現れる X にも「電柱」が存在するように見せたいです。
609 名前:デフォルトの名無しさん mailto:sage [2010/04/22(木) 23:36:59 ] はじっこにきたら座標もどせばいいだけじゃないの?
610 名前:デフォルトの名無しさん mailto:sage [2010/04/22(木) 23:40:12 ] 一番手抜きだと1枚の画像を座標変えて常に2回表示すればいいだけだろ
611 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 00:01:30 ] >>609 ありがとうございます。ですが、それだと絵が切れてしまいます。 窓の大きさが X と同じで、動かす絵が X の場合、 X を右にスライドさせると、Xの左側が空白になります。 X1 X2 と Xを並べて、X2がXの領域からはずれたら X1 の左に 配置するようにすれば実現できますが、そうすると X1 と X2 が 同じものになりません。X1に電柱が追加されたらX2にも追加、となると 処理が重たくなりますので・・・。 >>610 ありがとうございます。 そちらの方法で、チカチカさせない方法があるのでしょうか??
612 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 00:08:20 ] >>611 まあ>>610 の方法はゲームの一般的なループの作り方なだけで そのまんまはだめかもしれないけどねw なるべく再利用した方がいいかと思って>>610 として書いたけど ちらついたりするならとりあえずは1つのファイルを内部で2つ同じものを作って とかはだめ?
613 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 00:11:20 ] それでもうまくいかないならとりあえずは読み込む画像その物を 同じ物を2枚並べた横長で作っておいて座標で調整するか
614 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 00:13:10 ] expressionの4にMVVMのプロジェクトテンプレートが入るみたいね これが標準のフレームワークってことになんのかしら
615 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 00:14:55 ] >>612-613 やはり冗長な部分を作って 必要な部分だけ見せるのが手っ取り早いみたいですね。 なるべくなら再利用したいのですが、ひとまず↑でやってみます。 では、失礼します。
616 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 00:25:33 ] >>615 画像をTile指定で表示してやれば自動的に繰り返しになる。 あとはViewportを動かしてやればいい。 ttp://www7a.biglobe.ne.jp/~fbsoft/test/miku1.cgi
617 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 00:31:51 ] IEはソース表示が出来ないようなのでXAMLのソースも張っとく。 ttp://codepad.org/jGnPpTxR
618 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 00:43:03 ] >>616-617 おぉ、このようなものもあるのですね。 寝る前に見て良かったです。 ざざっと調べてみたのですが、こちらの方法では 画像を複製表示することはできるようですが、 Buttonなどが配置されたPage(を配置したFrameなど)を 複製表示させることはできないみたいですね。 (調べ方が甘かったらすみません) 教えていただいた TileMode で絵を複製して、 Buttonなどは自分で複数配置する方法も検討してみます。
619 名前:618 mailto:sage [2010/04/23(金) 00:55:24 ] 度々書き込み失礼します。 TileMode から色々と調べてみましたが、 Canvas Neme="canvas1" にボタンなどを配置し、 <Rectangle ... > <Rectangle.Fill> <VirualBrush Visual={Binling element=canvas1}" /> </Rectangle.Fill> </Rectangle> とすると、一応 Button なども複製されますね。 しかし(当然ですが)複製された絵の Button は操作できませんね。 残念です。
620 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 01:19:32 ] スライドしてる状態でボタンなどを操作する必要も無いだろうから、 動いてないときは普通に表示して、 スライド中だけVirtualBrushに入れ替えればいいんじゃない。
621 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 01:36:50 ] スライドといってもゆっくりのものでして 移動中でもクリックに反応して欲しいんです。
622 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 02:09:47 ] その手のは一枚絵としてスクロールさせるというよりも同サイズでスライスした要素みたいに考えて クリッピングと組み合わせて実現するのが常套じゃないのかな
623 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 04:11:30 ] プログラムなんてプリミティブなアイデアの集合体なんだから 自分ですこしは考えなよ
624 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 06:47:11 ] >>623 そういうことは2ch言ってもしかたないと思うんだぜ
625 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 07:47:11 ] >>623 >>619 では「考えている」認定されないのか。 2chって厳しいインターネットなんだなw
626 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 14:20:14 ] 二度手間でもエレガントじゃなくても冗長でも、数学的な問題じゃない限り 自分の望むことをコードにすることはできるだろう、諦める=考えてない、ってことさ
627 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 18:38:39 ] richtextboxで行間を指定する方法はない? LineHightやMarginを試してみても変わらなかった
628 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 18:39:55 ] nyuryuが言っていたが、WPFでもすべての部分にDirectXを使っているわけではないらしい。
629 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 18:49:52 ] >>627 WPFじゃなくてWinFormのでいいんだよな? LineHeightってどのクラスのプロパティ? 行間ってのは段落間じゃない行間のことでOK? まあEM_SETPARAFORMATとPARAFORMAT2使うことになると思う >>628 にゅりゅ ってエロい響きだな
630 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 19:13:55 ] >627 WPFでフォントコントロールったら、 FormattedText クラスじゃないんか? ttp://msdn.microsoft.com/ja-jp/library/system.windows.media.formattedtext%28v=VS.80%29.aspx
631 名前:629 mailto:sage [2010/04/23(金) 19:16:34 ] あ、ここWPFスレだった C#スレと勘違いしてた、ごめん
632 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 19:22:45 ] FlowDocument全体の行間ならFlowDocument.LineHeightで問題ないと思うけど
633 名前:デフォルトの名無しさん mailto:sage [2010/04/23(金) 22:08:51 ] >>627 WPFの方
634 名前:デフォルトの名無しさん mailto:sage [2010/04/24(土) 12:07:11 ] すまん。 自己解決した。 トークンごとに読み取ってそのトークンをパラグラフを追加するときに\r\nを無視しないのが原因だったらしい。 xamlを調べて初めて原因が分かった 間違い <flowdocument> <paragarh>aaaa<run>(見えないが\r)</run><run>(見えないが\n)</run></paragrah> </flowdoument> 正しくは <flowdocument> <paragarh><run>aaaa</run></paragrah> </flowdoument>
635 名前:デフォルトの名無しさん mailto:sage [2010/04/24(土) 14:56:26 ] Paragraph p = richtextbox.CaretPostion.Paragraph; TextRange range = new TextRange(p.ContentStart, p.ContentEnd); this.para = new Paragraph(); this.para.Margin = new Thickness(0); this.Spilitter.Parse(range.Text); this.doc.Blocks.InsertBefore(p, this.para); this.doc.Blocks.Remove(p); パラグラフの置き換えを行うとキャレットがパラグラフの一番最後に移動してしまう。これを防ぐ方法はない?あらかじめCaretPostionを覚えておいて、置き換えた後で戻してもダメだった。
636 名前:デフォルトの名無しさん mailto:sage [2010/04/24(土) 16:15:42 ] >>635 var curP = richTextBox.CaretPosition.Paragraph; var offset = curP.ContentStart.GetOffsetToPosition(richTextBox.CaretPosition); var newP = new Paragraph(); newP.Inlines.Add("New Paragraph"); richTextBox.Document.Blocks.InsertBefore(curP, newP); richTextBox.Document.Blocks.Remove(curP); richTextBox.CaretPosition = newP.ContentStart.GetPositionAtOffset(offset) ?? newP.ContentEnd; これじゃダメなん?
637 名前:デフォルトの名無しさん mailto:sage [2010/04/24(土) 21:42:03 ] >>636 それだとだめだ。 aaa (aaaの先頭でzを入力) zaaa (連続で入力すると、zazaaになってしまう) なんでWPFってこんなに面倒なの? 文字単位で選択することもできないし、キャレットを文字単位で動かすことすらできない。 開発者は馬鹿なの?
638 名前:デフォルトの名無しさん mailto:sage [2010/04/24(土) 22:10:32 ] >>637 何がしたいのか分からないんだけど。 文字単位で選択するなら: richTextBox.Selection.Select(richTextBox.CaretPosition, richTextBox.CaretPosition.GetPositionAtOffset(10)); キャレットを次の文字に移動するなら: richTextBox.CaretPosition = richTextBox.CaretPosition.GetNextInsertionPosition(LogicalDirection.Forward); TextPointer クラスと RichTextBox クラスについて、もうちょっと調べたら?
639 名前:デフォルトの名無しさん mailto:sage [2010/04/24(土) 22:33:53 ] >>638 目がシパシパしたwww
640 名前:デフォルトの名無しさん mailto:sage [2010/04/25(日) 02:37:57 ] >>638 パラグラフが aaa となっているときに bbb aaa とすると、aaaを削除するとキャレットがaaaの先頭にあるにもかかわらず、bbbの後ろに移動してしまうのをどうにかして防ぎたい。 TextPointerについても調べたんだが、画面に表示されている文字単位で位置を取得するメソッドはなぜかなかった。
641 名前:デフォルトの名無しさん mailto:sage [2010/04/25(日) 09:54:47 ] >>640 >aaaを削除すると は >>635 の this.doc.Blocks.Remove(p);に当たるのかな 言ってることがあんまよくわからないけど、空のパラグラフを置いといてその先頭にキャレット置くというのがやりたいんじゃないの? ソースはそうなってないだろ
642 名前:デフォルトの名無しさん mailto:sage [2010/04/25(日) 10:24:40 ] >>641 >言ってることがあんまよくわからないけど、空のパラグラフを置いといてその先頭にキャレット置くというのがやりたいんじゃないの? それじゃなくて、パラグラフを置き換えてもキャレットの位置をそのまま保つということがやりたい
643 名前:デフォルトの名無しさん mailto:sage [2010/04/25(日) 23:47:54 ] ScrollViewerのマウスホイールによるスクロールを無効化する方法はありますか?
644 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 00:03:42 ] PreviewMouseWheelでHandledしちゃうとか
645 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 00:52:19 ] >>644 e.Handle = trueでうまくいきました ありがとうございます
646 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 03:26:57 ] こんな感じでボタンを並べるにはどうすればいいんでしょうか? uproda.2ch-library.com/239369drL/lib239369.png 平行四辺形とかでしたらなんとかなるんですが・・・
647 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 04:25:39 ] 表示部分にしかあたり判定がないんだから同じpanelに全部かさねて表示だけかえればいいじゃない そんな形なら標準ボタンを使うわけでもないんでしょ
648 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 06:27:53 ] ufcpp.net/study/dotnet/wpf_uielement.html 傾斜とかもできるので上辺もしくは下辺を短くするとか できるかなあと思ったんですが無理ですかね?
649 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 07:04:59 ] Expression Blend で簡単に星形のボタンとか作れるみたいだね。
650 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 07:09:59 ] ジオメトリの作り方がわからないから四角の変形で作りたいっていうなら アフィン変換使いなよ自分で計算してな
651 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 08:48:31 ] Blend使えればベストだけどボタンぐらいならXAMLだけでなんとかなる。 ContorolTemplateを書けばいいだけでサンプルも結構転がってるから。 あとエッセンシャルWPF読んどけ
652 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 09:41:08 ] >>648 それは線形変換で表現できないから無理 高校数学C参照
653 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 13:08:53 ] 文字単位で選択するメソッドがないので作ってみた。だが、どうも、遅いような気がする。これより早い方法があったら教えてほしい。 TextPointer getPostionAtCharacters(int offset) { for (int i = offset; this.Document.ContentStart.GetPositionAtOffset(i) != this.Document.ContentEnd; i++) { TextRange range = new TextRange(this.Document.ContentStart, this.Document.ContentStart.GetPositionAtOffset(i)); if (range.Text.Length == offset) return range.End; } return null; }
654 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 15:05:53 ] >>649 >>650 >>651 ありがとうございます。 しかしここまでGUIをいろいろ変えやすいとなるとデザインセンスないと きついですね・・・
655 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 18:47:52 ] 宇宙仮面のHP エラーでまくり
656 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 19:03:56 ] RadioButtonをC#からCheckする方法ありますか?
657 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 19:07:39 ] あるよ
658 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 20:20:09 ] >>656 XAML側でコントロールに名前(Name="hoge")とかやれば C#側から従来のWinFormのようにいじり放題
659 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 20:38:00 ] でも実際にはバインディングオブジェクトのプロパティの方を操作するよね
660 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 20:41:36 ] WPFは要素にName付けたら負け
661 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 20:46:27 ] それなんてみすりーど。
662 名前:656 mailto:sage [2010/04/26(月) 21:22:55 ] >>657-661 >>658 さんの方法以外はどのように書けばいいんでしょうか?
663 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 21:38:08 ] 気にせず名前付けたらいい
664 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 00:08:38 ] >>660 コードビハインド使ったら負け
665 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 00:53:01 ] 真の勝者はXAMLを使わない
666 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 00:54:50 ] blend+コードビハインド 都会派はこれ
667 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 00:55:03 ] ソフトなんか他人に作らせるよね真の勝者なら。
668 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 00:57:01 ] こだわりのソフト作成なら至福だろ 作らされてるなら敗者
669 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 01:27:42 ] WPFの場合 プログラマーはバインド関連をマスター デザイナーはXAML関連をマスター そんなところですかね?
670 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 02:18:51 ] BeginAnimationのタイミングが異なっても、 アニメの動きのタイミングを同期させる方法ってありますか。
671 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 04:59:26 ] あるよ
672 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 08:28:30 ] INotifyPropertyChangedから依存プロパティへのバインドが機能したりしなかったりする わけがわからない
673 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 09:00:47 ] >>669 正解じゃない。 プログラマーはバインド関連とXAML関連をマスター 。
674 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 22:14:00 ] XAML自体はマスターするには.NETプログラミングに習熟してないといけないからデザイナには酷 デザイナーはExpression BlendとXAMLの基礎事項をマスター
675 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 00:05:19 ] だな。MSはデザイナがXAMLを触らなくても大丈夫なようにツールを揃えた方が良いだろね。
676 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 00:08:47 ] WPFのバインディングは勉強すればするほど魅力的なんだよな C#のコントロールにも一応項目あったけどここまで使えたっけ?
677 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 00:15:35 ] デザイナが実際には動かさないスタイルを自由奔放に作成して 上司は「デザイナの作った物がそのまま動く!素晴らしい!」と言い出して 結局はプログラマが地獄を見る。そういう代物だろ?
678 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 00:17:38 ] うーん まあ前ほどは地獄をみないんじゃないかな バインディングが強力なのでいい感じだよ
679 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 00:17:43 ] そこは誤解がないようにちゃんと主張しろよ
680 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 00:18:51 ] .NET 4.0 では NumericUpDown コントロールはサポートされますか?
681 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 00:19:17 ] デザイナーが作る範囲は所詮はwebページで言えばhtmlに毛の生えたことしかしてないからなあ
682 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 01:14:12 ] .NET4な。CLRは4.0。
683 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 01:48:52 ] blend上で動くなら何も心配しなくていいんじゃないの何かあるの?
684 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 02:07:24 ] www.atmarkit.co.jp/fdotnet/vblab/uiframework_02/uiframework_02_04.html 上のサイトの中央付近から始まる「コレクション・オブジェクトへのバインド」のところを 動かそうとしたのですが下記のようなエラーとなり動きません。 >エラー 1 値 ' {Binding}' をプロパティ 'ItemsSource' に割り当てることができません。 >型 'IEnumerable' のプロパティ 'ItemsSource' は文字列として指定できません。 どのように対処すればよいのでしょうか?
685 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 02:14:01 ] >>682 .NET 4 と .NET 4.0 の違いを詳しく教えてください。 区別すべきなのでしょうか?
686 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 02:15:10 ] .NET 4.0 とかくことは意味があると思いますが、 .NET 4 と指摘していることについて詳しく教えてください
687 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 02:19:37 ] >>684 素直にXAMLで書けよ
688 名前:684 mailto:sage [2010/04/28(水) 02:28:18 ] 自己解決しました。 ListBoxを使っているほかのサンプルと見比べたところ <Grid x:Name="MainPanel" Loaded="MainPanel_Loaded"> <ListBox ItemsSource=" {Binding}" DisplayMemberPath="Bmi"/> </Grid> の <ListBox ItemsSource=" {Binding}" {Binding}の前の半角スペースが原因で文字列として認識されていたようです。 >>687 質問に対する答えになってないと思いますが・・・
689 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 02:37:07 ] VS2005 / .NET2.0 しか許されない環境で、 MVVMを模倣して手動でモデリングしたクラスプログラミングをすることは効率化になりますか?
690 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 02:37:15 ] ガベージイン、ガベージアウト
691 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 02:43:57 ] >>685-686 「.NET Framework 4」が正式名称。 .NET 4.0と言っても問題なく通じるので実用上の問題はない。わざわざ指摘する程の事でもないだろ>>682
692 名前:689 mailto:sage [2010/04/28(水) 03:17:09 ] >>74 が気になるなぁ。リフレクション調べてみるか…
693 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 03:21:53 ] >>692 目指す目標としてXAMLなどがあるんだし、それと同じ仕組みにすれば MVVMも可能じゃないかな? まあ自前であれこれするより本当はWPFにするべきなんだが ところでなんでそんな古い環境にこだわらないといけないんだろうw
694 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 05:26:27 ] VとVMの疎結合さえ保てればとりあえずMVVMって言えるのかな? ・Viewを定義する「なにか」を設計する (WPFではXAML) ・「なにか」からViewを生成するライブラリを実装する (WPFではSystem.Presentationとかかな?) ・「なにか」と実行時バインドする方法も実装する (依存プロパティみたいな仕組み。ここでリフレクションががっつり登場) マンドクセ・・・ XAMLの仕様はそのまま使って.net 2.0 WinFormsでもViewが構築できるライブラリ作れば それなりに需要は・・・ないか
695 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 05:34:57 ] 一番重要なのはMとVVMと間のデカップリングだと思うよ。
696 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 05:37:58 ] そういえば依存関係を切り離せるコンテナってあったよね? あれは使えないの?
697 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 06:30:25 ] ざっくりいうとVMはVからのMに対するブリッジって認識だがよろし? >693 ぶっちゃけマシン性能にもよるんだろうが未だにWPF遅くね? 頻繁な更新が必要なデイトレアプリみたいなもんとか向いてなさそうなんだが。 >694 そげんな感じのもん作ったお。未だに2000とかにも配慮しなきゃいけなくてな( ^ω^)・・・
698 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 06:42:25 ] DIコンテナは未だによくわからん・・・
699 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 07:39:00 ] >>693-697 thx. 2005なのは、そういう環境でWindowsXpとWindowsCEの開発レッスンを受けてますw 自分が2000使ってるのでその点も嬉しいかなw
700 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 10:36:39 ] >>696 CAL(Prism)なんかはUnityのDIコンテナ使ってるよ。 .NET4で追加されたMEFもかな、仕組みはDIコンテナっぽいが。
701 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 10:46:10 ] ブラウザアプリでエクセルを操作するプログラムが入っててエクセルオブジェクトバージョンが違ってる人がアドレス開いてアプリ操作したらどうなるの?
702 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 10:52:10 ] WPFが描画にGPUとCPUどっちを使ってるかどうすればわかるんですか? 自分のグラボがWPFに対応出来てるかしりたいんです
703 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 12:52:20 ] >>702 WPF のパフォーマンス プロファイリング ツール msdn.microsoft.com/ja-jp/library/aa969767 (VS.90).aspx
704 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 13:55:32 ] 依存関係の向きがV→VM→Mとなってればいいだけのことで VのコードビハインドでVとVMを手で結びつければバインディングはいらないよ コマンドはVMのメソッドを呼び出せばいいだけ
705 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 14:11:36 ] MVVMの目的はVMを単体テストすることだよ それが必要ないんだったらコードビハインドをVMとみなして XAMLで自身のプロパティにバインドするだけでいい それが本来WPFで想定されていたバインディングの使い方
706 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 14:12:00 ] C++ と XAML の組み合わせで使えないのはなんで?
707 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 14:22:27 ] WPFはマネージコード専用だから C++/CLIで使えないのは単にMSにやる気がないから WPFはアンマネージドな世界との相互運用がしづらいしものすごく高レベルなので わざわざC++/CLIから使うというのはちょっと考えられない
708 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 14:27:11 ] >>703 WindowsSDKツールのV6.0A V6.1の両方ともWpfPerf アプリケーションが入ってません どのSDKですか?
709 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 14:30:10 ] ブラウザアプリでファイルにアクセスできないと何も出来なくないですか 同一サーバー上のファイルにアクセスするにはどうすればいいんですか
710 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 15:39:52 ] >>709 下手に許すとローカルのファイルをいじり放題。その気になればスパイウェアも仕込み放題ということになってしまうから、それはできないことになってる
711 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 16:12:42 ] >635で質問したものだが、こういう風にすることでとりあえず解決した ideone.com/OemER
712 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 19:15:20 ] >>708 V6.0 か V7.0。 以前は単体でもダウンロードできたけど、今は出来ないみたい。 (windowsclient.net/wpf/perf/wpf-perf-tool.aspx の previous version of WpfPerf)。 SDK を入れるなら Win32 Development Tools だけ入れればいい。
713 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 20:57:54 ] XAML:<ListBox ItemsSource="Binding ."/> 結果: B i n d i n g . あぁそうか…stringもIEnumerableだったな… ってこんなんアリなのかw
714 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 23:35:19 ] ちょっとワロタw
715 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 11:29:33 ] >>712 できたありがとう ハードウェアレンダー 1 になってた サンプルサイト見てるとカクカクだから絶対CPUレンダーだと思ったのに・・・
716 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 17:32:32 ] Shazzam(WPF/Silverlight用のシェーダエディタ)良いね シンプルだけどWPFやSilverlightのシェーダ書くのには十分 C#側のコードを自動生成してくれる WPFの見本みたいなかっこいいインターフェイス
717 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 19:15:45 ] WPF入門者用のサイトいくつか教えてくれ
718 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 19:20:07 ] ゲームパッド使えるの?
719 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 19:25:12 ] >>718 XNA+WPFでいけ sorceryforce.com/xna/tips_xnaonwpf.html
720 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 19:28:45 ] >>717 ここだなあ www.atmarkit.co.jp/fdotnet/vblab/uiframework_01/uiframework_01_01.html WinFormで動的にコントロール追加したりオーナードローとかやったことある人なら それほど違和感なくやれると思うがこれからって人は2010のマウスでデザインできる ってを利用した方がいいかもね〜
721 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 22:40:11 ] XNAだとXBOX用コントローラしか使えない DirectXは参照できたからそっちで攻めるしかないんじゃない
722 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 22:50:42 ] >>721 PS2パッドも使えるわ 適当なこと言うな
723 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 22:54:59 ] >>723 使えねえよ
724 名前:723 mailto:sage [2010/04/29(木) 22:57:13 ] >>722 つ、使えないと思います
725 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 22:58:27 ] 訂正来てよかったぜ どう突っ込んでいいか悩んだぜ
726 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 22:58:49 ] いやいや現に使ってるしw なにいってんの?
727 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 23:01:09 ] もしかしたら古いコンバーター使っているんじゃないのか? 1年前に買った奴だと普通に使えたわ
728 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 23:40:58 ] >>726 そういうのもう良いから。 しかし DirectInput に未対応なのはなんでなんだろね。
729 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 23:45:29 ] XNA+DirectXならXBOXコン以外使える WPF+XNAならXBOXコンしか使えない
730 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 23:48:59 ] >>720 全部読んでサンクス 読んで思ったのが stackpanelに複数配置されたコンテンツを そっくり別のコンテンツに取り替えるようなのって xamlじゃ無理? 画像を表示してた場所をすべてボタンに変えるとか そういうのはやっぱりC#でやるのかね 決まった雛形だら自由に作れるような感じだけど GUIの表示をごっそり変えるのはどうするのかな 次はバインド読んでみるか
731 名前:デフォルトの名無しさん [2010/04/29(木) 23:50:28 ] ListBox.ScrollIntoView を使うと、指定したアイテムを画面内に持ってくることができますが、 一番端に表示されます。 これを一番端ではなく、もうちょっと内側(2、3個要素が見えるような位置)にしたいんですが、 どうすればよいでしょうか?
732 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 23:50:34 ] >>729 ああ、そういうことか
733 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 23:53:22 ] >>731 そういうかゆいところに手が届かないこと多すぎるよな それの対処にやたら時間かかって先に進めないのが すごくイラつくわ コアの部分に全然時間かけれない
734 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 00:05:49 ] 2,3個上の要素を指定すればいいのでは・・・
735 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 00:11:44 ] やってみたら例外がでた!→範囲内に丸めろよ… やっと初心者がWPFをやる時代が到来胸が熱くなるな
736 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 00:46:35 ] WPF みたいな一部でしか使えないものは危険。
737 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 00:53:21 ] 意味わからん
738 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 02:00:54 ] >>718 >>729 このスレならどうせWindows専用ってことだろうから joyGetPosをP/InvokeすればXBOXコントローラ以外も使える。 Windows 95から存在するAPIなので安心。 ttp://msdn.microsoft.com/ja-jp/library/cc410473.aspx
739 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 10:12:31 ] WPF勉強しているんだけど 初心者にはあえてこちらの方がお勧めのような気がする GUI部分とロジック部分を自然に分離して記述するから ソースも見やすくなりそう
740 名前:デフォルトの名無しさん [2010/04/30(金) 13:01:04 ] 実際に初心者に使わせたら大半をコードビハインドに記述、 ViewModelでViewを生成し、 ViewがViewModelのコントローラという素敵構造にしたんだが…
741 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 13:18:34 ] >>720 これずーっと読んでいって 第 3回 “見た目”を決めるリソースとスタイル で詰まった むずぅ
742 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 13:24:51 ] >>741 そう? WinFormでもImageListなんてあるけどあれの汎用版みたいなもんでしょ
743 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 13:26:15 ] おっと途中になった スタイルはCSSと似てるし
744 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 17:50:21 ] みんなExpression Blen使ってるの?
745 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 21:31:35 ] >>744 これからWPF試してみたいのでExpression Blend 4が早くでないかなと思ってる。 VS10が出たし、もうすぐだと思ってたんだがアナウンスがないな…
746 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 22:57:26 ] ブレンド無しで WPF ってwww
747 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 02:07:09 ] Blendなんて飾りですよ ControlTemplate生成にしかわからんのです
748 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 05:48:20 ] 別にボタンを星型にしたいとか思わないしなあ
749 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 08:02:08 ] ボタンを星形にするだけがテンプレートじゃないだろ WPFの胆はDataTemplateやItemTemplate VSだけだと手書きしないといけない
750 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 09:16:53 ] Blendなきゃだめなのか WPF一気にやる気なくなったわ
751 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 10:52:30 ] やる気も金もない人間は必要とされていないようだ。
752 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 10:52:45 ] 2010を使い.NET4でWPFを始めてみました ググりながら試行錯誤してコマンドとコンテキストメニューを繋ごうとしています キー操作だと正常に動作し、PlayPause_Executeが呼ばれるのですが、 コンテキストメニューは見出しやキーの表示は合っていますが、グレー表示のままで選択できません 何が悪いのでしょうか? タイマで定期的にCommandManager.InvalidateRequerySuggested();してみても変わらないようですし キーを押したときにはCheckCanExecuteCommandが呼ばれますが、それ以外では呼ばれないようです public class Commands { public static RoutedUICommand PlayPause = new RoutedUICommand("再生/一時停止", "PlayPause", typeof(Commands), new InputGestureCollection { new KeyGesture(Key.Space) }); } XAMLで(はしょっています) <Window xmlns:local="clr-namespace:hoge"> <StatusBar.ContextMenu> <ContextMenu> <MenuItem Command="{x:Static local:Commands.PlayPause}" IsEnabled="True" /> </ContextMenu> </StatusBar.ContextMenu> C#側コンストラクタで CommandBindings.Add(new CommandBinding(Commands.PlayPause, PlayPause_Execute, CheckCanExecuteCommand)); private void CheckCanExecuteCommand(Object sender, CanExecuteRoutedEventArgs e) { e.CanExecute = true; }
753 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 11:04:27 ] >>751 お前は一日中いろんなスレで煽るしかできない人間みたいだな
754 名前:752 mailto:sage [2010/05/01(土) 14:06:29 ] >>752 どうやらContextMenuの場合だけのようで、理由はまだよくわかりませんが とりあえずコンストラクタの最後にFocus();を入れることで回避できることがわかりました。
755 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 14:11:55 ] >>753 お前は一日中いろんなスレで煽られるしかできない人間みたいだな
756 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 14:48:48 ] Blendなんて飾りですよ。漢は手書き。マジで、Blendは非プログラマ向けの ツールだから、開発者はUIをちゃんと設計して手書きした方が覚えがいい。
757 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 14:51:15 ] うむ確かに手書きで覚えないとここまで分離した作りになると わからなくなるぞ JavaScript書くやつだってhtmlやCSSは知ってるだろ? C#とXAMLの関係ってそういうもんだよ
758 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 14:59:42 ] 非プログラマ向けとかまで言い切っちゃうのは逆にblendを過大評価しすぎ 手書きすることとUIを設計することは全然関係ないし 細かいアニメーションとかスタイル指定とかblendあったほうがいいに決まってんじゃん
759 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 15:05:52 ] 設計して、手書きしろと薦めただけだから関係なんて求められてもねぇ。 設計してBlendで作れるんなら別にそれでいいけど、細かいアニメも スタイルも、設計さえしてあれば、手書きできるから、敢えてBlendじゃ 無いとできないものって無いでしょ。 感覚的に作りたいという意味でBlendはプログラマ的じゃないよ。 でも、非プログラマに使わせて使えるかというと、使えないんだけど。 下手にソースを汚されても困るし、やっぱBlendは要らないなぁ。 存在が非常に中途半端。
760 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 15:09:09 ] ああそれだとまあ同じように感じてるのかな 現状のblendはプログラマがデザイン的な作業をすることをサポートするツールって感じる で俺には有用 アニメ付けるのにプレイバックなしで手書きとかやってらんない
761 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 15:48:50 ] ホームページビルダー使えたからって プログラミングができるわけじゃない
762 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 16:41:15 ] html・cssの手書きとかあんな糞つまらん作業したって別に自慢には
763 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 17:57:43 ] >762 cssは手書きしてた頃しか知らない。誰でもできる技術になった頃には 辞めてたから。XAMLもアホでもできるようになる前には、辞めて別の 何かを始めるよ。 元々は、つまんないとかの話じゃなくて、プログラマなら、デザイナで 操作するだけじゃなくて、ソースで中身を覚えろって話なんだけどね。
764 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 18:46:17 ] 何こいつ気持ち悪い
765 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 18:55:34 ] わろた 手書きしてる俺カッケー(キリッ
766 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 18:58:13 ] >>763 アホでもできるようなコードしか書けないから すぐに追い抜かれて嫌になるのですね
767 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 19:00:47 ] 並のレベルのプログラマならblendの出力なんかいざとなればいつでも読めるんだからどうでもいい話
768 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 19:06:25 ] >767 あぁ、いかにもやったこと無いって感じのコメントだね。 できるけど、嫌んなるよ。
769 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 19:24:15 ] >>767 やればできる、っていうのとは あんまり関わりたくない・・・
770 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 19:24:57 ] どうだろね まだ本質的にややこしいGUIは作ってないし blendで弄って出てきたXAML見てなるほどとか言っちゃうことがあるレベルだからわからんけど でもXAML一緒に表示して弄れるんだからあんま問題なくない?
771 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 19:52:49 ] >770 仕様的に危ない点もあるけど、デザイナが他にいるとして、見た目は 他人が作るわけだ。大概のデザイナはソースが読めないから、 ソースにコメントを入れるとか、読みやすいソースを書くというセンスも 無く、Blendが生成したソースがそのまま送られてくる。 書き直そうと思っても、こういうソースになった意図(内部的な実装仕様) を読み解かないと、書き直せない。けど、デザイナは内部実装の仕様なんて 存在自体を知らんよ。 一人でやるなら自分の頭の中だけで解決するから、好きにすりゃいいと思う。
772 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 20:07:41 ] まあ俺はもともとblendがデザイナとの協働ツールとして優れてるとは全然思ってないからね
773 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 20:24:49 ] 言い訳するな
774 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 20:50:34 ] 言い訳ってw >現状のblendはプログラマがデザイン的な作業をすることをサポートするツールって感じる 先にこう書いてるよ
775 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 21:36:36 ] ListViewで6000行10列ぐらいのDataTableバインディングしてるんだけど、スクロールが遅い コンテナのリサイクルと仮想モードは有効にしてて、遅延スクロールは最終手段ってことで保留してて、 現状でこれなんで、デザインどころじゃないんだが 兄さん達はどうやって最適化してる?
776 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 22:05:12 ] >>775 表示しているところだけListViewに追加する 他はダミー
777 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 22:10:14 ] バインドするアイテムを制限するしかない気がする。
778 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 22:22:34 ] そういうの必要になったらなにを試すかなと考えたら 直結するんじゃなくてvisualBrush化して並べるとかかなと思った スクロールは早そうじゃない?
779 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 22:42:03 ] >>778 visualBrushが分からんので調べたらようはハリボテか!それ頂き! 適当にブラーかけて描画省略してもよさそうだ、 兄さん達ありがとう。試行錯誤してみるよ
780 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 22:44:25 ] 描画というより重いのはレイアウトだろ
781 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 03:19:00 ] ボタンをひし形にして疑似3Dゲームのように並べるにはどうすればいいだろう? 理想としてはウインドウの大きさに合わせて縮尺が変わってくれるといいのだが・・・
782 名前:781 mailto:sage [2010/05/02(日) 03:40:35 ] イメージとしてはこんなのです ttp://tsushima.2ch.at/s/news2ch61559.png 青のラインの上をめざしてて、下の方は避けた挙動です。
783 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 04:38:03 ] SkewTransform弄れば擬似3Dっぽい表現は一発 ウィンドウのサイズに追従させるのはパっとはわからない
784 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 04:57:30 ] 一人で作る小規模アプリにWPFは効率悪すぎる
785 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 05:12:47 ] >>783 自己レス 初期表示で傾斜つけたコンテナをウィンドウに収まるように配置しとけばリサイズには勝手に追従するなあ uniformgridならうまく拡大してくれるような気がする
786 名前:781 mailto:sage [2010/05/02(日) 05:15:31 ] >>783 >>785 朝早くありがとう ボタン単体で傾斜つけてグリッドに埋め込んだりしてたけどどうもおさまり悪いので ボタンを入れ込むグリッドそのものを回転しちゃえって方向で今調べてました・・・ Blend使った方が楽かなあ・・・・ こいつが出力するxamlで勉強した方が速そう・・・orz
787 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 05:30:40 ] UniformGridでかっちりできるね 縦横比によっては見えなくなっちゃうけど blendはそりゃあったほうがいいでしょ なかったらこんなのめんどくさくて試す気もしないもん
788 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 06:16:28 ] こういうことか ttp://tsushima.2ch.at/s/news2ch61563.png ひし形の場合って影は下と右どっちが普通なんだろう
789 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 06:19:16 ] おっとボタン上のテキストは正面向いてないといけないのかなー それだと一手間いるな・・・
790 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 06:19:45 ] >>788 まさにそういうのです まあ影はこの際いらないかなあ・・・ 将来的にはスキンも考えてるので
791 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 06:30:26 ] >>788 あれですかね ボタンを回転させるよりボタンを星形にするようにベクターをいじって ひし形のボタンを作った方がいいかもしれないですね ただそういう場合ってヒットエリアって矩形なんだろかそれとも作った形そのままなんだろうか・・・
792 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 06:56:29 ] ちなみに>>787 で作ったのはこんなのね ttp://tsushima.2ch.at/s/news2ch61565.png 簡単だけどかなり見劣りするな・・・
793 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 07:25:32 ] >>792 なるほど・・・ こちらでもBlend入れてデザインしてみましたが難しいですねw ttp://tsushima.2ch.at/s/news2ch61568.png ボタンそのものの形は変わるのですがあたり判定が元のままw
794 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 07:53:44 ] あら?傾斜(擬似3D)じゃなくて回転でいいわけ? だったらこういうのも ttp://tsushima.2ch.at/s/news2ch61570.png 簡単・・・プレゼンターだけをグリッドとは逆に回転させるスタイルを定義する 判定も問題なしなんだけどこれだとリサイズしたときにむちゃくちゃになっちゃうな
795 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 07:59:31 ] >>794 まあ本当はウインドウサイズ固定などができれば楽なんですけど なにせウインドウズアプリなのでどうしてもウインドウサイズの変更は できて当たり前みたいなところがあるのがつらいんですよね・・・ まあこんな状況だからウインドウズ関連で指を使ったタッチパネルUIが 普及しないんでしょうけど 細かいタッチ制度を出せるマウスもしくはスタイラスのような ポインティングデバイス向けUIは得意なんでしょうけどね・・・
796 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 08:08:12 ] >>793 ちゃんとClipしていれば当たり判定は問題ないはず フォーカスの破線は自分で描画(もしくは消す) ついでに、>>788 のXAML ttp://pastebin.com/TngzgvvF
797 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 08:37:34 ] >>796 ありがとうございます うーん難しいw
798 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 10:51:49 ] というか、ゲーム作るならこれぐらいボタン使わないで描画しろよって話だな 中学生でもできるぞ
799 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 10:53:36 ] WPFの3Dはゲーム作成の為にある
800 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 10:57:55 ] データの視覚化とかトランジション効果とかの為だろ
801 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 10:59:10 ] >>798 こういうUIを採用してるアプリが思い当らなかったのでゲームを例題にしてますが ゲームじゃないですよ
802 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 10:59:52 ] >例題にしてますが >ゲームじゃないですよ 例題にしてますが 作っているのはゲームじゃないですよ
803 名前:デフォルトの名無しさん [2010/05/02(日) 11:06:15 ] ttp://tsushima.2ch.at/s/news2ch61577.png 改造して影をつけてみたけど解像度あがると重い・・・ ttp://tsushima.2ch.at/s/news2ch61578.png 赤丸のあたりに別途ボタンをつけたりする方法がわからない・・orz
804 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 11:32:16 ] Gridはレイヤーみたいな使い方もできるぞ がんばれ
805 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 11:42:44 ] 道具に振り回されている感じだね もっと頭使えよ
806 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 12:03:17 ] gridの使い方もわからない男の人って…
807 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 13:10:06 ] >>803 これが進化したらビューポイントが出来上がりそうだと思った。
808 名前:デフォルトの名無しさん [2010/05/02(日) 17:30:25 ] >>804 はい >>805 まあ休みの暇つぶしに始めたのでいろいろわからないことだらけなんですよね・・・
809 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 19:28:29 ] >>803 これ格闘ゲームのキャラクター選択画面みたいだな
810 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 19:52:56 ] こんなしょぼいもん作って喜んでるって レベル低いな
811 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:04:58 ] 俺のデザイン最強(キリ こんなしょぼいもん作って喜んでるって レベル低いな(キリ どんなUI作ってるんだろう見てみたい
812 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:06:23 ] 言ったもん勝ちだし。 MVPの俺が言うんだから確か。
813 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:11:33 ] そういえばWinFormのClientSizeに相当する動きってどうやればいいんだろう
814 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:15:45 ] コントロールとDataSetとの接続の仕方が判らない・・・ データベースを介さないと出来ないのか?
815 名前:781 mailto:sage [2010/05/02(日) 20:21:27 ] >>810 新しいことへの挑戦中なのでこれもラフスケッチみたいな物ですよ 今後でるであろうタッチパネル搭載端末で使いやすいUIの研究ですから ある程度決まった画面内やりとりするってのはゲームUIから学ぶことが 多いのでこれもその一つなんですよ WPFの勉強も兼ねてですから まあ偉い人にはわからないでしょうねw
816 名前:781 mailto:sage [2010/05/02(日) 20:31:16 ] 勝手にコメントしないでください
817 名前:781 mailto:sage [2010/05/02(日) 21:12:26 ] じゃあ、俺が変わりに。 アノデスネ・・・。
818 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 21:16:50 ] Fromの上にWPFのMediaElementを乗せた簡易メディアプレイヤーを .NET4で完全WPFに書き換えたら重くなった やってることはほとんど大差ないのに何故だ
819 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 23:36:30 ] >>813 Window.ContentのWidthとかHeightじゃだめ?
820 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 23:43:45 ] >>815 研究なら自分でやることだな この程度のことを質問しているようじゃ 何も出来そうにないな
821 名前:781 mailto:sage [2010/05/03(月) 01:19:15 ] >>820 その人成りすましなんですって・・ ID欲しいよ・・・
822 名前:デフォルトの名無しさん mailto:sage [2010/05/03(月) 01:40:50 ] >>819 ありがとうございます。 別件で 動的にコントロールを追加したりする場合はやはりC#側で制御するしかないんですかね?
823 名前:デフォルトの名無しさん mailto:sage [2010/05/03(月) 03:13:09 ] 動的の度合いがわからない
824 名前:デフォルトの名無しさん mailto:sage [2010/05/03(月) 08:03:33 ] 技術制約無視して条件分けとか言い出すんだから「xamlにコード埋め込め」でいいと思うよ
825 名前:818 mailto:sage [2010/05/03(月) 10:07:19 ] >>818 動画の上にテキストを表示するためにOuterGlowBitmapEffectを使ってたけど .NET4で削除された?のでDropShadowEffectに書き換えたがこれが重いらしい ウインドウサイズをいじって動画と重ならないようにすると少しだけ軽くなり 非表示にしたりEffectを無効にするとぐんと軽くなる ヘルプの.NET4の相違点のページかなんかで 描画方法が変わったとか何か書いてあった気がするけどページが見つからない
826 名前:デフォルトの名無しさん mailto:sage [2010/05/03(月) 10:27:06 ] BitmapEffectはパフォーマンスがクソだからというので ピクセルシェーダでGPUを思いっきり使うようになったんだけど(.NET3.5〜) ハードウェアが対応してないとか
827 名前:デフォルトの名無しさん [2010/05/03(月) 21:51:18 ] >>825 俺は、動画はないけど文字列をいっぱい表示してるけど縁取りでDropShadowEffectを使ってみたら重いな、OuterGlowBitmapEffectも重かったけどね ボカシの処理を無くして縁取りの処理をもっと軽くできないものか・・・
828 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 07:05:54 ] >>827 ぼかしを無くして影を落とすだけでも重かったので、妥協して半透明の背景をつけることにした BitmapEffectが重いからって話だったはずなのにこっちの方が重くなるのが納得いかない グラボは6800XTだからShader 2.0には対応してるはずだけど3.0が必要なのかな
829 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 15:31:17 ] カスタムコントロールにResourceDictionaryを定義した xamlファイルを結びつけるのはどうすればいい? カスタムコントロールのコードからリソース内の表示用部品を利用したいのだけれど。
830 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 17:01:51 ] >>829 xaml の読み込み ResourceDictionary.MergedDictionaries or XamlReader.Load(file) 部品の取得 FrameworkElement.FindResource(key) or ResourceDictionary[key]
831 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 18:34:43 ] >>829 これでも ResourceDictionary rd = new ResourceDictionary(); rd.Source = new Uri("pack://application:,,,/MyApp;component/Dictionary1.xaml", UriKind.Absolute); string myValue = rd["MyValue"] as string;
832 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 18:44:44 ] >>830-831 さんくす! 使うリソースは1つだけなので this.Resources.Source = new Uri("pack://application:,,,/testcontrol/test.xaml"); でいけた。this.Content = this.FindResource("button");てな感じで使えるね。 これでようやくコントロールの表示部分に取り掛かれるわ
833 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 19:03:40 ] 日本のメーカーPCはグラボ非搭載が主流だからWPFはきついな
834 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 19:28:07 ] 誰一人つられないんだからね
835 名前:デフォルトの名無しさん mailto:sage [2010/05/05(水) 00:38:09 ] 現在主流のCore-iモデルの内蔵はintel HD Graphicsで そのコンパネがWPFだったりするんだけどな
836 名前:デフォルトの名無しさん mailto:sage [2010/05/05(水) 01:34:12 ] WPFってなんだろう
837 名前:デフォルトの名無しさん mailto:sage [2010/05/05(水) 01:44:00 ] 人生・・・かな?
838 名前:デフォルトの名無しさん mailto:sage [2010/05/05(水) 03:17:03 ] 鉄板麺!!
839 名前:デフォルトの名無しさん mailto:sage [2010/05/05(水) 16:50:17 ] WPFはAdobeのあれをパクったような感じ
840 名前:デフォルトの名無しさん mailto:sage [2010/05/06(木) 08:43:05 ] 国連になんかあったな
841 名前:デフォルトの名無しさん [2010/05/06(木) 23:49:46 ] Window の中に Grid が1つあり、 その中に同じ大きさの Viewbox を3つ配置しています。 3つのViewboxの位置は同じで、重なって配置されます。 それぞれのViewboxにはGridを配置し、その中には ・透過色を指定したPNG画像と ・Rectangleを1つずつ配置しています。 3枚の画像は同じ大きさで、UniformToFill にしています。 Rectangleは、各画像の背景色の領域中に配置するようにしています。 また、Rectangleはクリックされると Fill が変わるようにしています。 このとき、一番階層が高い Viewbox 内のRectangleしかクリックに反応してくれません。 2番目、3番目のViewbox内のRectangleも反応させるにはどうしたら良いのでしょうか? ソースを以下にUPしましたので、よろしくお願いいたします。 ttp://www.dotup.org/uploda/www.dotup.org866125.zip.html pass: wpf
842 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 00:02:32 ] 現象が発生する最小のプログラムでないと誰も見ないぞ 単純に一番目にRect三つ配置すればいいんじゃねーの
843 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 00:05:50 ] >>841 Grid.Row, Grid.Column を分けずに、一つのセル(?)でやってるから、最後の Viewbox がイベントとっちゃって、その兄弟にはイベントが伝播しない。 素直に Canvas 使うか、Grid.Row を3つに分けなさい。
844 名前:841 mailto:sage [2010/05/07(金) 00:12:10 ] >>842 急いで書いたため、情報不十分でした。 各Viewboxは個別に移動、拡縮をしたいのです。 (それに応じでViewbox内のオブジェクトも、移動+拡縮させたいです) ですので、一番目にRect3つ配置ではダメなのです。 >>843 ありがとうございます。 いただいた情報を元に考えて見ます。
845 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 00:36:07 ] >>844 Grid を入れ子にすれば、Grid で MouseUp をとるように変更すればできたけど・・・ もう少しスマートな方法ないかね。Viewbox 使わなければ Background に Transparent 設定してイベント透過させられるのだけど。 <Grid MouseUp="rectangle_MouseUp"> <Viewbox /> <Grid MouseUp="rectangle_MouseUp"> <Viewbox /> <Grid MouseUp="rectangle_MouseUp"> <Viewbox /> </Grid> </Grid> </Grid> ----------- private void rectangle_MouseUp(object sender, MouseButtonEventArgs e) { ((((sender as Grid).Children[0] as Viewbox).Child as Grid).Children[1] as Rectangle).Fill = Brushes.Red; }
846 名前:845 mailto:sage [2010/05/07(金) 00:40:27 ] Grid 全体で MouseUp とってしまうから駄目だった。 忘れてくれ。
847 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 00:43:11 ] つまり透過してるので最前面でFill状態の画像をムシして その後ろの画像にヒット判定させろ? 無理じゃね?
848 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 01:05:45 ] いや3ついっぺんにクリックされたように扱いたいって話じゃないの?
849 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 01:09:17 ] >>844 読み流してた つまり>>847 なんだなごめん
850 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 01:10:43 ] >>848 それだったら全面のやつがイベント受けたらほかの物にも伝えるとかそんなんでいいんじゃね? それか画像を管理してるコンテナ、この場合はGridがクリックイベント拾うとか
851 名前:841 mailto:sage [2010/05/07(金) 01:12:58 ] 皆さん、ありがとうございます。 やはり透過処理していようとも、画像の領域から イベントを透過させることは無理(難しい?)みたいですね。 >>847-848 一番の理想は、”見えているオブジェクトがイベントを拾う”です。 うpしたものを見ていただけているか分かりませんが、 例えば2番目のViewboxを仮に下方向にAnimationさせた場合、 2番目のViewboxに配置したRectangleは「黒色」の後ろに隠れます。 このとき、隠れたRectangleはクリックできないようにしたいです。 が、それはあくまでも理想であり、3つヒットでも出来るなら嬉しいです。
852 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 01:43:08 ] 一番上が拾うんでいいならTunnelじゃいかんのかね
853 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 01:50:25 ] しかしwindowsはマウスありきでできてるから こういうGUIまわりは作りにくいな
854 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 02:04:46 ] >>852 TunnelってPreview〜のあれ? 重ねたImageに対してトンネルなんてできるのか?
855 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 21:31:34 ] >>841 ViewBox内のImageに IsHitTestVisible="False" をいれたら下のRectangleも反応したよ ただ、これだと隠れたRectangleをクリックさせない というようなことはできないけど
856 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 22:00:45 ] Imageに不透明な部分だけマスクするClipを指定すればいいんじゃないの?
857 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 23:09:28 ] 4の良書でないかなぁ
858 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 05:54:20 ] WPF4のデザイナで配置したコントロールのフローがWPF3と違いますよね…? ウィンドウのリサイズを行うと、WPF3だと勝手に連動してコントロールのサイズが変わるのに、WPF4だとウィンドウだけしかリサイズされない…。 結果、プロパティやXAMLをちょこっと変更しなければいけないのだけれど。
859 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 06:52:09 ] update code.msdn.microsoft.com/WPFShell/Release/ProjectReleases.aspx?ReleaseId=4332
860 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 10:34:01 ] >>858 コントロールの上下左右に小さな円があるだろ それクリックするとコンテナの端からの距離が固定される(WinFormsのAnchor相当)
861 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 11:12:39 ] WPFのフォントレンダリングをフォームアプリと同じにすることはできないんでしょうか? VS2010がフォームと同じフォント表示になったのに、 自分で作ったWPFアプリケーションのフォントレンダリングが前のままです。
862 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 11:59:32 ] 同じというのは違うけど。 3のソースを4でコンパイルするだけじゃ駄目。 TextOptions.TextFormattingMode TextOptions.TextRenderingMode
863 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 13:08:49 ] FlowDocumentに表示されている内容の表示上のサイズを取得する方法はありますか?
864 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 22:23:02 ] >>860 クリックですか。 クリックしたところ、希望の動作になりました。 ありがとうございました。
865 名前:デフォルトの名無しさん mailto:sage [2010/05/10(月) 21:59:51 ] int型のプロパティPercentがあって、 それをバインドしているTextBlockでは、後ろに"%"を付けたいときって どうすればいい?
866 名前:デフォルトの名無しさん mailto:sage [2010/05/10(月) 22:01:19 ] IValueConverter するまでもないな、StringFormat
867 名前:デフォルトの名無しさん mailto:sage [2010/05/10(月) 22:17:23 ] 866 なんか分かりづらくなっちゃった {Binding Path=Percent, StringFormat=0\\%} これでいいのか? マークアップ拡張内は書式指定文字列が訳分からんことになるな
868 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 17:42:43 ] >>867 おおーまさしくこれだ。 なんで円記号が2つも…って思ったけどマークアップ拡張内では円記号もエスケープ必須か
869 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 17:45:00 ] 途中で送信しちまった。>>867 サンクス
870 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 18:13:55 ] GUIプログラミングの初心者は、WPFから入るよりForm使った方がいいのかな? WPFはまだ情報量少ないみたいだし
871 名前:デフォルトの名無しさん [2010/05/12(水) 18:18:10 ] >>870 最終的に何を作るかでも変わるけど似てるようでかなり違うからなあ 下手にFormの方を覚えるとWPFだと戸惑うこともあるよ
872 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 18:21:51 ] GUIプログラミングはWPFから入ったけど今更Formなんて勉強する気しないよ
873 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 19:48:05 ] >>872 最初からWPFって、どうやって学習した? 後学のために教えて欲しい。
874 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 19:53:59 ] >>873 ネットで情報収集。殆どはMSDNから。 書籍はエッセンシャルWPFだけ買った。 質問はここやC#スレで。 まだ全体は勉強してないけどな。目的のアプリ作るには一部だけでも十分。 C#と.NET Frameworkも同時にだったからだいぶかかったが。
875 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 19:54:50 ] WPFって動的にコントロールを生成しちゃいけないみたいな感じが面倒
876 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 20:02:06 ] え?DataTemplate使えば必然的に動的に生成しまくりだろ?
877 名前:デフォルトの名無しさん [2010/05/12(水) 20:03:39 ] >>875 そんなことはないんじゃないの? WPF側で名前つけておけばFormでやてったようなことはできるし そういうのがだめってのならWPFなりの書き方すればいいだけだし