1 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 11:01:47 ] このスレッドは 「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。 ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問など、 勇気をもって書き込んでください。 内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。 >>980 を踏んだ人は新スレを建てて下さい。 >>980 が無理な場合、話し合って新スレを建てる人を決めて下さい。 前スレ ふらっとC#,C♯,C#(初心者用) Part42 pc12.2ch.net/test/read.cgi/tech/1245836827/
653 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 03:10:20 ] WPF上での話ですが、 Canvas内でImageクラスの画像を操作(拡大・縮小・回転・移動等)したい場合、 この操作に関するコードはどのクラスに置くのがいいですか?
654 名前:デフォルトの名無しさん [2009/08/20(木) 06:42:17 ] >>644 の説明は本当に合ってるのか?
655 名前:デフォルトの名無しさん [2009/08/20(木) 07:15:10 ] ラベルやテキストボックス、コマンドボタンやラジオボタンなどのコントロールを100個ほど並べましたが、 タブオーダーがおかしくなりました。 全コントロールのタブオーダーを早く調べる方法はありますか?
656 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 07:35:06 ] >>653 むしろそれはXAML中にStoryboardで書く。
657 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 09:50:25 ] >>644 control.TopMost=true; control.TopMost=false; のほうが早くない?(試してない) >>655 表示-タブオーダー
658 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 10:07:50 ] >>657 デザイン時の話じゃ寝 >644
659 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 10:12:28 ] >>658 デザイナーなら最前面に移動のボタンがあるじゃん。
660 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 11:52:49 ] 最背面がわかっててなぜ最前面がわからないんだろうか
661 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 12:51:10 ] ってか、重なる場合はユーザーコントロールで画面をバラバラに作っておいて、 実行時にコンストラクタでAddじゃないの? 画面増えたりUI変更したら死なない?
662 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 13:32:08 ] というか、重なってるパネルは表示中の1つを除いて非表示にしておくものだと思うんだがどうか。
663 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 13:58:56 ] >>656 ありがとう。その方向でやってみます
664 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 14:28:51 ] 俺もUC.Addがいいと思う
665 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 15:04:46 ] DataGridViewでAccessのmdbをソース指定して実行したんですが、データが表示されません 他に何をいじればいいんですか?
666 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 15:11:39 ] >>665 どんなコードをかいたんだ?
667 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 15:13:58 ] コードは書いてません コントロールをフォームに置いて、右上の三角を押してデータソースを選択しただけです
668 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 15:24:08 ] 表示命令を書かなきゃ表示されるわけないだろ
669 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 15:27:10 ] うーん、設定の仕方がまずっていると思われる。 テーブルの設定も行っている?
670 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 15:42:36 ] テープルにもチェック入れました。 mdbの簡単な奴を作ってみてソースに指定したんですが表示されません 項目名は表示されるんです。 右上三角のデータのプレビューを押すとズラーっと表示されるんですが アプリ実行時には項目名だけで、データが表示されないんです。
671 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 15:43:15 ] おそらく、Form1_Load()あたりの先頭にTableAdapter.Fill()の呼び出しが 追加されてると思うけど、それをtry catchで挟んで捕捉できるようにしてみ。
672 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 15:58:47 ] わかりました。 Form1_Load()自体が存在してませんでした Form上でDataGridViewを置いたらForm1_LoadにTableAdapter.Fillが追加されて実行後データが出てきました ありがとうございました。
673 名前:デフォルトの名無しさん [2009/08/20(木) 16:05:28 ] 一方のビジブルをフォルスにして他方を前面に出すのと、 一方をブリングトゥフロントにして前面に出すのとでは、 どうちがうの?
674 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 16:19:27 ] 重なったパネルをやめてユーザーコントロールにしたんですが ユーザーコントロールにDockがなくて詰まりました。 基本クラスをUserControlからPanelにしたりとか考えたんですが名前空間が通りません。どうすればいいですか?
675 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 16:22:02 ] Webの検索サイトとかでテキストボックスにキーワードを入れて検索ボタンを押すまでの処理をC#でやる場合何を勉強すればいいんでしょうか
676 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 16:36:45 ] >>675 GUIアプリとして実装するのとWeb上のサービスとして実装するのとで話がぜんぜん変わってくる。 もっと目的を詳しく説明しないと誰も答えられない。
677 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 16:38:35 ] unmanagedなリソースを複数のインスタンスで共有したいのですが、 参照カウンタ的な形で管理するには自前で実装するしかないのでしょうか。 それとも.NETの共通ライブラリにそれをやるための仕組みが用意されていますか?
678 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 16:45:07 ] >>676 GUIアプリです。例えば検索したいキーワードの一覧も持っていて、それを順番に検索にかけヒット数などを記録していくソフトにしたいんです。
679 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 18:14:01 ] >>674 すいません解決しました。自分を親にDockさせるんじゃなくて親に子をDockさせる様に書いたらコンパイルできました。
680 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 18:24:20 ] >>678 取り敢えずHTTPとHTMLの勉強 >>677 どこまで汎用でやればいいのかって話なので無いんじゃね まあそんな大層なモンでもないだろ
681 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 19:38:00 ] >>677 SafeHandleでラップして、破棄はGCに任せれば?
682 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 20:24:28 ] >>681 どもです。前提が抜けてましたが、基本的に管理対象はCOMオブジェクトのインスタンスです。
683 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 20:47:38 ] 配列に配列を追加する方法を教えてください。 string[] textFiles = Directory.GetFiles(Path, "*.txt"); で、テキストファイル一覧を配列に入れることができます。 これにたとえば拡張子.logを追加するにはどうしたらよいですか?
684 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 20:52:25 ] ConcatしてToArrayとか Array.Resizeして残りをArray.Copyとか
685 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 20:55:08 ] Linq使えば。
686 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 21:12:10 ] >>673 フォーカスとか
687 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 22:16:33 ] >>683 string [] exts = { ".txt", ".log" }; var fileNames = from filename in System.IO.Directory.GetFiles (Path) let ext = System.IO.Path.GetExtension (filename).ToLower () where exts.Contains(ext) select System.IO.Path.GetFileName (filename); foreach (var file in fileNames){ Console.WriteLine("Filename:{0}", file); }
688 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 23:21:20 ] >>684 Array.Resizeをforで回して追加できました。 感謝します。
689 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 23:24:35 ] いやまてResizeをforとかそんなVB上がりなまねはよせ 追加する配列のLength分だけ一気に増やせば済むことだろ
690 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 23:37:13 ] ListにAddRangeが常道だろ。
691 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 23:40:34 ] >>687 古い人間なんで、こっちが分かりやすい・・・やっぱ古いんだなぁと思わざるをえない。 string[] exts = { ".txt", ".log" }; List<string> fileNames = new List<string>(); foreach (string filename in System.IO.Directory.GetFiles(Path)) { string ext = System.IO.Path.GetExtension(filename).ToLower(); if (exts.Contains(ext)) { fileNames.Add(System.IO.Path.GetFileName(filename)); } } foreach (var file in fileNames) { Console.WriteLine("Filename:{0}", file); } うーんうーん、でも近頃はXML統合機能に心惹かれてる・・・
692 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 23:57:17 ] >>689 ぜんぜんVBはやったことないです〜。 プログラム言語に触るのはC#だけの純粋初心者です。 最初、Concatを試したんです。 でもうまくいかず、見事討ち死にして、 Array.Resizeにじっくり取り組みました。 検索したサイトに、Array.Copyが書いてなかったんです。 それを真似したもんで、forで回す泥臭い展開に。 さっきこちらに報告したときに、 Array.Copyと書いてあったのに気づいて、 ひょっとして、Array.Copyを使えば、 Lengthを追加したところに、 どばっと1回でコピーできるのだろうと気づいたのですが、 とりあえずできてしまったので、それは次回のお楽しみ。 >>690 Listはまだ使ったことないので、これもそのうちお楽しみ、 と思ったら…。 >>687 >>691 ありがとうございます。 これも参考にします。 いや〜、ここ親切ですね。
693 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 00:08:47 ] >>687 試しました! これすごいです。 再帰的にゲットするには、どう改変したらよいですか?
694 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 00:19:04 ] 複数の配列の連結はそれなりに需要あるな static class ArrayEx { public static T[] Concat<T>(params T[][] arrays) { return arrays.SelectMany(array => array).ToArray(); } } >>693 Directory.GetFiles (String, String, SearchOption) ああ、完全には自分の管理下にないディレクトリを検索してUnauthorizedAccessExceptionが出るとか言い出すのはやめてね
695 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 00:42:17 ] すいません、これからC#を勉強しようと思うのですが この言語で作られたexeは.NET FrameworkがインストールされてるPCでないと動作しないのでしょうか?
696 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 00:48:05 ] >>693 static class FileHelper { public static List<string> GetFilesRecursive(string path) { List<string> result = new List<string>(); Stack<string> stack = new Stack<string>(); stack.Push(path); while (stack.Count > 0) { string dir = stack.Pop(); try { result.AddRange(Directory.GetFiles(dir)); foreach (string dn in Directory.GetDirectories(dir)) { stack.Push(dn); } } catch { } } return result; } } string [] exts = { ".txt", ".log" }; var fileNames = from filename in FileHelper.GetFilesRecursive (Path). let ext = System.IO.Path.GetExtension (filename).ToLower () where exts.Contains(ext) select System.IO.Path.GetFileName (filename); foreach (var file in fileNames){ Console.WriteLine("Filename:{0}", file); }
697 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 00:50:42 ] >>695 うん
698 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 01:19:41 ] >>695 勉強するなら、そんな程度の事をいちいち聞くな
699 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 01:25:06 ] >>695 同意だがお前は>>1 が読めんのか
700 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 01:26:28 ] 安価ミス >>699 は>>698 宛て
701 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 01:27:44 ] >>696 これおもしろい。 public delegate Func<A, R> Recursive<A, R>(Recursive<A, R> r); public static Func<A, R> Y<A, R> (Func<Func<A, R>, Func<A, R>> f) { Recursive<A, R> rec = r => a => f(r(r))(a); return rec(rec); } var RecGetFiles = Y<string, IEnumerable<string>> (f => d => System.IO.Directory.GetFiles (d).Concat (System.IO.Directory.GetDirectories (d).SelectMany (f))); foreach (var f in RecGetFiles(System.IO.Directory.GetCurrentDirectory())) { Console.WriteLine(f); }
702 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 01:47:26 ] >>699 1には正論書くなと書かれてないようだが?
703 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 01:59:19 ] >>702 >>700
704 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 02:01:36 ] >>703 1には正論書くなと書かれてないようだが?
705 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 02:05:40 ] いちいち足跡残していかなくていいから
706 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 02:07:03 ] いちいち足跡残していかなくていいから
707 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 02:35:57 ] いちいち足跡残していかなくていいから
708 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 10:56:12 ] 質問があります。 複数のjpeg画像をクリックするたびに順番にスライド表示したいと思います。 配列に、 01.jpg 02.jpg…… と入れたところまではよかったのですが、くり返しかと考えて、 private void Button_Click(object sender, EventArgs e){ for (int i = 0; i < phptos.Length -1; i++) { pictureBox.Image = Bitmap.FromFile(photos[i]); } } としたら、いちどにぜんぶ表示して終わっちゃいました。 そりゃそうなんですが、こういう場合ってどうすればいいんですか?
709 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 11:04:50 ] 現在表示中の画像のインデックスをフィールドに置いとく クリックごとに次のインデックスの画像を表示させる あと表示し終わったImageオブジェクトはDisposeする
710 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 11:10:28 ] インデックスというか、この場合は配列なりリストなりのコンテナのEnumeratorだろうな。
711 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 11:38:51 ] >>709 できました! int c = 0; private void Button_Click(object sender, EventArgs e){ pictureBox.Image.Dispose(); pictureBox.Image = Bitmap.FromFile(phoho[c]); c++; } ありがとう。 >>710 Enumeratorってどう使うんですか? 上のを書き換えるとしたら?
712 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 11:40:18 ] >>711 そのまま行くと突き抜けるぞ。
713 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 11:56:57 ] 横やりだけどyeild returnで回すのかな?
714 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 13:14:14 ] 他のアプリが使用してるデータをC#アプリから使用したいんですけど どうすればできるんでしょうか? 具体的にはMetatrader4というソフトのリアルタイムのプライスデータを取得したいです。
715 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 13:33:58 ] >>714 MT4のAPIを使えば出来ます。 dotnetremoting.com/Download/Meta1011/MT4NetSetup.exe
716 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 13:39:26 ] >>714 あと、ここもプロミシングだね。 www.openforexplatform.com/
717 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 13:39:26 ] >>713 GetEnumerator()呼ぶだけじゃん
718 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 13:41:52 ] >>717 戻るボタン追加したいときにどうする?
719 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 13:56:18 ] >>715 ありがとうございます! 実はそれちょっとまえに見つけたのですが、お恥ずかしながら 何がなにやらさっぱりわからずどうやって使っていいものかもわからず・・・orz もうちょっとよくそれ見てみます! あと、今見つけたんですけどttp://gurizuri0505.halfmoon.jp/develop/csharp/processmessage にあるようにIpcServerChannelクラスとIpcClientChannelクラスを使っても出来るんでしょうかね? にIpcServerChannelで作ったdllをMT4のカスタムインジケータに読み込んでやって 使うことができるのかな?とか想像してるんですが、その考え方はあってますか? ここでMT4の即レスもらえるとは思ってなかったんですが C#+MT4で使ってらっしゃるんですか?
720 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 14:23:56 ] >>719 使い方はここが参考になると思う。 forum.mql4.com/20644 趣味プログラマなので、これ自体は使った事ない。 昔、会社でこそっとトレードする用タスクバーアプリを作った事があるくらいだな。
721 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 02:16:19 ] 【Anti Virus】Kaspersky Lab Part87【カスペルスキー】 pc11.2ch.net/test/read.cgi/sec/1248541340/806 806 :名無しさん@お腹いっぱい。 [] :2009/08/13(木) 17:45:58 何だこのスレwww このスレを見ている人はこんなスレも見ています。(ver 0.20) 女子小中学生に性欲わかないやつは異常3 [生活サロン] 小学生のこどもおっぱいをちゅーちゅーしたい [大規模MMO] 小学生のこどもおっぱいをちゅーちゅーしたい [スカパー] 小・中学校のちょっとエッチな淡い思い出 [セピア] 小学生のこどもおっぱいをちゅーちゅーしたい [U-15タレント] 【Anti Virus】Kaspersky Lab Part87【カスペルスキー】実質Part88 pc11.2ch.net/test/read.cgi/sec/1248628556/364 364 :名無しさん@お腹いっぱい。 [sage] :2009/08/21(金) 23:20:36 23時20分 ■ おすすめ2ちゃんねる 開発中。。。 by FOX ★ このスレを見ている人はこんなスレも見ています。(ver 0.20) 女子小中学生に性欲わかないやつは異常3 [生活サロン] 小学生のこどもおっぱいをちゅーちゅーしたい [スカパー] 小・中学校のちょっとエッチな淡い思い出 [セピア] 小学生のこどもおっぱいをちゅーちゅーしたい [U-15タレント] 小学生のこどもおっぱいをちゅーちゅーしたい [大規模MMO]
722 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 02:17:01 ] ●前科2犯・中尾嘉宏(46)(=2chコテハン:FOX★)について アダルトサイト PINKちゃんねるの責任者であり、2ちゃんねるの影の責任者。 2chコテハン FOX★=中尾嘉宏(46) ■2ちゃんねる幹部・中尾嘉宏(46)(FOX★)は詐欺(出資法違反)および児童買春斡旋で 逮捕されていた。 web.archive.org/web/20050305185414/http://jsimin.at.infoseek.co.jp/opinion/newrich.html 北海道警生活環境課と札幌・中央署は1997年5月6日、インターネットを利用し 不特定多数の人から金を集めていたとして、出資法違反(預かり金の禁止) の疑いで 札幌市厚別区もみじ台南七丁目、パソコンソフト開発販売会社社長 中尾嘉宏容疑者(当時37) を逮捕した。 ■解説 中尾嘉宏(46)は、詐欺(出資法違反)と児童買春斡旋の罪とあわせて前科2犯。 2ちゃんねるのサーバー管理者で、ピンクちゃんねる管理者でもある。
723 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 02:17:44 ] 2009/6/25「Kaspersky Internet Security 2010」欧州で発売 internet.watch.impress.co.jp/docs/news/20090625_296612.html 露Kaspersky Labは24日、個人向けの総合セキュリティソフト 「Kaspersky Internet Security 2010(KIS2010)」とウイルス対策ソフト 「Kaspersky Anti-Virus 2010(KAV2010)」を発表した。 KIS2010とKAV2010は現在、ドイツ、フランス、スペイン、イタリアで販売されている。 米国と英国では7月に発売する予定。 日本国内の発売日は未定だが、Kaspersky製品を販売するジャストシステムによれば、 「例年通りであれば秋口に発売する」としている。 手を打たないと蕪価下がりますよw
724 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 02:33:18 ] プロジェクトにクラスを追加したときに、 毎回 using System.Diagnostics; を 手作業で追加しています。 クラス追加時にデフォルトで 追加されてるようにする方法はないでしょうか?
725 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 02:44:36 ] テンプレート変更すれば てか、スマートタグでは不満?
726 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 08:00:52 ] 一瞬コピペスレかと思って、>>724 を罵倒しそうになった
727 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 12:35:59 ] TestDriven.NET で IDE から 始めたテストをキャンセルする ことはできますか? キャンセル方法がわからないので、 devenv.exe を強制終了させているんですが、 もっといい方法はないかと・・・。
728 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 14:29:06 ] >>727 なんでVS標準のテスト機構を使わないの?
729 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 16:24:33 ] 2005か、2008EEだからか
730 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 17:14:28 ] string型 2008-5-3 をDateTime型に変換するにはどうすればいいですか?
731 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 17:15:21 ] 正規表現を使おうと思い、「using System.Text.RegularExpressions」と書いたのですが、 「型または名前空間名 'RegularExpressions' は名前空間 'System.Text' に存在しません。アセンブリ参照が不足しています。」 とコンパイルエラーが出てしまいました。何が悪いのでしょうか。
732 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 17:18:43 ] >>730 DateTime.TryParseExact
733 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 17:25:12 ] DateTime.Parse( string ); で一発
734 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 17:35:47 ] >>731 末尾のsいらん
735 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 17:41:12 ] >>734 どちらでも同じエラーが出ます。
736 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 17:57:34 ] エラーにちゃんと書いてある通り参照設定が足りてないんだろ どういう環境でコンパイルしたのかは知らんけど。 あと末尾のsはない方が困る
737 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 18:16:05 ] Systemの参照を追加していなかったせいのようです。 ありがとうございました。
738 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 18:38:57 ] in演算子がほしいです if (int i in {1,2,3}) みたいに書きたいです おねがいします
739 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 18:40:57 ] >>712 突き抜けてます。例外…。 >>713 yeild return ってのがあるんですか? yield return i; と使うらしい。 int c = 0; private void Button_Click(object sender, EventArgs e){ pictureBox.Image.Dispose(); pictureBox.Image = Bitmap.FromFile(phoho[c]); c++; yield return c; } 'void' は反復子インターフェイス型ではないため、'Button_Click(object, System.EventArgs)' の本体は反復子ブロックにできません まあ、forじゃないからな〜。
740 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 19:07:40 ] >>738 強いて言えばContains()メソッドだな。 だが、C#はそんな書き方をする言語じゃない。 LINQを使え。
741 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 19:25:15 ] 誰もがLINQを使えると思ってンのか? まだ.NET2.0な現場は多い。
742 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 19:26:11 ] 初心者スレに現場人が来てんじゃねえよ
743 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 19:29:03 ] 現場(苦笑)
744 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 19:31:28 ] >>741 >738 は.NET のバージョンを指定してないんだから、 C#の世界で一般的に一番便利な方法を教えておけばそれでいい。 >>742 741に言ってくれ。
745 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 19:36:04 ] >>740 Contains() そんなのあるのか! とりあえずそれで事足りそうです ありがとうございます
746 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 00:20:52 ] Math.Roundが小数点以下までしか丸められないんですけど、 1の位から下を切り捨てるにはどうすればいいんですか?
747 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 00:43:57 ] まずAPIリファレンスくらい読・・・言っても無駄か。 Floor とか Ceiling とか Truncate みてみ。
748 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 01:21:27 ] >>746 質問が日本語でオケ過ぎるんじゃない? 小数点より上で丸めたい、って意味か? たぶんぴったりのメソッドは用意されてない。 こんな風に自分で作るしかないんじゃないのか? 一応言っとくけど、多分厳密には正しい処理じゃないと思う。 // 小数点より上の場合は負の数を指定する。 double RoundEx(double x, int digit, MidpointRounding mode) { if (digit< 0) { int divider = (int)Math.Pow(10, -digit); return Math.Round(Math.Round(x / divider, 0, mode) * divider, 0); } else { return Math.Round(x, digit, mode); } }
749 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 02:13:27 ] 昨日、小数点第一位以下きりすての処理で、 10倍した後、int型にキャストし、10分の1にするというソースを発見してしまった。
750 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 02:32:16 ] decimal data = 12.34; data = Math.Round(data / 10, 0) * 10; // data = 10
751 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 02:42:47 ] え?
752 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 02:56:54 ] やりたいようにやりゃええねん
753 名前:デフォルトの名無しさん [2009/08/23(日) 04:13:43 ] Dns.GetHostEntry メソッド (String)に関してなのですが、 MSDNをには >ホスト名として空の文字列が渡されると、このメソッドはローカル ホストの IPv4 アドレスを返します。 と書いてあるのに、実際にやってみるとIPHostEntry.AddressListにIPV6のアドレスが入っています。 これはなぜでしょうか?
754 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 06:45:30 ] double data = 12.34; int a = (int)(data / 10) * 10
755 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 06:50:10 ] Accesseに繋いだんですがめちゃくちゃ重いです。 スクロール地獄です。どうすればいいと思いますか?
756 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 09:43:49 ] 死ねばいいと思うよ。
757 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 10:14:22 ] >>755 DataTableへ取り込めばいいと思うよ。
758 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 10:39:06 ] >>753 ドキュメントのミスだろ 英語版の方でツッコミが入ってる
759 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 12:05:24 ] >>757 AccesseってDataTableに取り込めるものなの?
760 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 12:11:39 ] >>759 なんで取り込めないと思ったのかこっちが聞きたいくらいだ。
761 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 12:12:59 ] SqlDataAdapter.Fillで簡単にできる
762 名前:759≠755 mailto:sage [2009/08/23(日) 12:20:36 ] DataTableに取り込み可能な"Accesse"というものの存在を知らないから訊いた
763 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 12:28:05 ] >>762 君の読解力のなさは人生をあきらめた方が良いレベル。
764 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 14:01:36 ] SとMが集まるのはこのスレであってますか?
765 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 15:13:13 ] >>747 Foolに見えたw
766 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 15:13:44 ] Javaスレから流れてきただけだろ
767 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 16:03:17 ] >>758 ありがとうございます。 英語の方見てみます。
768 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 16:19:03 ] XXXDataSet.OOODataTable test; test = this.OOOTableAdapter.GetData(); this.OOOTableAdapter.Fill( test ); GetDataしたんですが、データが表示されないです。どうすればいいですか?
769 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 16:25:36 ] あきらめたら?
770 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 16:28:18 ] あきらめました。今ADO.NET2.0を注文しましたすいません
771 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 16:33:53 ] 解決しました。 dataGridView.DataSource = test;
772 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 16:35:39 ] 酷すぎるぞ
773 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 17:21:26 ] これはひどい
774 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 17:23:04 ] みんな初心に帰ろう。
775 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 17:35:40 ] ここで聞けばいいのか分かりませんが 今MeCabという形態素解析のC#ラッパー?のMeCabSharpというのを使ってみようとしているのですが、解析された結果をひとつずつとる為に MeCab.Tagger mecab = new MeCab.Tagger(); MeCab.Node test = mecab.parseToNode("形態素解析器MeCabを使うテストです"); for (int i=1;i<=10;++i) { Console.WriteLine(test.surface); test = test.next; } とすることで一応要素を表示することが出来たのですが、要素の数の取得の仕方が分からずループの回数の設定が出来ません(上のコードの10は試してみて決めた数です) もしここを10以上にすると ハンドルされていない例外: System.NullReferenceException: オブジェクト参照がオブジェクト インスタンスに設定されていません。 というエラーが出ます。 文章が変ってもすべての要素を取り出したいのですが どのようにすればいいのでしょうか
776 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 17:40:08 ] Nextで走査してるくらいだからExistsNextNodeとかありそうだが
777 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 17:41:58 ] そういう意味合いのメソッドやらプロパティがありそうという意味だからね 実際にどんな名前で存在するかは知らんよ
778 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 17:49:07 ] >MeCab::Node は, 双方向リストとして表現されており, next, prev というメンバ変数があります. それぞれ, 次の形態素, 前の形態素を MeCab::Node クラスのインスタンスとして返します. 全形態素には, next を順次呼ぶことでアクセスできます. って書いてあるからnullきたら終端だろ多分。
779 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 17:54:16 ] nullでやってみたらいけました みなさんありがとうございました
780 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 17:55:50 ] おう
781 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 18:12:44 ] というか、初めて使うライブラリはまずデバッガで止めて、 作られたオブジェクトに何のプロパティがあるのか眺めるところから始めると思うんだが……?
782 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 18:56:53 ] dataGridView.DataSource = test; でもスクロール動作重いです どういうことですか? mdbから読みこんでるから遅いという流れなんじゃないんですか? それでインスタンスに取り込んでそれをソースに指定して重いってどうなってるんですか?
783 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 19:05:34 ] 知るかハゲ
784 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 19:40:13 ] >>782 てめぇの作りが悪い
785 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 20:10:27 ] 助けてくださいお願いします
786 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 20:49:19 ] オマエだったら、オマエが挙げた情報だけで原因までわかるか? どうしてもって言うなら、関係する箇所すべてのコードをどっかに上げてごらん。
787 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 20:57:18 ] 壁紙について教えてください。 現在の壁紙をはがすにはどうしたらよいでしょう? VBだと SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, vbNullChar, SPIF_UPDATEINIFILE Or SPIF_SENDWININICHANGE) でできるらしく、 vbNullCharは0らしいので、 n = SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "0", SPIF_SENDWININICHANGE); としてみたのですが、なにも起きないでいます。 どうすりゃよいですか? 現在の壁紙のパスを取得するにはどうしたらよいでしょう? アドバイスお願いします。
788 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 21:01:29 ] ”0”じゃなくてString.Emptyにしてみ パスはSPI_GETDESKTOP〜使えよ
789 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 21:01:31 ] GetData()で解決するんですか? これで習得したテーブルをソースにしても早くならないということは DataGridViewの限界ってことなんでしょうか? そうするとGetDataの意味がないのでこれで解決すると教えてくれた方アドバイスお願いします!
790 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 21:07:58 ] GetDataって参照を渡してるだけだから結局mdbにアクセスしてるんじゃなかろうか?
791 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 21:09:13 ] うるせぇ少しは自分で調べろ
792 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 21:18:52 ] 夏休みがまだあると思ったら、インフルでの学級閉鎖で 2学期開始が早くなってたんだな。で、宿題まだと。 こんなとこで現実逃避してないで早くやっちゃいなよ。
793 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 21:18:58 ] 頭悪すぎる
794 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 21:19:20 ] どうせ列がものすごい数とか、そんなオチだろw
795 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 21:24:22 ] >>789 仕様です。エクセルシートにコピーしてぐりぐりスクロールしてください
796 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 21:42:33 ] お前らめちゃくちゃだから 知らないのにいちいち足跡残さなくていいから
797 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 21:46:44 ] は?dataGridViewが使いものにならないの常識だろ
798 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 22:02:14 ] >>788 できました。ありがとうございます。 現在の壁紙のパスを取得するほうは、どうしたらよいでしょう?
799 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 22:04:17 ] 第三引数をStringBuilderにして渡せばいい
800 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 22:29:16 ] スレチかもしれないけど、ネットブックでVisualStudio C# express editionって結構スムーズに動くもんだね。 ちょっと驚いた。もちろん本格的にネットブックで開発しようとは思わないけど ちょっと屋外でメールとかWebをチェックするついでに小さなコード試したりするには便利かなと思った。
801 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 22:35:11 ] >>800 そういう目的で買おうかなぁって考えてたところだから、 その情報はすごく助かります。スレチだけど。。。
802 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 22:38:44 ] スレ違いだから
803 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 22:48:06 ] >>799 n = WinAPI.SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, StringBuilder, SPI_SENDWININICHANGE); ですか?
804 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 22:51:50 ] やってみたらエラーになるだろよ・・・
805 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 22:58:59 ] エラーが3つも出てます…。 'System.Text.StringBuilder' は '型' ですが、'変数' のように使用されています。 'WindowsFormsApplication1.Form1.WinAPI.SystemParametersInfo(int, int, string, int)' に最も適しているオーバーロード メソッドには無効な引数がいくつか含まれています。 引数 '3': 'System.Text.StringBuilder' から 'string' に変換できません。
806 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 23:03:37 ] >>805 少しは自分の頭で考えてみろよ
807 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 23:03:39 ] >>805 この辺でも読め msdn.microsoft.com/ja-jp/library/aa288468%28VS.71%29.aspx www.atmarkit.co.jp/fdotnet/dotnettips/024w32api/w32api.html
808 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 23:32:09 ] StringBudlderの使い方はなんとなくわかりました。 System.Text.StringBuilder sb = new System.Text.StringBuilder(); for (int i = 0; i < 1000; i++) {sb.Append("abc");} とか。 で、第3引数になにとなにをStringBuilderにすればいいんでしょう?
809 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 23:33:51 ] 駄目だコリア
810 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 23:35:31 ] ふざけてるのか??
811 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 23:38:20 ] ふざけてないです。 初心者なのでお手柔らかにお願いします。
812 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 23:58:30 ] MSDNのプラットフォーム呼び出しの項目読めよ
813 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 00:24:01 ] お前には無理だ。
814 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 00:37:32 ] 黙れ糞やるお
815 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 02:11:08 ] >>811 貴方が今の700倍優秀でも教えてもらえないです。 能力の問題ではないんです。姿勢の問題です。 自分で努力したというものが伝わってこないのです。 私達の目には楽をして答えを得ようとしているようにうつるのです。 貴方は聞きグセが付き始めています。 このクセがつくとプログラマーとしてあらゆるスタートが遅れます。 先輩方にウザがられるので、チームとしても支障が出ます。 このままでは貴方はダメになります。ゴミです。永遠の初心者です。 現時点で最良の選択は>>812 ではないかと思います。 貴方の成長を心より応援ゴミです。大事な事なので二度言いました。
816 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 03:22:21 ] Panelのドッキングなんですが、DockでTopを選んで、アプリを拡大縮小した時に、下の余白の長さは固定にしたいんですが、どうすればいいんでしょうか TopでDockした方のPanelは縦の長さが固定なんですが、固定部分を余白と逆にしたいんです。 いろいろ組み合わせて試したんですがだめなんです。教えてください。
817 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 03:26:51 ] PanelはDock.Fillにして、余白とやらをControlにでもしてそれをDock.Bottomにすれ つかAnchorの方がその場合楽な気がする
818 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 03:40:26 ] すごいできました!ありがとうございました
819 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 13:32:13 ] 正規表現を使って、s = "hoge0" と言う文字列に対して Regex r = new Regex("hoge([0-9])"); Match m = r.Match(s); とすればグループ値 m.Group[] が取得出来ますが、この逆のことを行うメソッドは ありますでしょうか?つまり "0" と "hoge([0-9])" の2つの文字列から "hoge0" を導き出しのです。
820 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 13:39:41 ] >>819 m.Valueかな?
821 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 13:49:20 ] Formで自分のウィンドウクラス名を取得するにはどうしたらいいんでしょうか? this.CreateParams.ClassNameだとnullが返ってきましたorz
822 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 13:52:31 ] GetClassName関数
823 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 13:59:31 ] >>822 おーーー!thxです!
824 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 14:32:59 ] >>820 お前、アフォだろ?
825 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 17:39:32 ] Visual Studio 2008 Express Editionでキーボードマクロを使いたいのですが、メニューを探しても 項目が見つからず、Ctrl + Shift + Rを押しても何も起きません。 Express Editionだと使えないのでしょうか?
826 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 21:00:40 ] >>819 Matchの反対ならReplaceでいいかな?
827 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 21:43:44 ] えっ?
828 名前:デフォルトの名無しさん [2009/08/24(月) 21:56:17 ] すみません。とてつもなく初歩的な質問をします。 C#でゲームを作っているのですが、Playsound()を使ってBGMと効果音を同時に演奏しようとし場合、 BGMが停止してしまいます。 効果音を演奏するときにBGMが停止しないようにするにはどうすればいいんでしょうか。
829 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 22:03:52 ] あああsage忘れたすみません
830 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 22:08:12 ] SND_ASYNC で。
831 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 22:19:10 ] PlaySoundは同時に一つしか再生できんはず 手軽なのはmciSendStringかなー
832 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 22:43:24 ] 自分でミキシング
833 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 22:50:33 ] 時間がかかる処理をバックグラウンドでやるにはどうすればいいですか? Visual C#でプロジェクト全体を検索すると、一定時間が経つとダイアログが表示されて 中止できるように、途中で処理を中止できるようにしたいんです。処理が行われている間も GUIが応答するようにしたいです。
834 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 22:53:57 ] ばっくぐらうんどわーかー
835 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 22:57:54 ] そんなもん使わず、自分でスレッド起動した方がずっと分かりやすいよ。
836 名前:833 mailto:sage [2009/08/24(月) 23:05:53 ] じゃあスレッドを使うことにします ありがとうございました。 OpenGL使う予定なのでスレッドが絡むとちょっとややこしそうですが、仕方ないですね
837 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 23:27:36 ] >>828 OpenALは?
838 名前:デフォルトの名無しさん [2009/08/25(火) 08:03:24 ] 4階層のtreeviewを作成し、ノード検索ボックスも設けましたが、 treeが全て収縮している状態で検索をかけると、検索したいノード名のルートだけではなく、検索したいノードの同レベルにある他ノードまで展開されてしまいます。 ルートだけ表示させることはできないでしょうか。
839 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 09:21:23 ] 初心者スレに変なのが沸いてるな。 煽りや荒らし以外はもう一度>>1 まぁVBスレやAPIスレにいた荒らしだろうけど
840 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 09:38:01 ] >>838 展開しなければ良いんではないだろうか どうやって検索してるんかしらんけど つーかTreeViewってWinFormにもWebにもWPFにもあるしなー > ルートだけ表示させることはできないでしょうか。 ルートって普通rootのこと指すから、こういう使い方しない方が良い
841 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 10:39:22 ] あほか
842 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 10:50:45 ] ポカーン
843 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 10:54:48 ] ∧∧ ヽ(・ω・)/ ズコー \(.\ ノ 、ハ,,、  ̄  ̄
844 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 11:13:10 ] Staticとかそういう明示的なことをしない場合、 C#でインスタンス化したメソッドは抜けているのに メモリが確保されたままっていうことはありますか? フォルダ内の数千ファイルを読み込んで 内容をDBに登録するだけのプログラムなんですが 30分ほど放っておくとメモリがタスクマネージャ上で2Gとかになっています(起動時50MB程度) ファイル読み込みループ内でファイルのIOクラスとデータベース登録クラスをインスタンス化しているので, 新しいファイルを読み込むたびに前回までのメモリが解放されているイメージなのですが, この認識って間違っていますでしょうか?
845 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 11:13:45 ] > ルートって普通rootのこと指すから そんなこと無いと思うけど。 ttp://e-words.jp/w/E383ABE383BCE38388E38387E382A3E383ACE382AFE38388E383AA.html
846 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 11:34:18 ] >>845 きみは何が言いたいのか?
847 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 11:37:59 ] >>841-843 こいつらは誰に対していってんのか
848 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 11:46:09 ] >>847 どうみても>>840 でしょ。 >>840 がいってることは正しい。 馬鹿(>>841-843 )はスルーしたほうがいいよ。
849 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 11:46:41 ] >>846 >>840 の文脈から理解出来ないの?説明するつもりはない
850 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 11:49:15 ] 空気悪いね
851 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 11:51:06 ] 昨日VSスレに居た荒しがこっちに流れてきたか?
852 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 11:59:51 ] rootはルートだろ 838が言ってるのはそりゃ「経路」だ
853 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 12:01:27 ] >>846 じゃないが >そんなこと無いと思うけど。 といっているのに、リンク先の内容は > ルートって普通rootのこと指すから と同じことが書かれていると思われるんだが。
854 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 12:04:20 ] route root
855 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 12:22:11 ] TreeViewでrouteという単語は一切使用されていない。
856 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 12:30:51 ] わざわざ調べたのか…。
857 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 12:32:00 ] >>844 C#の世界では通常メソッドはインスタンス化されない。クラスはされるけどな。 ファイルを読み込むってことは、Stream関係のオブジェクトが開放されてないんじゃないの? アンマネージドなデータを含んでるオブジェクトは明示的にDispose()してやる必要があるよ。 もしくはusing構文を使うかだ。
858 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 15:06:04 ] >>838 「ノードAが展開されている」というのは、簡単に言うと「ノードAの子ノードが見える状態」であって、 「ノードAが見える状態」ではない。 このことは理解してる? 因みに、理解していて>>838 の質問なら>>840 (前半)に帰結する。
859 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 16:37:41 ] >857 ストリームをCloseしてるだけでDisposeしていませんでした. メモリ使用量は気持ち減った感じですが, まだ上がり続けているので,もうちょっとソース見てみます ありがとうございました
860 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 16:53:03 ] DataTable SrcTable = チョメチョメ; DataTable NewTable = SrcTable.Clone(); foreach( DataRow Target in SrcTable.Select( "ColName < 1" ) ) NewTable.ImportRow( Target ); チョメチョメ = NewTable; これをLinqはどのように書くのでしょうか?
861 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 17:37:17 ] 一応managedだからこのスレでいいのだろうと思うので MFCでDLLを作ってそれをC++/CLIでラップしました 次にそれをC#やVB.netから呼び出したいのだけど文字列ですね const char *みたいなものにSystem.Stringのデータが渡せないって怒られます どうやって変換すればいいんでしょう? 配布するものなんで言語環境に依存しない形で呼び出せるようにしたいのですが
862 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 17:44:18 ] >>861 よくねえよ。C++/CLIスレがあるからそっちいけ String^で受けてmarshal_as<std::string>
863 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 17:58:19 ] >>860 DataViewでFilterとToTable使った方が楽だと思うけど なぜあえてLINQ?
864 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 18:47:38 ] >>863 LINQを使う(覚える)のが目的でした。 LINQ使えばこの手の処理がかなり簡素にできるのかなと。 構造体のlistならサンプルでなんとなくわかった(ような気がする) のですがDataTableの場合、項目名をどう書けばよいのかわか りませんでした。
865 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 20:00:44 ] >>859 StreamはCloseだけでも大丈夫だよ。 正確には大丈夫ではないが、今回の現象に関しては。 ※もちろんusingなどを使って確実にDisposeするのが正しい。 DBアクセス用のクラスの方の、接続とかの管理(Close)は大丈夫なのか?
866 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 20:02:16 ] ただ、普通に考えて2G使うってのはちょっとおかしいな。 Disposeとかだけの問題でもなさそうな気がするな。
867 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 20:12:57 ] >>864 型付きかどうかで変わるけど、 var table = (from row in table.AsEnumerable() where row.Field<int>("ColName") > 15 select row).CopyToDataTable(); ただのDataTableならこんな感じ AllowDBNullならnullチェックが必要になるが
868 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 20:41:19 ] >865-866 レスありがとうございます プロジェクト全体に「Stream」で検索掛けて関係ありそうなのは全部Close Disposeかけました (StreamReaderなども) DBに関しては DbConnection,DbTransactionのClose Dispose DbCommandのDispose を徹底しました でもまだ使用率が上がってます 現在1G使用率を上げるのに2時間かかるかんじです (ファイルサイズがバラバラなので変化には誤差があるのでしょうが) もうちょいでしょうか...w
869 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 21:02:09 ] >>862 ツンデレどうもw とりあえず文字はいけました
870 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 21:06:28 ] >>868 んー、usingの使い方知ってる?
871 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 21:48:32 ] あちこち弄る前にプロファイラで現状を把握すべき
872 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 23:01:02 ] まあ多分プロファイラよりもコードレビューしてもらうのが先なレベルの気もする。 別にプロファイラで見るのもいいんだけど。
873 名前:デフォルトの名無しさん [2009/08/25(火) 23:21:10 ] SQLでビューを作成し、できたSQLをC♯内にコーディングしました。 これって、linqだと簡単にできるの?
874 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 23:28:29 ] いや特に
875 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 23:46:01 ] LINQに対して夢を抱きすぎじゃねえのか
876 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 00:12:20 ] LINQ悪くないんだけど遅いんだよな。
877 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 00:31:17 ] 鯖で使うんでなければ大した問題にはならないでしょ 鯖で使うのは微妙
878 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 01:02:57 ] LINQって糖衣構文なだけじゃないの? 展開すると最適化のきかない冗長なコードになるのかな?
879 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 01:14:19 ] >>878 デリゲート呼び出し分のコストはかかるんで、全部インライン展開した場合と比べると5%くらい遅いことはある。 まあ、あと、変なクエリを ToArray() せずに使うと毎回クエリしなおしで遅くなることもあるけど。
880 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 01:39:12 ] 5%が「鯖で使うのは微妙」なくらい遅いの? 一部の人はどこかのブログとかををうのみにして先入観持ってる気がする
881 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 09:48:01 ] >>870-872 usingの使い方は知っていますが、接続を切るタイミングは動的にしないといけない事情がありましたので使ってません。 あとメモリリークの原因分かりました support.microsoft.com/kb/418376/ja ファイルがXMLでかつ XSL、DTDの指定があったとき WebBrowserで読み込んでInnerTextを拾ってくる使用でした. プロファイラで見たときにWebBrowserのメモリがガンガン上昇していったので気付きました。 XMLDocumentで同じようなことができないか試してみます。
882 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 09:57:26 ] | 回避策 | WebBrowser コントロールを利用しているアプリケーションを定期的に終了させて下さい。 うわお >>881 乙
883 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 10:18:14 ] 844からWebBrowserは想像できねーよw
884 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 10:53:13 ] >>883 たぶん、紙にでもならない限りむりだろうなw。
885 名前:844 mailto:sage [2009/08/26(水) 10:54:27 ] >883-884 すみませんw まさかここで引っかかってると思いもしなかったので
886 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 12:32:13 ] >>885 >すみませんw なんだよ最後の草はバカにしてるのか
887 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 13:01:17 ] 牛乳飲め
888 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 14:01:37 ] C++みたいに、引数で渡したオブジェクトの中身は触らないよ!みたいな指定って出来ませんか?
889 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 14:02:11 ] void FuncA() { Console.WriteLine("A"); } void FuncB() { Console.WriteLine("B"); } void FuncC() { Console.WriteLine("C"); } Action x; Action y; x += FuncA; x += FuncB; x += FuncC; y = x; x -= FuncB; // FuncAとFuncCが残る y -= x; // FuncBだけ残るはず y(); Bだけ表示されると思ったのですが、A, B, C全て表示されました。 x -= FuncAやx -= FuncCにした場合は、ちゃんとAだけCだけ表示されます。 なぜでしょうか?
890 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 14:34:38 ] delegate の -= はコンパイル時に Delegate.Remove に解決される。 で、Delegate.Remove の解説はこれ。 > value の呼び出しリストが source 呼び出しリスト内の隣接している一連の要素と一致する場合は、 > source の呼び出しリスト内に value の呼び出しリストが含まれていると見なされます。 > value の呼び出しリストが source の呼び出しリスト内に複数回出現する場合は、 > 最後に出現した呼び出しリストが削除されます。 x -= FuncB すると x には FuncA, FuncC というリストが残る。 y は FuncA, FuncB, FuncC というリストだから、 「リスト内の隣接している一連の要素」に一致しなくなる。
891 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 14:47:11 ] >>888 必要とされる理由がないので無い
892 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 15:00:03 ] >>888 俺もそれ欲しいんだけどなあ。 Dictionaryとか参照だけさせたいときは読み取り専用ラッパで包むしかないんだろうか。
893 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 16:28:23 ] >>867 ありがとう。参考にさせてもらいます。 思ったより長くなるんですね
894 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 17:22:34 ] >>891 このメソッドに渡すこのインスタンスは中身が変更されるんだろうか? って気になることあるじゃんか サマリーに明記するしかないのかね 例外なんかはサマリーにかけるよね
895 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 17:39:42 ] そういう場合インスタンス渡さないから気にならないなあ。
896 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 17:59:29 ] 何でもかんでもListとか要求する関数とか書いてそうだな>>892 、>>894
897 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 18:33:51 ] C++でconstを活用してない人は疑問に思わないんだろうな
898 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 18:39:25 ] 次はフレンドクラス作れるようにしろとでも言い出すのかよ バカか
899 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 18:42:19 ] 馬鹿ですけど何か文句あるか?
900 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 18:45:45 ] >>896 で、こういう場合C#ではどうするの?
901 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 18:46:37 ] >>897 学習能力衰えた脳筋はC++から出てくんなハゲ。
902 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 18:49:24 ] >>900 例となるメソッドとクラスを提示してくれよ。
903 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 19:05:34 ] C#でやるならIReadOnlyHogeとその派生のIHoge(クラスでもいいけど)を作るのが自然だと思う。 C++のconstの概念は、実質的にそういう2つのクラスを作っているも同然だって。 まあ、IList<T>とその周辺はそういう風になっていないけどさ。