1 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 21:35:10 ] (#゚ー゚)つ < C#、.NETの話題はこちらでどうぞ。 前スレ C#, C♯, C#相談室 Part55 (実質56) pc12.2ch.net/test/read.cgi/tech/1260111240/ Visual C# 2008 Express Edition 日本語版 www.microsoft.com/japan/msdn/vstudio/express/vcsharp/ その他テンプレ>>1-5 くらい
671 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 02:23:50 ] なにをしたいか知らんがpictureBoxはこんなことができる ideone.com/Cs4gU
672 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 02:23:58 ] 変更したサイズのImageが実際に欲しいのか、 Pictureboxのサイズに合わせて表示も拡大したいのか良く分からんけど、 後者ならプロパティに設定するだけ。 SizeModeをZoomかStretchImageにすればいける。
673 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 02:31:27 ] それよりぶち抜きでcontinueとかbreakしたいのは俺だけか 一番内側から最外ループまで一気に戻りたい時とか面倒で仕方ない
674 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 02:33:28 ] そんなのはケースによるしな どんなコードの状況になてて>>665 なのかわからんし 当たり障りの無い回答しかできないのも事実
675 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 02:51:11 ] >>672 SizeMode設定で出来ました。 ありがとうございます。 別のGraphicsの画像をPictureBox.Imageに拡縮貼り付けしていて PictureBoxのサイズが変わったら貼り付ける座標も変わるだろうということで PictureBox.ImageのサイズをPictureBoxのサイズに変えたかったんですけど PictureBoxはPictureBox.ImageをStretchBltしてくれるみたいなイメージなんですね。 >>671 なんだか・・・いろいろやってくれるんですね.NETは 今までWin32APIでしかウインドウズプログラミングしたことなかったので 勉強になります・v・
676 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 17:10:33 ] 次は、縮小画像がガタガタなんですけど…という質問が来るにちがいない。
677 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 17:17:39 ] >>676 ファミコンの画像を縮小したら変に滑らかになって困ります。RGB接続した時のようなまま縮小したいです
678 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 17:26:09 ] >>677 Bitmapオブジェクトを直接弄るしかない
679 名前:665 mailto:sage [2010/05/01(土) 01:05:49 ] 意見ありがとうございます。 実物はアレなので話のネタにサンプルコードとしますがこんな感じ IEnumerable<T> e = xx; foreach (var x in e) { bool a = this.A(x); if (a) { continue; } bool b = this.B(x); if (!b) { continue; } string c = ExtLibC.C(a, b) if (c == null) { continue; } DD d = ExtLibD.D(x, a, b, c) if (d == null || d.D == null || d.DD == null) { continue; } // こんな処理が数十行続くとか // もっとネストが深いとか }
680 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 01:54:42 ] 適当な粒度でメソッドに分ければ? この例だと有効なdを取得したいんだろうから、こんな感じかね foreach(var x in e) { var d = D(x); if (d == null || d.D == null || d.DD == null) continue; // 処理 } -- DD D<T>(T x) { if (A(x) || !B(x)) return null; string c = ExtLibC.C(false, true); return (c != null) ? ExtLibD.D(x, false, true, c) : null; }
681 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 03:02:05 ] >>679 まあ分かって聞いてるんだと思うけど、そんなの汎用的な方法論なんてあるわけないよね。 冗長なコードが悪なのは誰も異論がないとしても、 それは全ての処理はコンパクトな記述が可能だってことを意味しないわけで。
682 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 04:10:07 ] ListViewのLargeIconモードでD&D並べ替えがしたいんだけど、スクロールが出来ない DragDropEffects.Scroll指定するだけじゃダメなの?
683 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 16:40:31 ] DataGridViewってセル結合出来ないのね・・・
684 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 17:55:36 ] >>683 諦めるんだ・・・ サードパーティが売れなくなるだろ?
685 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 19:22:19 ] できないことはないけど、コードガリガリ書くの面倒だよ
686 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 13:10:14 ] 面倒なんでhtmlにしてWebBrowser貼付けた 楽すぎるw
687 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 13:22:41 ] >>686 ブラウザで代替出来る程度のことなら、素直にTableLayoutPanelでも使った方が もっと簡単なんじゃないかと....
688 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 14:48:35 ] >>687 中の文章でセルサイズを自動調節したいんで、 TableLayoutPanelでは難しいです
689 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 18:17:07 ] if(a == 1 && a == 2 && a == 3) { } こんな感じのコードをもっとスマートに書く方法ってないですかね。 例えば if(a == (1 && 2 && 3))みたいな感じで。 「かつ」ではなく「もしくは」ならswitch文で代用できるんですけど。 よろしくお願いします。
690 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 18:18:44 ] if(false)
691 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 18:20:36 ] すみません。間違えました。確かにこれはおかしいですねw if(a != 1 && a != 2 && a != 3) { } こんな感じのです。
692 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 18:22:36 ] また「スマート = 文字数が少ないこと」と勘違いしている人かな。
693 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 18:23:27 ] switchとか!(new[] { 1, 2, 3 }.Contains(a))とか
694 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 18:28:22 ] >>691 用途上 a >= 0 に限定できるなら if (a && a > 3) { }
695 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 18:43:52 ] >>692 今回例に出したのは数値型でしたが、文字列型だった場合には条件式の組み合わせが非常に多くなってしまって鬱陶しかったんで。 個人的なことですが、if文等の括弧の途中で改行挟むのが嫌いなものの、改行しないでいると横スクロールが面倒になるという始末。 まぁ比較用のbool変数に対して予め比較を終わらせておくって手段もあるんですがね。 要はわがままです。 >>693-694 ありがとうございます。配列に対してContainsを使う方法は思いつきませんでした。 文字列型の場合にも有効活用できそうですね。
696 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 18:58:05 ] >>695 いずれにせよ、値の評価関数(ようはintならintを引数にとってboolを返す関数) をつくるベタなやり方の方がいいと思うけど。 ifの()の中の記述に場当たり的な技巧を凝らすのは時間の無駄だし馬鹿っぽい。
697 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 19:13:09 ] 実行速度を計測してみたところまぁ当たり前な気もしますが、単純に比較するのとContainsを使う方法では前者のほうが圧倒的に速かったです。 実行速度を気にしなくて言い場合にはContainsは有効ですね。 >>696 上記の理由より、予め比較を終わらせておく手段をとるのが最善のようですね。
698 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 19:13:41 ] 数が多くなるならリストを予め作っといて>>693 の後者の考え方で判定するのがきれい
699 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 19:34:51 ] >>695 >>まぁ比較用のbool変数に対して予め比較を終わらせておくって手段もあるんですがね。 俺もこうするかな bool b1 = a != 1; bool b2 = a != 2; bool b3 = a != 3; if( b1 && b2 && b3 ) { }
700 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:21:29 ] 俺は状態を管理するクラスを作るかな。
701 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:24:30 ] var b = a != 1; b &= a != 2; b &= a != 3; if (b) { } だろ
702 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:24:47 ] ただ条件文自体は普通に書くのが一番分かり易いし取り回しもいいと思う。
703 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:25:45 ] >>702 まあ状況によりけりだが素直に条件式書く方がスマートだったりするよな
704 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:31:55 ] 拡張メソッドでNotIn作れば良いよ
705 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:34:00 ] 素直に条件式書いた方がコンパイラ的にも最適化しやすいと思うし。
706 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:40:56 ] 業務アプリならifのパフォーマンスなんかどうでも良くて人間が見やすいことが優先されることが圧倒的に多いけどな
707 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:50:31 ] 業務アプリなら他のプログラマが見ることもあるだろうから普通に書いた方がいい。 個人なら好きにすればいいよ。
708 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:57:54 ] >>695 つまらないこだわりはよせ 月にロケットを飛ばすプログラムが一行で書けたところで 何の意味もない
709 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 21:07:20 ] あれ?2010からはヘルプはドキュメントブラウザじゃなくてウェブブラウザになったの? しかもオンラインのみ? ローカルに設定したんだけど・・・
710 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 21:13:25 ] あ、失礼w ローカルアドレス参照になってましたorz
711 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 21:18:03 ] >>708 意味あるだろ
712 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 21:32:35 ] >>711 どこに?
713 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 21:36:39 ] 俺ルールだと if ( a != 1 && a != 2 && a != 3 ) { } 条件の追加削除が楽だし、&&なのか||なのかが前に並んで、俺が分かりやすい。 後ろに置くとチェック変数の変数名長でガタついて見間違えやすいから。 横並びなんて誰得。複合条件ならカッコつけてインデント。複雑なら変数方式。 これを部下に押し付けてる。 途中で||とか変な条件入ったら693なんてどーすんの?
714 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 21:38:20 ] 大昔のパソコン雑誌(確かASCII)にはその手のコンテストがあったな。 一行プログラムコンテストだっけ? オッサンの独り言でした
715 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 21:40:59 ] >>713 これとか、カンマを文頭に書くのは好きになれないなぁ。 確かに見やすい&わかりやすいけどね。
716 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 21:52:31 ] >>713 途中で||が入ったとしても、&&で括れるグループ毎にまとめるとかはできるでしょう。 それに様々な条件が入り交ざったモノってそこまで条件式自体は長くないのが多いし、仮に長かった場合には関数なりなんなりでわかりやすく分離すればいいかと。
717 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 21:57:35 ] >>716 分解したら今度は読み解くのにあっちこっち見に行かなければならない
718 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 22:02:28 ] 神経質な人はやりたくなるのは分かるけど、 手作業でコードの整形とか時間の無駄なんだよな。
719 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 22:15:44 ] そんなことよりswitch文で必ずbreak入れなければならない仕様は改悪だと思うんだ
720 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 22:18:14 ] caseの中身書かなければ並べられるので不便だと感じたことはないな
721 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 22:28:38 ] >>719 少数意見だろうな。
722 名前:デフォルトの名無しさん [2010/05/02(日) 22:30:54 ] 1.bp.blogspot.com/_GxQVDnAyExw/SsNvlU5GFAI/AAAAAAAAAAU/4ir3g-WMg1E/s1600/meat2.jpg
723 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 22:33:40 ] フォールスルーの読みづらさは凶悪 フォールスルーが言語でもめったに使われてないからたまに使われてるとほぼ確実に見落とす
724 名前:723 mailto:sage [2010/05/02(日) 22:35:15 ] フォールスルーが許されてる言語でも の間違い
725 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 22:38:46 ] >>722 交通事故かな
726 名前:デフォルトの名無しさん mailto:sage [2010/05/03(月) 00:51:47 ] まさかプログラム板でグロ画像見るとは思わなかった。
727 名前:デフォルトの名無しさん mailto:sage [2010/05/03(月) 01:27:07 ] 病んでるんだろ ほっとけ
728 名前:デフォルトの名無しさん mailto:sage [2010/05/03(月) 01:33:15 ] >>726 まあ休みの深夜だしw
729 名前:デフォルトの名無しさん mailto:sage [2010/05/03(月) 03:27:15 ] 長期休暇は変な人があちこちに出没するなぁw
730 名前:デフォルトの名無しさん mailto:sage [2010/05/03(月) 09:47:15 ] >>723 フォールスルーするならコメント書いとけ
731 名前:デフォルトの名無しさん mailto:sage [2010/05/03(月) 13:15:11 ] これもヘンな人? ameblo.jp/ryujiohta/entry-10524500598.html
732 名前:デフォルトの名無しさん mailto:sage [2010/05/03(月) 13:24:51 ] 削除ガイドライン違反 8. URL表記・リンク 宣伝・罠・実行リンク ・明らかに宣伝を目的としたリンク・クリックや訪問で課金が発生するもの等は、宣伝掲示板以外では削除します。
733 名前:デフォルトの名無しさん mailto:sage [2010/05/03(月) 14:23:53 ] コピペ君も同類だけどな、まで読んだ。
734 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 00:25:02 ] このプログラムなのですが、どうしてもエラーが消えません。 どこがおかしいのでしょうか? C:\Documents and Settings\tutomu\My Documents\Visual Studio 2008\Projects\gomokuproguram\sironoisi.cs
735 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 00:30:23 ] >>734 知りません。 答えようがありません。
736 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 00:31:21 ] キチガイの相手すんな
737 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 00:32:48 ] 知らんがな。つとむくん。
738 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 00:58:19 ] うお、うpろだにあげるの忘れてた
739 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 01:01:27 ] つとむくん 忘れてたってレベルじゃねぇぞ! ところで gomokuproguram は GomokuProgram ではないか?
740 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 01:04:52 ] もうやめて!つとむくんのライフゼロよ!
741 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 01:07:32 ] つとむくんは盲点だったわww 確かにwwww
742 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 01:10:06 ] 山口さんちのツトム君 このごろ少し変よ どうしたのかナ
743 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 01:12:46 ] 何歳だよお前
744 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 01:20:32 ] うpろだにつながらなくなってしまった なんで名前知ってるの・・・? いちようウイルスソフトは入れている 2chになんかカキコするんじゃなかった
745 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 01:24:02 ] 誰だよお前
746 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 01:26:50 ] 例え私が滅びようが第二、第三のツトムが五目プログラムを作るであろう・・・ グフッ
747 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 01:34:27 ] >>744 ウイルスソフトなんて入れてるから駄目なんだと思います。 >>746 ワロタww
748 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 01:39:30 ] ツトム君の人気に嫉妬した
749 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 02:25:23 ] プログラム一通り見たけど、設計がなってない
750 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 02:44:44 ] シロノイシ なんか小説でも書けそうなタイトル
751 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 09:32:12 ] つとむ君のスレになりそうだな 【五目】C#相談室【白の石】
752 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 09:50:42 ] こうだろ 【五目】C#相談室(ツトム君専用)【白の石】
753 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 10:07:25 ] OSに頼らずにジェスチャーを実装することって可能かなあ・・・ マウスだとボタンとポインター移動部分が独立してるけど タッチパネルとなるとタッチした瞬間にカーソル移動+ MouseDownとかイベント発生しそうだし・・・
754 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 10:25:11 ] >>753 戦車ゲームが難しいな タッチしたら旋回して即発射 つねに振り向きざま即発射
755 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 11:09:10 ] 白の意思・・・か・・・ ついにはじまるのか・・・
756 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 11:46:18 ] 燃え尽きた・・・真っ白に・・・
757 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 12:38:42 ] 原因がわかりました iとjをまちがいていました 変数名をtateとyokoにすることによって解決。 forの変数はiから順に使うとならったけど 名前を使ったほうが分かりやすいと思う あと名前をカキコするのはやめてください。 どこで知ったのかわかりませんが ちゃんとうpろだに成功してたのかな?
758 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 12:41:08 ] "つとむ" はローマ字だと"tsutomu"だよ。 "tutomu"じゃないよ。
759 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 12:41:58 ] >>757 ネタなのかマジなのか >>734 で自分で晒してるよ IDEのデフォルトの保存場所にするとマイドキュメントになるので 下手にプロジェクトとか晒すとユーザーネームまるばれなんだよw
760 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 12:42:48 ] >>758 僕はtutomuって書くことが多いですね 最近はローマ字で名前書いたことないですけど
761 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 12:44:00 ] >>759 はぁー! フォルダに名前使ったおぼえないのに C#が勝手に作った!?_
762 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 12:45:34 ] >>761 お前面白いなwww
763 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 12:45:42 ] >>761 プロジェクト保存するときに保存先を聞いてくるので 見逃してたら自己責任だろうw
764 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 12:47:14 ] >>758 訓令式というものがあってな
765 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 12:55:48 ] だめだフォルダの名前が変えれない 名前フォルダの中にデスクトップがあるし訳が分からない デスクトップの中にエクスプローラーがあってその中にデスクトップがある。 でも普通にファイル開けた
766 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 12:59:30 ] もうやめてあげて!ツトムくんが人間の形を留めていられなくなっちゃう!
767 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 13:07:42 ] 鼠人間ツトム
768 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 13:12:11 ] そろそろ板違いだから。 これ以上やりたければ、パソコン初心者板でも行こうな。つとむくん。
769 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 13:14:15 ] >>768 既に聞きに行っているみたいだぞwww pc12.2ch.net/test/read.cgi/win/1267768729/828
770 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 13:26:27 ] ネタじゃなくてマジだったのかw
771 名前:デフォルトの名無しさん mailto:sage [2010/05/04(火) 14:08:40 ] 板を超えた釣りだろ