1 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 18:23:31 ] このスレッドは 「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。 ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問など、 勇気をもって書き込んでください。 内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。 >>980 を踏んだ人は新スレを建てて下さい。 >>980 が無理な場合、話し合って新スレを建てる人を決めて下さい。 前スレ ふらっとC#,C♯,C#(初心者用) Part45 (実質46) pc12.2ch.net/test/read.cgi/tech/1255658236/
653 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 19:32:01 ] そういうのはParseとかTryParseで充分じゃね? 正規表現使う程のもんじゃないと思うが。 IsDigitでシコシコチェックするメソッド作るのも別にありだと思う。
654 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 19:52:04 ] >>648 リテラル文字列の参照はなくならないから、ガベコレの対象にはなり得ない
655 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 19:55:18 ] >>652 何をやって何がどうできないのか、全然わからんよ。 環境やら手順やら、落ち着いて書いてみ。
656 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 20:02:58 ] >>655 だけど、少なくとも、俺の環境(Vista 64bit + VS2008 SP1) では、 Windows フォームアプリケーションでツールボックスに Windows Media Player を追加して、 それをフォームに貼り付けて、プロパティウィンドウから PlayStateChange イベントが追加できるよ。 そんで、↓みたいな感じでイベントも取れてる。 private void axWindowsMediaPlayer1_PlayStateChange(object sender, AxWMPLib._WMPOCXEvents_PlayStateChangeEvent e) { System.Diagnostics.Debug.WriteLine(e.newState); }
657 名前:634 mailto:sage [2009/11/15(日) 20:07:58 ] >>655 AxWMPコンポーネントをデザイナで配置し、 AxWMPLibのPlayStateChangeEventHandlerを使い、曲が終了すれば、 次の配列にある曲を再生、というプログラムを作ってました。 先日、機能拡張を図ろうと、幾つかの機能(次曲移動等の簡単なもの)を制作した後、 プログラムを起動してみると、曲の終了が検知できていなく、これに気がつきました。 それまではちゃんとイベントも捉えられていたのですが、どこを編集したのかも分からなってしまい・・・
658 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 20:09:49 ] もう一度最初っから作り直せよ。
659 名前:634 mailto:sage [2009/11/15(日) 20:15:33 ] >>656 実際に試して貰ってありがとうございます。こちらの環境でも、新しくプロジェクトを作成すると、 void Form1_Load{axWMP.PlayStateChange += new AxWMPLib._WMPOCXEvents_PlayStateChangeEventHandler(ax);} void ax(object sender, AxWMPLib._WMPOCXEvents_PlayStateChangeEvent e) これでちゃんとイベントは取れています。 >>657 のソースでも同じように記載してありますが、何度そこを書き直しても駄目でした。 今気がついたのですが、>>657 のプログラムだと、新しくWMPのコンポーネントを生成しようとするとエラーが出て生成できませんでした; コンポーネント 'AxHost' を生成できませんでした。エラー メッセージ: 'System.Reflection.ReflectionTypeLoadException: 要求された型のうち 1 つまたは複数を読み込めませんでした。詳細については、LoaderExceptions プロパティを取得してください。 場所 System.Windows.Forms.Design.DocumentDesigner.AxToolboxItem.CreateComponentsCore(IDesignerHost host) 場所 System.Drawing.Design.ToolboxItem.CreateComponentsCore(IDesignerHost host, IDictionary defaultValues) 場所 System.Drawing.Design.ToolboxItem.CreateComponents(IDesignerHost host, IDictionary defaultValues) 場所 System.Windows.Forms.Design.OleDragDropHandler.CreateTool(ToolboxItem tool, Control parent, Int32 x, Int32 y, Int32 width, Int32 height, Boolean hasLocation, Boolean hasSize, ToolboxSnapDragDropEventArgs e)' >>658 かなり膨大なプログラムになってしまいましたので、書き直すのは本当に最終手段にしたく思いまして;
660 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 20:19:36 ] なんか参照とかその辺がおかしくなっちゃってるんかな。 ソース管理を使ってれば、機能拡張以前にロールバックするところだけど・・・。 変に直すより、最初っから作り直した方が早いかもよ。
661 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 20:28:38 ] >>660 ですか。。 取りあえず参照周り弄ってみて、 駄目そうなら書き直すことにします。。 ソース管理?なるものがあるんですね。調べてみます。
662 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 20:36:02 ] つーか、デザイナから配置したなら、わざわざコードでイベント書かなくても、プロパティウィンドウから 追加できるだろ? 実際に配置したコントロールと別のものを使っちゃってるんじゃないの?
663 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 20:37:48 ] 初めてなら TortoiseSVN あたりが無難かと>ソース管理
664 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 20:42:02 ] >>662 それも考えましたが、そこから書いても同じでした。 現時点でwmpコンポーネントは1つしか使ってないので、 間違うというのも無いはずなので・・・
665 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 20:51:41 ] 廃棄周りの処理の流れを追うと何かヒントがあるかもしれなかったり 知らない内に廃棄してる、あるいは廃棄と同等な処理を呼んでしまってる あるいはそこら辺の動きが理解できていなくておざなりになってる とか
666 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 20:56:10 ] あるいは意表を突いてイベントのハンドラをRemOveしと再設定してる処理がある、とか 曲再生の度にDisposeやHandleの解放もせずに新たにnewしてたりして、そっちにハンドラAddしてないとか こういう謎な時は「それはありえない」って部分含めて丸ごと疑ってみるしかない
667 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 21:04:32 ] >>665 ,666 それはないと思います。 StateChangeのイベントハンドラでプロジェクト全体に検索かけましたが、 問題有りそうな箇所は見つけられませんでした。 dispose、new周りも確認しました。 曲再生はただURIをwmpに与えているだけなので、問題は無いと思います。 これでも数日間ソースとにらめっこしてたので、 もう新しくソース書くことにしました。。
668 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 21:09:08 ] QuartzTypeLibを使用して動画再生をさせているのですが、動画表示部(Panel)のクリックを拾ってくれません クリックイベントを拾う方法を教えてください
669 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 21:09:51 ] >>668 できますん
670 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 21:32:07 ] >>644 日本語になってねぇぇぇ。 リッチテキストボックスの内容を書式込みで印刷するのは出来る。 support.microsoft.com/kb/812425/ja 「1つのRectangle構造体の中に」がイミフ。
671 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 22:53:02 ] >>669 ど、どっちなんでしょうか? 可能であれば方法を教えていただけないでしょうか?
672 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 22:57:33 ] try{ >> 1-671 } catch { //確かに重い }
673 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 23:15:08 ] >> 1-671 何でスペース入れてんの?w
674 名前:デフォルトの名無しさん [2009/11/15(日) 23:17:41 ] >>670 ありがとうございます! 会社の各店舗がお客さんに配布する広告を作成しようとしています。 大半は、DB登録済みの商品内容を表形式で印刷するだけなのですが、 用紙の左下部分に、店舗ごとのフリー記載欄を設けたいんです。 例えば 「横浜西口店ではこんなキャンペーンを行っています!」←MSゴシック太字 であったり、 「三宮店ではこの商品がお得!!!!」←MS明朝の赤字 など、店舗ごとのオリジナルコメント登録フォームを設け、 リッチテキストボックスにコメントの内容と書式を設定してもらっておき、 その書式内容をそのまま、帳票の左下部分に反映させたいんです。 PrintDocumentコントロールなどの中で、 そのようなことを実現するにはどうすればよいでしょうか。
675 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 23:58:02 ] >>674 printメソッド見ると分かるけど、GraphicsのHDCの中に印刷領域決めてその中に リッチテキストをEM_FORMATRANGE送ってレンダリングしている。 そこいら辺をゴチャゴチャと直して使えばなんとかなると思われる。 また印刷領域がGraphicsで来ることから分かるけど、普通にg.DrawXXXXとかで 他の部分も描ける。ヘッダとかフッタとか。
676 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 00:00:45 ] その辺のメソッド流用すれば印刷プレビューが作れることも確実。俺やったもの。
677 名前:デフォルトの名無しさん [2009/11/16(月) 00:42:08 ] >>675 ヘッダとかフッタ… 印刷可能領域外に描けるということ? ちなみに、印刷可能領域が用紙の端から何インチか知りたいのだけど、方法が分からない (>_<)。
678 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 03:58:09 ] ReleaseモードのときとDebugモードのときで 出力する実行ファイルの名前を変えるにはどうすればいいですか?
679 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 04:05:47 ] プロジェクトでReleaseモードのときとDebugモードのときで 出力する実行ファイルの名前を変えておけばいいよ
680 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 04:27:55 ] 馬鹿はレスしなくていいよ
681 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 04:52:27 ] バカはレスしなくていいけど 初心者相手に意味不明な専門用語をならべるベテランもレスしなくていいよ
682 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 04:54:41 ] 馬鹿は質問しなくていいよ
683 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 05:06:44 ] なんだよジェネリックって!中で足し算できないのかよ!ファック! T func<T>(T x,T y) { return x+y; } intでもdoubleでも使える関数作るとおもったらできねー!ゴミ!考えたやつ死ね!
684 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 05:11:12 ] つ dynamic .NET 4.0からだけどね。
685 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 05:26:19 ] >>683 すんげー微妙だけど一応逃げ道はあるww T func<T>(T x, T y) { return (T)Microsoft.VisualBasic.CompilerServices.Operators.AddObject(x, y); } まあ、このコードもゴミだなw
686 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 06:40:39 ] T Func<T>を.net2.0でも使えるようにしたいんだけど何か方法無い?
687 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 07:27:23 ] Generic自体は2.0からサポートされてるんだから 自分で定義したらいい。
688 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 07:53:04 ] >>678 つ [ビルド後のイベント コマンド ライン]
689 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 10:26:58 ] 完成したアプリを大幅に変更したいのですが、 現時点でバックアップを取りたいです。 出来れば毎日バックアップが残ればいいのですが、 プロジェクトのフォルダごとコピーしておく以外に良い方法はありますか。
690 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 10:53:23 ] >>689 バージョン管理ツールを使う VisualStudioがStd以上ならフリーのアドインが使えるsvnがいいかも。 まあEEでもツールや文献の多いSubversion(svn)から使い始めるのがいいかな。
691 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 10:58:59 ] git が流行ってる?
692 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 11:01:13 ] >>689 VisualSVN+AnkhSVNオヌヌメ
693 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 11:22:44 ] >>688 ありがとうございます 解決しました
694 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 11:29:00 ] >>683 定義の段階ではTが何の型かわからない訳だから たとえ中で足し算が出来ない仕様だとしても仕方無いような 渡される型にオペレータオーバライドでもできて「自型+自型と書かれた場合はどうする」が 定義出来るならテンプレ中で + が使えないとおかしいとは思う
695 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 12:34:56 ] >>691 git流行ってるけどあれは個人で使ってもあんまり旨みがなさそうな気が・・・
696 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 12:38:58 ] IComparable みたいに加減乗除もインターフェースあったらよかったのにねえ。
697 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 12:44:36 ] >>696 それって演算子のオーバーロードじゃ
698 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 12:58:12 ] ドングルみたいなUSBメモリを自分で作りたいけどハード的な知識がやっぱ必要だろしC#なんかでは作れないよね?
699 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 12:59:57 ] プロテクトするんだったら 通常アクセスしない特定のセクタに特定のデータ書き込んでおく
700 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 13:04:06 ] >>698 ハードのドライバは難しいかもしれない。 結局C/C++などでI/O処理書いてDLLにする形になると思う。
701 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 13:19:07 ] >>697 いや、インターフェースがあったら T max<T>(T a, T b) where T : IAddable, ISubable, ..... みたいなことできるよねーみたいな。 もちろん IComparable と同様に Int32 とか Double が実装してること前提だろうけど。
702 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 13:24:05 ] VC# .NET3.5、 VS2008、WinXPProで開発を行っております。 あるファイルに、下記のような列挙型が定義されています。コメントの通り、近い将来何かの値が追加される予定の列挙型です。 このような列挙型を別のファイル・別の場所で使用する場合、予定された仕様変更に備えて、Exceptionを吐いたり、何かしら忘れないような処理を入れたいと思うのですが、どのような処理がよろしいでしょうか? 一応、思いついたのは下記のようにif/elseで分けた場合には、throw new XXXXExceptionすることでしたが、これでは列挙型が変更された後、実際にプログラムを動かさない限り、追加されたことに気づけません。 できれば、コンパイル時に忘れを防ぐような方法があればいいと思っているのですが…… よろしく御回答お願いいたします。 //あるファイル。 enum Hoge { abc, def, ghi //近い将来、 jkl(?)が追加される予定。 } ---- //別のファイル Hoge hoge = Hoge.abc; if (hoge == Hoge.abc) { //何かの処理 } else if (hoge == Hoge.def) { //何かの処理 } else if (hoge == Hoge.ghi) { //何かの処理 } else { //仕様変更により、Hogeに値が追加された場合、変更を忘れないようにするための備忘録? throw new NotImplementedException(); }
703 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 13:28:24 ] >>699-700 ナイスな情報サンクス! なるほど・・・ C++とかでローレベルI/O書いて.NETから呼び出せばいいのか でその書込みアドレスは普段使わない(これまた調査が必要そうだけど・・・)位置に書き込んでおけばいいだけなのか・・・ なんとなく方向性はつかめた気がする! やれるだけやってみよう!!
704 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 13:37:08 ] >>703 汎用IOドライバ使えば読み書きできるとおもわれ。 ただし、バルク転送に限られるけど(確か)
705 名前:デフォルトの名無しさん [2009/11/16(月) 14:32:59 ] C/C++やってました。 VS2008買ってC#を勉強しようとしていますが、 エディタの設定がデフォルトでタブが空白になるような設定になっています。 タブを空白にするメリットって自分には思いつかないのですが、どうなんでしょうか。 タブをスペースにするメリットってなんですか? またそういう人は結構多いんでしょうか?
706 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 14:38:29 ] ハードタブは環境によって見かけの桁数変わるから嫌う人もいる コマンドラインでダンプする時も調整利かないから見づらい 半角空白はUnix系の人に多い気がする
707 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 14:44:44 ] あとタブ文字は元々見たままの空白文字では無いから(機能文字/プリンタの制御コードだから)、 単にソースの見栄え整えるのに処理系で変わる機能文字使いたくない/使わない って言う文化もある。 タブ文字に別の意味割り当ててる処理系もあったはず
708 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 14:46:42 ] >>706 なるほど、納得です。ありがとうございます。
709 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 14:52:45 ] VisualStudio2010ただでロードしたwww なにこれwwwインテリセンスの強さとかマジヤバくてVC#2008Expとかウンコに見えるんですがwww 機能制限とか使用期限とかあんの?
710 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 14:57:02 ] VisualStudioのスレなら誰か答えてくれるんじゃね
711 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 15:28:19 ] ttp://www.dotup.org/uploda/www.dotup.org363416.jpg これを広告したかっただけでしょう
712 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 15:43:08 ] ちょっと和んだ
713 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 16:39:58 ] 2つのListboxにContextMenuStripを関連付けた場合。ContextMenuStripのメニューがクリック された時にどちらのListboxから呼び出されたのか調べる方法はありますか?。
714 名前:713 mailto:sage [2009/11/16(月) 16:44:07 ] SourceControlで取れるのかな ちょっと行ってきます
715 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 18:35:17 ] >>709 バージョン情報の右上に残り日数が出てるだろう。
716 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 18:44:22 ] >>711 厨房仕様だな・・・・・
717 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 20:06:26 ] >>711 おー、いいねえ コードに詰まった時の気分転換になるな
718 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 20:13:13 ] >>698 USBデバイスはVendor ID(メーカー固有)、Produce ID(製品種固有)、 シリアルナンバー(個体固有)の3つの識別子を持っているから、 これらを使えばどんなUSBデバイスでもドングルとして使えそう。 (正確には、シリアルナンバーを持ってないUSBデバイスもあるんだけど、 USBメモリのように一人のユーザーが複数個使用する可能性があるデバイスでは まず間違いなくシリアルナンバーを持っているはず。) これらのIDの取得方法は、ここが参考になりそう。 ぱっと見た感じマネージドコードだけで意外と簡単に出来そう。 supermab.com/mikan.html
719 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 20:14:10 ] ソースに目がいかない
720 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 20:21:41 ] 無意識に長いコードを書いてしまいそうだな
721 名前:デフォルトの名無しさん [2009/11/16(月) 20:21:53 ] Winフォームアプリケーションを作成しています。 入力予定のcsvデータは、次のような内容となっています。 さくら組,Red こすもす組,White このデータを読み込んで、帳票に、1項目目の組名を印刷したいと思います。そして2項目に組名の文字の色があるので、 その文字列をそのまま引用して文字列の色を指定したいと思います。 string a; a = ゙Red゙(入力したcsvデータの内容); としたとき、aの値を直接代入して色を指定することは可能ですか? よろしくお願いいたします。
722 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 20:33:49 ] >>721 Color 構造体を引数に取るメソッドに文字列を直接与える事はできないので、 なんとかしてその文字列を基に Color 構造体の値を得る必要がある。 KnownColor 列挙体に存在する名前だけを使うのなら、 Color.FromName("色名") でその色の Color 構造体が取得できる。 だから Red や White なら偶然にもこれでOK。 でも、KnownColor 列挙体に無い色名も使うのなら、 Color.FromName メソッドは諦めて 独自の色名から rgb 値を得る Dictionary を作っておくといい。
723 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 21:01:28 ] >>677 サンプルにある e.PageBounds がページサイズ、e.MarginBounds がマージンの内側。 このサンプルはマージンの内側にリッチテキストをレンダリングするわけ。 インチ換算もサンプルをよく読むと //Convert the unit used by the .NET framework (1/100 inch) //and the unit used by Win32 API calls (twips 1/1440 inch) private const double anInch = 14.4; とある。 俺はどうしたっけかなーと、ソース確認。 // 正直、位置は適当・・・ graphics.DrawImage(logo, PageBounds.Width - 60 - logoWidth, 10, logoWidth, logoHeight); とか書いてあってフイタ。
724 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 21:30:33 ] >>702 意図的に判断文に入れていないのかどうかはコンパイラには判断できないからねー
725 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 21:39:06 ] 条件分岐だから忘れるんだろう。ということで、ClassFactory みたいな形の メソッド呼び出しにするとかどうかな? Enum じゃなくなっちゃうけど。
726 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 22:30:02 ] listviewにアイテムを追加する時にソートというか日付順に入れたいのですが、以下のような 方法だと上手く並びません。どのように書いたら上手く並べられますでしょうか?。 int insert_point = -1; foreach (ListViewItem lvis in listView1.Items) { if (DateTime.Parse(lvis.Text) < InsterDateTime) { insert_point = lvis.Index; } } if (insert_point == -1) { lvi = listView1.Items.Add(insert.DateTime); } else { lvi = listView1.Items.Insert(insert_point, insert.DateTime); }
727 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 22:37:40 ] DateTime.Parse(lvis.Text); これが 原因のような 気がする
728 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 22:38:36 ] 普通にList<DateTime>かIEnumerable<DateTime>.OrderByかなんかでソートしてから 突っ込めばいいじゃん
729 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 22:43:26 ] 一番単純には ×insert_point = lvis.Index; ○insert_point = lvis.Index+1; じゃないかな? 例えば一個しかない場合にDateTime.Parse(lvis.Text) < InsterDateTimeだった としてlvis.Index==0だから先頭に突っ込んじゃう。
730 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 22:46:58 ] >>727-729 複数のRSSを時間をずらしながら習得しているのでその度に全部List等に入れてソートするのは どうなのだろうと思うのです。それから日付が新しい(現在時刻に近い)ものほど上に持って来たい ので+1だと下に来ちゃいますよね。
731 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 22:47:14 ] ダメな人って問題の切り分けが出来ないんだな本当。 ソートはソートであって、ListViewなんか一切関係ないと思うんだが。
732 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 22:47:25 ] 他の手段は、listView1.ListViewItemSorter に IComparer 実装した無名クラス ぶちこんどけ。
733 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 22:49:39 ] ちょっと気になっているのですがDateTimeの比較は秒?に変換されてから行われているのですか?
734 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 22:50:37 ] 秒ではないな。Tick だろ。
735 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 22:51:08 ] >>702 列挙型の値が追加されるだけならswitch構文が適切じゃないかな。 defaultでNotImplementedExceptionを返してあげればいい。
736 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 22:52:25 ] >>733 なんでMSDNで調べてからものを考えないの?
737 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 22:53:10 ] msdn.microsoft.com/ja-jp/library/system.datetime.aspx
738 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 22:53:23 ] >>733 100ns刻みの内部表現で比較される
739 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 23:07:29 ] みなさん、ありがと。break;を追加したらちゃんと動きました、が何故・・・あぁ・・下に行くほど 小さくなるから当たり前ですね;。 insert_point = lvis.Index; break;
740 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 01:22:22 ] Form1.csをデザイナで開こうとすると、何故か変な文字列(XML?)が表示されるようになってしまいました。 元のようにフォームデザイナで表示するにはどのようにすれば良いでしょうか?
741 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 01:26:21 ] 手動で何かのコード追加した?
742 名前:デフォルトの名無しさん [2009/11/17(火) 01:33:25 ] >>722 ありがとうございます。 感謝感謝感謝です。
743 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 01:34:27 ] どんな文字列? 頭の2行ぐらい <?xml ...?>はいらんけど
744 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 01:36:11 ] >741 はい。ただ、何が原因なのかは分かりません。 追加部分を削除しても戻りませんので…。 ちなみに実行後は通常通りフォームが表示されます。
745 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 01:40:36 ] コンストラクタに引数増やしちゃったとか
746 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 01:41:01 ] >743 すみません、普通のHTMLのようでした。htmlファイルに突っ込んでブラウザで開くと、 こんなかんじの分が表示されます。一部抜粋 クラス Form1 はチE��インできますが、ファイルの最初��Eクラスではありません。 Visual Studio では、デザイナ��Eファイルの最初��Eクラスを使用する忁E��があります。 クラスがファイルの最初��EクラスになるよぁE��クラス コードを移動して、デザイナを再度読み込んでください、E
747 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 02:00:23 ] ああそれなったことある フォームより前の部分に自分でクラスのコードを追加したでしょ 追加したクラスを別ファイルに移せば直ると思うよ
748 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 02:30:38 ] >747 解決しました! ありがとうございます。
749 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 03:36:16 ] DirectXの音楽再生機能(using Microsoft.DirectX.AudioVideoPlayback)を使って Form上のボタンを押したときにmp3を再生する、 という動作を実現したいのですが下記のようにエラーが出て完全に詰まっています。 「FileLoadExceptionはハンドルされませんでした。 混合モード アセンブリはバージョン 'v1.1.4322' のランタイムに対して作成されており、追加の構成情報がないと 4.0 ランタイムでは読み込めません。」 (※こんな感じです→gyazo.com/4b23a2794878de446303f7841d75d8d4.png ) 音楽ファイルを読み込んでいる箇所は以下の通りですが、特に読み込みに関して問題があるとは思えません。 Audio a = new Audio("C:\\test.mp3"); a.play(); SoundPlayer等は使わずにDirectXのこの方法で再生したいのですが、助言をいただけないでしょうか?
750 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 03:41:35 ] それ自分のソースの書き方云々じゃなくてエラーメッセージにある通りなのでは dxdiagでバージョン見てみた?
751 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 08:35:25 ] Buttonコントロールってフォーカス設定されてるときに 矢印キーを押したら勝手にフォーカスうつってウザイんだけど あの設定無効化する方法ない?
752 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 08:37:04 ] >>751 親フォームになげるようにして そっちで潰せばいい コントロールへの入力を親フォームが奪う方法はぐぐれ
753 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 08:39:56 ] もしくはボタン全部に、キープレスイベントで矢印おされたらキャンセル