1 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 02:19:33 ] このスレッドは 「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。 ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問など、 勇気をもって書き込んでください。 内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。 >>980 を踏んだ人は新スレを建てて下さい。 >>980 が無理な場合、話し合って新スレを建てる人を決めて下さい。 前スレ ふらっとC#,C♯,C#(初心者用) Part38 pc11.2ch.net/test/read.cgi/tech/1235864730/
610 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 17:29:35 ] それクラスの外に書くやつですよね クラスで管理したいです
611 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 17:31:13 ] 調べようぜ少しくらい ttp://msdn.microsoft.com/ja-jp/library/yh598w02(VS.80).aspx
612 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 17:33:15 ] ワラタ
613 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 17:33:15 ] そういうものが必要になることじたい何かおかしいのだが、 プロパティにしたらどう? int A { get { return bbbb.ccccc.ddddd; } set { bbbb.ccccc.ddddd = value; }}
614 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 17:37:26 ] unsafeだめ?
615 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 17:39:03 ] >>611 そっちか。それだめです期限付きでその中ではコピーされますよね 参照がいいです。
616 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 17:45:36 ] ・・・・・・(;´∀`)
617 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 17:47:43 ] だからunsafeつかって好きにかけや
618 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 18:55:39 ] FontDescriptionという構造体を呼び出すときに fd = new Microsoft.DirectX.Direct3D.FontDescription(); としているんですが 次のエラーが出てしまいます 次のメソッドまたはプロパティ間で呼び出しが不適切です: 'Microsoft.DirectX.Direct3D.FontDescription.FontDescription()' と 'Microsoft.DirectX.Direct3D.FontDescription.FontDescription()' ビルドしてみるとエラーがあるにもかかわらず問題なく動いているようです これはどうすればいいんでしょうか
619 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:04:06 ] 質問です。 class HogeCollection : IEnumerable<Hoge> のように、IEnumerable<T>を実装したコレクションのインスタンスがあるのですが、 そこから動的にHogeの型を取得するにはどうすればよいのでしょう?
620 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:08:24 ] リフレクション
621 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:12:26 ] GetType().GetInterfaces().First(i => i.Name == "IEnumerable`1").GetGenericArguments()[0] かな もっといい方法もありそうだけど
622 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:17:47 ] >>613 それも値がコピーされて格納されるじゃん 一瞬でも複製を作りたくないんだけど ほんとに引数にref指定してその中だけで使えるように渡すしか値型を参照で保持する方法はないの?
623 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:20:37 ] >>621 Nameを使うと誤判定の可能性があるので、 オープンジェネリック型を使った方がいいな GetType() .GetInterfaces() .First(i => i.GetGenericTypeDefinition() == typeof(IEnumerable<>)) .GetGenericArguments()[0]
624 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:24:10 ] structのこといってんの? 一瞬でもコピーされるのの何が問題なのかわからんから答えようがないよな
625 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:24:38 ] >>620-621 ,623 なるほど!ありがとうございました。
626 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:26:40 ] unsafeでポインタでFA
627 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:27:44 ] unsafe対応してないの!
628 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:28:37 ] すまんunsafeしかないってことか 構造を変えるわ、あきらめたthx
629 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:31:21 ] >>622 初心者スレに行って質問の仕方から勉強しなおしだな
630 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:40:56 ] >>622 それくらいの余計なコピーの作成くらい、実行時には最適化で消えると思うよ。
631 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:43:19 ] もしかして、複数スレッドから読み書きされるからコピーされると困る って話なのか?
632 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:51:16 ] たぶん異なるスレッドから見てるんでしょ 関係ないけど 参照でコピーしても、そのポインタを保持してるんだからメモリの節約にはならないんだっけ?
633 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:53:22 ] ただ呼び出しがめんどいってだけじゃね?最初の質問からすると。 最後にまた代入すりゃいいじゃんって思うけどねw んで質問ですけど、unsafe使って問題になることって何ですか? unsafe内のコードに問題が無いという前提で。
634 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:56:39 ] 関数の引数でref使う方法もなくはないけど、 aliasをサポートする別の言語を使うしかないな。C++/CLIで何とかならなかったっけ? C#でもこういう裏技はあるけど正直おすすめしない。 int hoge = 0; TypedReference tref = __makeref(hoge); __refvalue(tref, int) = 5; Console.WriteLine(hoge);
635 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 19:57:31 ] >>633 >unsafe内のコードに問題が無いという前提で。 その前提が"成り立つ事を保障できない"事こそが最大の問題だと思うのだけど
636 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 20:01:34 ] インテリセンスではエラー波線でないんですが、 オブジェクト参照がオブジェクト インスタンスに設定されていません。 というエラーが出るのですが、なんでですか?
637 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 20:02:41 ] オブジェクトがnullなのにメソッドを呼び出したかなんかしたんだよ
638 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 20:04:35 ] 宣言時に値は入れてるんですが、起動時の順番が問題で宣言がまだ見つからないってことですか?
639 名前:デフォルトの名無しさん [2009/04/02(木) 20:06:40 ] 入れてると思ってるだけで入ってないんだよ ぬるぽってやつだよ
640 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 20:07:40 ] ∧_∧ ( ・∀・) | | ガッ と ) | | Y /ノ 人 / ) < >__∧∩ _/し' //. V`Д´)/ (_フ彡 / ←>>639
641 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 20:09:10 ] pub class a pub int data = 500; pub class b pub int data; pub b(a aa) { data = aa.data; } でdata = aa.data;でエラーでるんです
642 名前:デフォルトの名無しさん [2009/04/02(木) 20:10:40 ] aaがnullなんだよ
643 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 20:11:31 ] >>635 そりゃそうなんだけど、それ以外にもなんかあるのかなーと思ったけど それ以外ないわな。unsafeは使用禁止とか普通にあるだろし 今回の参照の件とかはそれほど問題にする意味もないのかなと考えてたけど まぁunsafeなんだし、使わなけりゃ一番問題ないな
644 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 20:14:19 ] >>642 ありえないです。class bをaaを渡してnewした時初めてthis.dataに入れようとしますよね ここでエラーになるってことはaaは入ってるんです
645 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 20:17:31 ] ブレークポイント設定してaa.data;のところにカーソルあててみなよ aaがnullになってるから
646 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 20:20:49 ] nullになってました 自信あったのにショックです ありがとうです
647 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 20:28:51 ] エラーが出てるけど、自信があるのでデバッグしません!
648 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 20:29:49 ] >>634 ref 使う方法。変態のきわみだ。 delegate void Alias(ref int i); static void Main() { int bbbb_ccccc_ddddd = 0; ((Alias) delegate(ref int i) { i = 98765; })(ref bbbb_ccccc_ddddd); Console.WriteLine(bbbb_ccccc_ddddd); }
649 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 20:30:21 ] 事前にエラーがわかる静的言語は便利なことがよくわかるよな 特に初心者の人にとっては
650 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 21:09:57 ] 構造体の初期化はどうかけばいいのでしょうか Vector3 a = {0.0f, 0.0f, 0.0f};
651 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 21:12:41 ] コンストラクタが使えるだろ
652 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 21:12:52 ] Vector3 a = new Vector3(0.0f, 0.0f, 0.0f);
653 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 21:13:05 ] 構造体内にコンストラクタを書いてそこで初期化
654 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 21:18:52 ] thx!
655 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 21:20:18 ] >>633 部分信頼とかセキュリティ上の理由でunsafeコードを実行させてくれない仕組みに引っ掛かるとか。
656 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 21:24:22 ] struct Data { int a, b, c, d, e......; } class Cupsel { Data data; }
657 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 21:49:48 ] >>655 はーなるほど。そういう仕組みがあったのねぇ セキュリティポリシーによるようだね。通常はローカルだと問題ないのかな 今までなんも考えなかったわ。ありがとう
658 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 23:01:07 ] System.Drawing.Graphics g = Graphics.FromImage(backBuffer); g.Clear(Color.Black); g.DrawImage((Image)image, new Point()); Graphics.FromHwnd(panel1.Handle).DrawImage((Image)backBuffer, new Point()); WinFormsで、高速に、ちらつかせずに画像表示をさせたいんですが どうやるのがいいんでしょうか? 描画するまで画面を更新されないようにするやり方がわかりません・・ それと、加算合成とかをするにはDrawImageでは無理そうですがどうすれば。
659 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 00:02:18 ] ちらつき防止はコントロールのDoubleBufferedでいけるんじゃないの? あと、Graphics.FromHwnd(panel1.Handle)よりもpanel1.CreateGraphics()のほうが普通だと思う。
660 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 00:02:33 ] >>634 話は戻るが、そこでusingだ。
661 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 00:05:46 ] >>618 分かる人いませんか?
662 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 00:26:07 ] 何だろう。よく分からんけど、バージョン違いのアセンブリを参照してるとか? 参照設定はどうなってる?
663 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 01:02:12 ] >>660 usingディレクティブの別名は名前空間と型名だけだったと思うが、 質問者は変数の別名が欲しいといってるんじゃないのかな?
664 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 01:23:36 ] >>662 DirectX関係で参照してるのは DirectX Direct3D Direct3DX DirectInput DirectSound です Direct3DXのバージョンは1.0.2911.0で他のものより新しいのを使ってたんですけど バージョンをそろえてみても同じエラーが出ます
665 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 02:44:15 ] >>664 CS0121? msdn.microsoft.com/en-us/library/ky5f1hz8.aspx どうやらオーバーロードなどをしていて,複数の選択肢が暗黙的な型変換で,動作が決定不能になる時に発せられるらしい. 状況によって変わってくるから,他の部分で名前と名前,型と型がバッティングしていないか確かめてみたら? あと,なんだか Microsoft.DirectX.Direct3D.FontDescription で検索すると,成功している人が少ない雰囲気.
666 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 07:06:03 ] アクセス制限機能つきのアプリを作りたいです。 ユーザ権限やパスワード管理機能つけたいんだけど、 一から作るしかないですか? .NET Framework 2.0 ならいいライブラリがありそうだけど見つけきれません。。。
667 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 07:51:41 ] 使ったことないけど、System.Security名前空間から適切な制限を見つけてDemaidメソッド呼び出せばいいんじゃね?
668 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 10:34:17 ] System.Windows.Form.WebBrowserをIE8に変更できませんか? OSのIEは8に更新しました Vista + VS2008 です
669 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 10:41:42 ] >>668 更新した時点でもうなっとるがな。
670 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 15:13:53 ] windowsアプリで自動アップデート機能をつけようと思うのですが Program Files以下のファイルを更新するときは 管理者権限が必要ですよね。 Vistaの場合管理者でログインしても 普通にアプリを実行するとWindowsPrincipalはUserになっちゃいますよね。 右クリックで管理者として実行を行わないと 管理者権限で実行されませんよね。 そのため自動アップデートによるアップデートができないと思うのですが、 世に出回っているVista対応アプリはどうやって対処しているのでしょうか?
671 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 15:18:24 ] >>670 UAC の昇格をしてるでしょ。
672 名前:668 mailto:sage [2009/04/03(金) 15:21:40 ] >>669 さん 確認くんで調べたらIE7のままなんです
673 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 15:25:11 ] >>672 その結果を貼り付けてみ。互換モードになってるとかの落ちじゃないよね?
674 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 15:41:32 ] IE8 WebBrowser Control で検索したらすぐに答えが出てきたぞ ttp://blogs.msdn.com/ie/archive/2008/03/18/webbrowser-control-rendering-modes-in-ie8.aspx
675 名前:670 mailto:sage [2009/04/03(金) 16:08:08 ] >>671 ユーザが意図的に管理者として実行をして、 昇格をしてもらわないとアップデートできないので、 世に出回ってるアプリはどう対応してるのかということを質問しています。 普通に実行したときはバージョンアップの通知だけで、 通知があったら「管理者として実行」してもらうと言うことになるんでしょうか。 でもそれだとUACを知らない、年配などのライト層は ずっとバージョンアップできないってことになりますよね。 しかもそれって、自動アップデートではないですよね。
676 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 16:11:59 ] >>675 よくわからんけど、セキュリティソフトなんかは予めUAC昇格させる設定を ユーザーにさせてるんでないの? 都度か一括かの違いで
677 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 16:17:35 ] >>675 つか、何言ってんの? 「管理者として実行」しなくても、UAC の昇格を行うことはできるよ。 一般的な方法としては、マニフェストを書いておいて、そのアプリを呼び出す。 新しいバージョンがあるかを確認するアプリと、実際に更新をするアプリに分ける、 って感じだね。 Firefox も、ATOK も HP のプリンタドライバも、そんな感じでやってると 思うけど・・・。
678 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 16:24:46 ] Google ChromeがAppData内にインストールされるのは UACの昇格なしでアップデート可能にする為だって話を聞いたことがある
679 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 16:25:02 ] >>677 何言ってんのか分からないのに答えられるってすごいなぁ。 しかも最後、自信なさげなところがなんとも。
680 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 16:25:20 ] >>678 そもそも ClickOnce だし。
681 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 16:27:37 ] XPユーザーとしてはUACの昇格とかわけわかんないし怖いよ 今はそんなのも気にしなきゃならんのか
682 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 16:29:51 ] VistaユーザーだってUACなんか訳わからんよw Linuxみたいにアクセス権限だけでいいだろって突っ込まれまくりだろ
683 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 16:32:42 ] >>679 「UAC 昇格起動」と「修辞的疑問文」でくぐってからまた来てね。
684 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 16:33:35 ] 全世界の奴がMSに文句つけまくっていじめまくった結果がこれだよ そして無意味なセキュリティをつけたらフルボッコだよ
685 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 16:34:51 ] >>684 × 全世界の奴 ○ 狂ったLinuxユーザー
686 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 16:35:58 ] なんでLinuxユーザーが文句つけるんだ
687 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 16:38:37 ] >>680 ClickOnceって.NETアプリ以外でも使えたのか ClickOnceと同じ場所を使ってるだけかと思ってたよ
688 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 16:40:53 ] >>687 正確には、インストーラとして使ってる、ってとこかと。 そのおかげで、統合認証以外のプロクシを使ってると、インストールすらできないw
689 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 23:29:47 ] >>675 Verb を runas にしたら昇格するよ。 アップデータの PE わけて起動させたほうがいいかもしれないけど。 なんとなーく勘違いしてそうなので UAC についてプログラマの視点から 指摘しとくと、昇格ダイアログ出すまではプログラムで可能。 OK ボタン押したら昇格ダイアログ→OK → アップデートってやるんだよ。 あとアップデートに関して言えば、パッチパッケージにすれば明示的な 昇格はいらない(ポリシーにより不可になるし署名が要るけど)。 Program Files 以下でも。実は古くからある機能だが。 実際には、パッチは管理や検証がめんどくさくなるのであまり使われな いけどな。 >>681 Vista ユーザーからしたら XP の何もなく管理者で動くの不安になる正直 かといって Users で使おうとしたら不便極まりないし。両立できてかなり いい機能だと思うがなぁ >UAC。リダイレクトとかの機能含めてな。
690 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 00:26:26 ] >>665 はい、CS0121です 引数なしのコンストラクタを呼び出しているのに 二つ選択肢があるっていうのがちょっと理解できません・・・ ヘルプのコンパイラ エラー CS0121の使用例は理解できるんですが・・・ エラーは吐いているんですがビルドできるし正常に動作しています それも理解できないし気持ち悪いです
691 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 02:14:56 ] int a=0,b=0,c=0; int line_count = arrText.Count; ar_OKPOS = new List<int[]>[line_count]; for (int i = 0; i < ar_OKPOS.Length; i++){ ar_OKPOS[i] = new List<int[]>(new int[][] { new int[2] }); } foreach (string sOutput in arrText) { // 一行ずつ読み込んで,各行をsplitメソッドで分ける string temp = (string)arrText[a]; // string型にキャスト string[] temp2 = temp.Split(',');// splitメソッドで文字列アレイにして数える int col_count = temp2.Length; // 列数を数えているだけ string[] temp_line = sOutput.Split(','); for(int i=0;i<temp_line.Length;i++) { for(int k=0;k<2;k++){ i = i + k; ar_OKPOS[a][b][c]=Convert.ToInt32(temp_line[i]); c++; } c = 0; b++; } b = 0; a++; }
692 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 02:24:35 ] すいません 誤爆してしました
693 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 08:52:22 ] デザインパターンとか全然勉強せずにプログラマやってるけど、勉強したほうがいいのかな?
694 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 08:54:14 ] デザインパターンはなんかJava臭いよな C#はオブジェクト指向至上主義じゃないから合わないんじゃない
695 名前:デフォルトの名無しさん [2009/04/04(土) 09:52:38 ] 標準のクラスライブラリでも結構それっぽいのはよくでてくるよ ただjavaと違って、MSはほとんどデザインパターン用語を使わない
696 名前:デフォルトの名無しさん [2009/04/04(土) 13:38:17 ] privateなメンバ変数もprivateなプロパティとして表示させたほうがいいですか? またメソッドでメンバ変数を利用するときなるべく引数として渡した方がいいですか? それともメソッド内でいきなり使用しても問題無いですか? たとえばクラスに以下のようなメソッド等があったとして private int _num; public void Method() int num = CalcMethod(2); private int CalcMethod(int num1) return num1+_num: こういう書き方が良いのか private int _num: public void Method() int num = CalcMethod(2, _num); private int CalcMethod(int num1. int num2) return num1+num2; こんな書き方のほうがいいのか知りたいです。 例では単なる足し算ですが、複雑な計算をしているという仮定です。
697 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 13:41:03 ] 演算要素を全て引数で取らせるならstaticにする
698 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 14:20:05 ] メソッドを呼び出す側からすれば,メソッド呼び出しはオブジェクトを操作することなので 内部状態を存分に使ってもらって構わない気がする.
699 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 15:33:03 ] ありがとう なるべく引数で渡したほうが、その中で完結するのでわかりやすい気がして じゃあ、あんまり気にしなくていいってことかな?
700 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 15:58:22 ] 計算処理のように内部状態に関係なしに定義できるものは、 内部状態非依存(static)の方が単体テストしやすい まあ、その例くらいの規模なら大して変わらないんだが
701 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 16:06:09 ] >>696 むしろそのメソッドを定義したクラスはどんな責任と制約をもってんのよ? メソッド単体じゃあなんともいえない >699 時と場合による プログラミングしやすい分かりやすさもあれば、 利用しやすいわかりやすさもある
702 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 17:48:14 ] VC#単体(他から持ってきたライブラリを使わず)で開発したソフトやゲームを 販売する場合、ライセンス等の問題ってありますか?
703 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 17:59:31 ] 場合による。
704 名前:デフォルトの名無しさん [2009/04/04(土) 21:17:48 ] ミサイル防衛システム作りたいんですがヒントだけでもください
705 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 21:25:07 ] MDIで作成した子フォームに含まれるコントロールを取得後、アクセスしたいんですが foreachでいちいちループ回さないといけない・・・ なんか他にいい方法ないでしょうか? 子フォームはアクティブな状態のものです if (!(this.ActiveMdiChild as Form == null)) { foreach (Control Ctrl in (this.ActiveMdiChild as Form).Controls) { if (Ctrl is TextBox /*例としてテキストボックス*/ ) { //処理 } } }
706 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 21:41:58 ] 全コントロールを対象に処理が必要なら foreach で回さざるを得ないだろ。 特定のコントロールのみを対象にするなら Panel か UserControl に貼り付けて 必要なコントロールへのアクセスを容易にすればいいよ。
707 名前:705 [2009/04/04(土) 21:54:17 ] ん〜じゃあ無理か Panelのリストを管理するとまた手間がかかりますしねえ・・・ どうもありがとうございました
708 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 22:05:22 ] 動的に作成する場合でもIList<>に入れればいいし、 あらかじめポトペタならコントロールが限られてるから どちらにしても最低限のループでいけるんじゃないの?
709 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 22:16:50 ] Linqでコントロールの種類ごとに連想配列に分配するクエリを作れば?
710 名前:デフォルトの名無しさん mailto:sage [2009/04/04(土) 22:29:30 ] >>702 ないよ