- 1 名前:デフォルトの名無しさん [2008/02/27(水) 18:24:40 ]
- このスレッドは
「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。 ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問など、 勇気をもって書き込んでください。 内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。 前スレ ふらっとC#,C♯,C#(初心者用) Part24 pc11.2ch.net/test/read.cgi/tech/1202028267/
- 321 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 11:57:01 ]
- 初めまして。
C# 2008 Expressを使ってます。 OpenFileDialogで、画像を選択した際にdialogのウィンドーにプレビュー画像を表示したいのですが、 いったいどうすればいいのでしょうか。
- 322 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 12:00:53 ]
- >>304
ありがと。 それでなんとかなりそうです。
- 323 名前:デフォルトの名無しさん [2008/03/05(水) 12:03:02 ]
- ボタンにUACのシールドアイコンを付加しようとしているのですが、
VS2005なので SystemIcons.Shieldが利用できません。 なので、APIから行おうとしたのですが、 internal class WinAPI { [DllImport("user32.dll", CharSet = CharSet.Unicode)] extern public static IntPtr SendMessage(IntPtr hWnd, uint msg, IntPtr wp, IntPtr lp); } 〜 WinAPI.SendMessage(Target.Handle, (UInt32)0x160c, IntPtr.Zero, (IntPtr)1); としてもシールドアイコンが表示されません。 何か間違ってるのでしょうか?
- 324 名前:321 mailto:sage [2008/03/05(水) 12:05:32 ]
- 追加でごめんなさい。
↑の件ですが、「縮小版」ではなく、クリックしたときにパッと表示してほしいんです。 あと、openFileDialogには大きさのプロパティがありませんが、 実行時にはマウスでドラッグして大きさが変えられますよね。 プログラム上で自動で変更できるんでしょうか。
- 325 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 13:10:17 ]
- >>307
ありがとうございます。 XmlSerializeでなんとか出来そうです。
- 326 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 13:29:52 ]
- >>321>>324
つまり、OpenFileDialogを拡張したいということだろ 結論から言うと、Win32API使わないと無理 cf. ttp://msdn2.microsoft.com/en-us/library/ms996463.aspx
- 327 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 13:34:58 ]
- 試しに>>174をDynamicMethodでif…else if…相当のコードを生成して
毎回リフレクションを使わないようにしてみたら10倍くらい速くなった もっと速くなると思ったんだけどなあ
- 328 名前:321 mailto:sage [2008/03/05(水) 13:43:14 ]
- >>326
ありがとうございます。 敷居が高そうですね・・。もう少し慣れてから挑戦してみます。
- 329 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 14:59:10 ]
- >>327
if else は、フィールドの数が増えると遅くなるんじゃねえの、使うならswitchだろ。
- 330 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 15:19:44 ]
- どっちもJITコンパイルされれば同じだと思うのだが
- 331 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 15:45:36 ]
- switchは遅くならないのかよっ
- 332 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 15:50:58 ]
- >>331
若干最適化は効きやすいとされる。
- 333 名前:デフォルトの名無しさん [2008/03/05(水) 16:13:40 ]
- >>330-332
おまいら今すぐC言語のスレで、コンピュータの基礎を勉強しやがれ
- 334 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 16:27:33 ]
- この場合アセンブラだろ
お前も基礎を勉強しやがれ
- 335 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 16:29:17 ]
- >>334
違うだろ、テーブルルックアップ式 goto label の勉強だ
- 336 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 16:29:20 ]
- >>327
FieldIndexerAttributeにAttributeUsage(Attribute)付けるといいかもと思った あと、>>139の言ってるのは多分FieldInfo.FieldHandle/GetFieldFromHandleの事 >>329-332 以下、MSIL生成する言語に限った話しなのでそのように 疑問があれば逆アセンブル(ildasm.exe)してみればいい 判定するのが連続した整数値じゃないときはswitchもif〜elseも大差ない 比較部分は同じで処理部分がサブルーチンかスパゲッティかって感じ 連続した整数値があれば(一部でも可)switchではその部分がまとめられる MSILから先は分からないが、多分ジャンプ先を数値的に計算してるんだと思う
- 337 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 16:34:21 ]
- switchを逆アセンブルしてみると、if,elseとgo,labelの組み合わせだよ
- 338 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 16:39:46 ]
- 値が連続したところは>>336の言うように纏められるよ
あれ手でやるのは面倒
- 339 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 16:49:22 ]
- class A
{ // ildasm.exe static void Main( string [] arg ) { System.Console.WriteLine( arg[0] ) ; switch( (int)arg[0][0] ) { case 0 : System.Console.WriteLine( 'A' ) ; break ; case 1 : System.Console.WriteLine( 'B' ) ; break ; case 2 : System.Console.WriteLine( 'C' ) ; break ; } } }
- 340 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 16:50:36 ]
- .method private hidebysig static void Main(string[] arg) cil managed
{ .entrypoint // コード サイズ 66 (0x42) .maxstack 3 .locals init (int32 V_0) IL_0000: ldarg.0 IL_0001: ldc.i4.0 IL_0002: ldelem.ref IL_0003: call void [mscorlib]System.Console::WriteLine(string) IL_0008: ldarg.0 IL_0009: ldc.i4.0 IL_000a: ldelem.ref IL_000b: ldc.i4.0 IL_000c: callvirt instance char [mscorlib]System.String::get_Chars(int32) IL_0011: stloc.0 IL_0012: ldloc.0 IL_0013: switch ( IL_0026, IL_002f, IL_0038) IL_0024: br.s IL_0041
- 341 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 16:51:27 ]
- IL_0024: br.s IL_0041
IL_0026: ldc.i4.s 65 IL_0028: call void [mscorlib]System.Console::WriteLine(char) IL_002d: br.s IL_0041 IL_002f: ldc.i4.s 66 IL_0031: call void [mscorlib]System.Console::WriteLine(char) IL_0036: br.s IL_0041 IL_0038: ldc.i4.s 67 IL_003a: call void [mscorlib]System.Console::WriteLine(char) IL_003f: br.s IL_0041 IL_0041: ret } // end of method A::Main このスレは息を吸うようにウソをつく奴が居るので注意が必要だ
- 342 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 16:55:09 ]
- まあ、間違いもあるだろうからそんなわざわざ相手逆なでするような言い方する必要はないと思うけど。
結局、IL レベルで switch 命令ありで、 JIT 時に if-else 式かテーブルルックアップ式かで最適な方選択ってこと?
- 343 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 16:57:31 ]
- 間違いっつーか、これプログラマなら常識だろ?
- 344 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 17:04:55 ]
- 自分の常識を人に押し付けるもんじゃないけど、
その常識ってのは、 MSIL が switch 命令を持ってるってのの方か、 一般に switch はルックアップテーブル使って高速化可能って話の方か、どっち?
- 345 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 17:07:01 ]
- そんな複雑な事は聞かないし、普通に学校で教えてもらえるだろ、switchの使い方。
- 346 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 17:15:14 ]
- CILのswitch命令はJavaバイトコードでいうところのtableswitch命令相当かな。
Javaバイトコードにはもう1つlookupswitchって命令もあって、CILにはこれに相当するものがない。 これがないせいでgotoだらけのコードができることもあるかもね。 あと、C#のswitch caseには文字列を突っ込むこともできて、このときはもはやswitch命令は関係なくなる。 MSのC#コンパイラは、分岐数増えてきたらDictionary<string,int>を裏で作るって実装になってたかと。
- 347 名前:346 mailto:sage [2008/03/05(水) 17:21:07 ]
- >このときはもはやswitch命令は関係なくなる。
すまん、これは言い過ぎか。 Dictionary<string,int>を使って無理矢理switch命令用のインデックスを作り出す。 が正しい。
- 348 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 17:26:34 ]
- 今、色々 IL Disasm して遊んでみてるけど、switch のコンパイル結果、そんな単純でもなさそう。
case が 0 で始まる連続な整数 → IL switch 命令 非 0 から始まっての連続 → sub してから switch 命令 完全に不連続 → beq とか brtrue の連続(= if-else と変わらない) だった。
- 349 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 17:29:51 ]
- あと、例えば、
switch(x) { case 0: xxx; break; case 4: xxx; break; case 6: xxx; break; case 9: xxx; break; } みたいなのは、0 のところだけ beq、 それから 4引いてから switch 命令、 その後さらに switch 後の default 句内で case 9 の判定するような妙なコードに。 ラベルが不連続でも、値の近い整数ならある程度最適化かけてるっぽい。
- 350 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 17:30:38 ]
- コンパイラの出力にあわせてチューンはすべきじゃないよ
高速化したいなら、コンパイラにキチンと意図の伝わる形でコードすべき 前から準にシーケンシャルに比較をする事を伝えたいなら if else if で 一括比較したいなら switch で、将来のJITのチューンにあやかれるようにね。
- 351 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 17:33:02 ]
- Cのswitchの実装は処理系依存だろ。常識って何だよ。
- 352 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 17:34:24 ]
- >>351
常識っていうのは、プログラマ間で意思疎通をするのに最低限必要な知識だよ
- 353 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 17:37:29 ]
- >>349
まあswitch命令がそういう仕様なんだから仕方ないよなぁ。 ここの議論とか参考になるかも。 ttp://www.atdot.net/~ko1/w3ml/w3ml.cgi/yarv-dev/msg/444 ttp://www.atdot.net/~ko1/w3ml/w3ml.cgi/yarv-dev/msg/452
- 354 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 17:38:13 ]
- >常識っていうのは、プログラマ間で意思疎通をするのに最低限必要な知識
これはどこに書いてありますか?
- 355 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 17:39:29 ]
- >>350
それは同意。 まあ、ただ、単なる興味本位で、IL の switch 命令に関して。 Java の tableswitch, lookupswitch とはどっちとも違うかも。 単に、スタックの先頭を見て、その値をインデックスにしてジャンプするだけっぽい。 ldloc.1 switch (0x10, 0x20, 0x30) なら、ローカル変数1の値が 0 なら 0x10 に、1 なら 0x20 にジャンプってだけ。 switch をブランチの羅列にするか、引き算/テーブル参照+switch 命令にするかは 結局コンパイラ次第ね。
- 356 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 18:19:16 ]
- こういう議論て、ふらっとスレで行われることが多いのはなんで?
- 357 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 18:49:10 ]
- 前からずっみみてきたが、誰か約一名、ウソを本当のように自信たっぷり書くアンポンタンが居ついているんだよ
コイツ以前マ板にもマルチレスで同僚がswitch文を使って if をごまかしたとか書きまくっていた奴じゃねぇかな こういうキチガイはいっぺん地獄へ落ちればいいんだよ
- 358 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 18:54:31 ]
- >>356
一旦的外れな方向に話が行った方が議論が盛り上がるからとか? >>357 そういう発言はキチガイをよりいっそう近づけるから、 キチガイがいやなら逆に抑えた方がいいよ。
- 359 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 20:11:27 ]
- paintイベントを発生させるにはRefresh()だったりを使ってイベントを発生させるけど、
任意のイベントを発生させるにはどうすればいいんでしょうか? たとえば、textbox1でKeyPressが発生した時に、そのキーがエンターキーだった場合、 button1.Clickを発生させるときなどです。
- 360 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 20:19:00 ]
- >>359
button1.Click(button1,new MouseEventArgs()); こんな感じか?
- 361 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 20:23:20 ]
- クリックをエミュレートするのはPerformClickだな
- 362 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 20:57:58 ]
- >>360
上手く動かなかったのでbutton_Clickメソッドを直接呼び出してみました。 button_Click(button1,new MouseEventArgs()); 一応意図したとおりに動きましたが他のクラスからだと呼び出せないと思うので常套手段ではなさそうですね…。
- 363 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 21:36:37 ]
- >>359
イベントは特定条件がそろった時に内部から発生するものだから、 その条件を無理やりそろえるためのメソッドがないものは基本的に無理 通常はイベントを発生させなくても、イベントハンドラで実行される処理と 同じ処理が実行されれば十分なはず その例だとPerformClickでもいい
- 364 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 21:59:49 ]
- >>363
なるほどそうですか。 同じ処理をしたいだけなので、例のbutton_Clickの処理内容を別のメソッドにして、 そのメソッドを呼び出すのが自然みたいですね。
- 365 名前:デフォルトの名無しさん [2008/03/05(水) 21:59:53 ]
- TableRow,TableCellで動的にボタンをいくつか作成して
***** 何回かループ ***** Button objButton = new Button(); objButton.ID = "Btn" + i.ToString(); objButton.Width = 50; objButton.Click += new EventHandler(Button_Click); objTableCell.Controls.Add(objButton); ***** 何回かループ ***** 縦にボタンがループの回数分並んだとして、適当に真ん中辺りのボタンを押した時、 そのボタンのIDって取得出来るの??? ちなみに"Btn" + i.ToString();で順番にボタンのIDをつけてるんだけど private void Button_Click(object sender, EventArgs e) { string 押されたボタンのID = どのようなコード?? }
- 366 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 22:03:22 ]
- ヒント: sender
- 367 名前:デフォルトの名無しさん [2008/03/05(水) 22:09:34 ]
- senderをなにかのパラメーターとして渡すのでしょうか??
それともsender.Get…という形で使うのでしょうか?^^;
- 368 名前:デフォルトの名無しさん [2008/03/05(水) 22:15:32 ]
- とりあえずsender.ToString();でなにが取れるか見てみたら
"System.Web.UI.WebControls.Button"としか取れず、色々してみても 特定のIDを取ってくることが出来ませんでした。。
- 369 名前:デフォルトの名無しさん [2008/03/05(水) 22:21:49 ]
- わかりました!ありがとうございます!
- 370 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 22:23:51 ]
- >>368
それはつまりsenderがButtonにキャストできるということ。
- 371 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 22:27:07 ]
- IDとButtonの関係がさっぱり見えない
- 372 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 23:20:43 ]
- >>368
的外れな話かもですが、 そのコントロールの定義?のところに書いてある、senderなんちゃらを使ってみるというのは? 質問です。 画面AからダイアログBを呼び表示させました。 ダイアログBのロードメソッドで条件を判定した結果によって、 ダイアログBを閉じたということにしたいのですが、うまくいきません。 ロード処理の中で、ダイアログのクロージングの処理を呼んだのですが、 処理が画面Aの呼び出し元に戻らず、ダイアログが表示されたままになってしまいます。 クロージングの中で使う、CancelEventArgsで何かパラメーターを渡せばよいのでしょうか? すいません。お願いします。
- 373 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 23:47:22 ]
- ヘルプ! IDEをダウンロードしたいのですがセットアップ中のダウンロードが
進まないのは私だけ? ttp://www.microsoft.com/japan/msdn/vstudio/express/
- 374 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 00:10:24 ]
- >>372
クロージングの処理とやらは何? イベントメソッドを呼んでるのか? それは「閉じようとしてるときに呼ばれるイベントメソッド」であって 「閉じるために」呼ぶもんじゃないが。 >>373 これまじお勧め。 全部入り。 www.microsoft.com/japan/msdn/vstudio/express/maninstall/2008/default.aspx
- 375 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 01:08:13 ]
- ListViewのColumnHeaderコレクションエディタでColumnを追加した後、
メンバの順序を↑↓で変更しても反映されないのはバグ??
- 376 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 01:49:03 ]
- 逆引き本を探しているんですが、オススメないでしょうか。
どれも似たり寄ったりでしょうか? ペイントブラシのようなものに挑戦しているので、グラフィック関係が書かれていると助かります。
- 377 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 02:13:57 ]
- >>374
いつのまにか全部入りのExpress Edition出てたのか 単品よりいいね
- 378 名前:323 [2008/03/06(木) 09:45:15 ]
- 自己解決しました。
ボタンのFlatStyleをSystemにしたら適用されるようになりました。
- 379 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 15:37:43 ]
- C#使うなって言われそうだけど、
C#でWin32ネイティブアプリ作れます?
- 380 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 15:57:57 ]
- そもそもコンパイラがネイティブコードを吐けないはず。
VC#以外のコンパイラはしらね。
- 381 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 17:45:30 ]
- だれか>>375を試してみてください。
ListViewのViewプロパティをDetailsにして、Columnsのコレクションをいくつか追加して、 コレクションエディタの↑↓で位置を変えても反映されません。 (DisplayIndexが変更されない?)
- 382 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 19:08:52 ]
- >>381
DisplayIndexってわかってるなら自分で直せばいいじゃん。 位置を変えたときに変わらないのは仕様なのかもしれないし。
- 383 名前:382 mailto:sage [2008/03/06(木) 19:20:46 ]
- うん。やっばり仕様だと思う。
コレクションエディタの順番は単にListViewItem.SubItemsの順番で、 DisplayIndexが表示の順番なんだと思う。 で、それらは必ずしも一致せず、 ListViewItemを作る部分のコードは変えずに表示の順番を変えることも出来るようになってると。 #実は俺も前に同じように順番が変わらず悩んだことがある。 そのときは.Designer.csにDisplayIndexの指定があるのを見つけて、 なんじゃこりゃと思いつつ手作業で削除した。
- 384 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 20:17:33 ]
- MySqlで日本語をインサートしようとすると文字化けするのでSET NAMESでutfやsjisを
投げてみたのですが直らず。どうしたら良いのでしょうか?。
- 385 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 20:25:29 ]
- >>384
自己レス、接続時にcharsetを投げたら上手く行きました。 他の言語ではnamesを投げて上手く行っていたのですがc#ではだめなのですね。
- 386 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 21:48:21 ]
- そんなに投げちゃいかん
- 387 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 22:21:04 ]
- >>383
そうなのね。ありがと。 でもコレクションエディタで順番変えてOK押した一瞬だけ順番が変わってすぐに戻るのがデザイナ上で見えるからバグっぽく見える…
- 388 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 22:37:24 ]
- あるクラスを作って、そのインスタンスを複数作ったとき、
それぞれのインスタンスを区別するにはどうしたらいいのですか? たとえばこんなクラスです。 public void 猫() { string kainushi public 猫(string, ka) { this.kainushi = ka } public 好きな遊び{ get; set;} }
- 389 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 22:41:45 ]
- クラスってclassで定義するんじゃないの?
- 390 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 23:01:41 ]
- 区別してどうするの?
- 391 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 23:04:34 ]
- 区別しない方が難しいだろ。
- 392 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 23:05:36 ]
- そんなこと自分で考える前に基本的な文法を勉強した方が
- 393 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 23:10:58 ]
- 猫[] cats = new 猫[5];
Console.WriteLine(cats[0] == cats[1]); Console.WriteLine(cats[0] == cats[2]); Console.WriteLine(cats[0] == cats[3]); Console.WriteLine(cats[0] == cats[4]); Console.WriteLine(cats[1] == cats[2]); Console.WriteLine(cats[1] == cats[3]); Console.WriteLine(cats[1] == cats[4]); Console.WriteLine(cats[2] == cats[3]); Console.WriteLine(cats[2] == cats[4]); Console.WriteLine(cats[3] == cats[4]); 全部Falseだろ。つまり区別できてる。
- 394 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 23:16:16 ]
- >>393
インスタンスの区別じゃないの??
- 395 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 23:17:20 ]
- 猫 → クラス
cats[0] → インスタンス cats[1] → インスタンス cats[2] → インスタンス cats[3] → インスタンス cats[4] → インスタンス
- 396 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 23:22:54 ]
- >>393
そのまま動かしたら全部trueになっちゃうw
- 397 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 23:59:33 ]
- >>395
- 398 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 00:02:36 ]
- cats[0] → null
cats[1] → null cats[2] → null cats[3] → null cats[4] → null
- 399 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 00:12:27 ]
- cats[0]がインスタンスと聞いて
- 400 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 00:26:15 ]
- ぬる猫がいると聞いて
- 401 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 00:31:44 ]
- >>393
>>393 >>393
- 402 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 00:54:49 ]
- 何で配列にしようと思ったのやら
- 403 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 00:59:17 ]
- classの規定の==はそれぞれのインスタンスを区別する
中身が全く同じでもインスタンスが違えば==はfalseになる
- 404 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 01:24:40 ]
- >>387
5分くらいで適当に考えた対策だけど多分おk 全選択してDisplayIndexを 列数-1 で並び順になる (0だと逆順)
- 405 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 01:52:53 ]
- >>404
何その裏技っぽいのwすごw でもそれでいけるね! 0指定すると逆順になるけどコレクションエディタと同期してないから同じ事だけど。
- 406 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 02:25:26 ]
- 最近C#使ってみようと思ってるんですが、
C#3.0ってもうリリースしてるんでしょうか? どうせなら3.0から勉強したいなと・・・^^;
- 407 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 02:26:47 ]
- とっくの昔にリリースしとる
- 408 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 02:30:41 ]
- >>407
そうでしたか・・・アホな質問してすいません(__) Wikipediaは見たんですが、言語仕様しか書いてなくて^^; JavaScriptっぽいらしいですね。JavaScriptは好きなんで楽しみです。 後、C#でP2Pしたいんですがお勧めのページあるでしょうか? ActionScript3.0がSocketが扱えて同期通信できるようになるって言ってたんですが 当分先そうなんでFlex2からC#に浮気してみようかなと・・・^ω^;
- 409 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 02:32:33 ]
- 「C#」「P2P」「ページ」の関連性について。
- 410 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 02:36:08 ]
- お勧めのページといったらタウンページかMSDNしかないだろう
- 411 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 02:39:20 ]
- Wikipediaにも最新リリース: C# 3.0とはっきり書いてある。
- 412 名前:406 mailto:sage [2008/03/07(金) 02:40:14 ]
- >>410
でwwwすwwwよwwwねwww まぁ進捗Blogとか貼ってくれたら儲けもんぐらいに思ってただけなんで、 適当にググッてみますわwwww
- 413 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 02:41:43 ]
- >>411
あー・・・右上の表見落としてた・・・ まじすまそ・・・あほすぎ。
- 414 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 04:08:06 ]
- なんか覚えたての単語並べてみましたって感じ?
- 415 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 11:22:30 ]
- c#からmysqlにinsert set name=val にする時にvalをエスケープしないといけないのですが
mysql側に専用のエスケープ関数などあるのでしょうか?。
- 416 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 12:55:07 ]
- それはあれだ、C#のソースコード上の文字列をエスケープする関数を探すようなものだな
例えば、文字列リテラルで \" とエスケープせずに、 " と書いて関数でエスケープしたいと
- 417 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 13:25:23 ]
- >>416
いじわる!!笑 @の他は正規表現でいちいち書き換えないとだめなのでしょうか?
- 418 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 14:03:44 ]
- 意地悪ではない。処理のレイヤーが違うから無理と暗にいってる
パーサが文字列リテラルを判別するためにエスケープが必要で 関数に渡されるのはパースされた文字列 当たり前すぎて確認してなかったけど、 valは文字列リテラルでエスケープというのは ' => '' とかのことだよな
- 419 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 14:04:50 ]
- >>417
そんなことより株取引がんばってください
- 420 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 14:21:10 ]
- >>418
言われて見て思ったのでちょっと試したのですがこういう事ですよね。 sqlでインサートできないから安易にエスケープと考えてしまったのですが問題は別にあると 認識し試行錯誤します。 string text = @"\a\a\a'''"; MessageBox.Show(text); >>419 おうよ!。みずほが下がってる><
- 421 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 18:00:24 ]
- 2008を使ってますが、2002年に出たC#の本を買っても問題ないでしょうか?
『C#によるプログラミングWindows』上下Charles Petzold (著)が気になっています。
|

|