ふらっとC#,C♯,C#(初心者用) Part61
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2010/06/27(日) 09:05:22「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。
ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からない場合など、勇気をもって書き込んでください。
内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。
なお、テンプレ2行目が読めない回答者は邪魔なので後述のC#相談室に移動して下さい。
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■前スレ
ふらっとC#,C♯,C#(初心者用) Part60
http://pc12.2ch.net/test/read.cgi/tech/1274780512/
■関連スレ
C#, C♯, C#相談室 Part60
http://pc12.2ch.net/test/read.cgi/tech/1277576240/
VB.NET質問スレ(Part34)
http://pc12.2ch.net/test/read.cgi/tech/1270998481/
くだすれC++/CLI(初心者用)part2
http://pc12.2ch.net/test/read.cgi/tech/1268613679/
■備考
コードの量が多い場合は下記サイトを使うなどしたほうがいいかも
http://ideone.com/
コードを貼り付けてRun codeのチェックをはずしてsubmitボタンを押すと
コードを鯖側にアップして専用のアドレスが発行されます。
直接貼る場合は下記サイトなどを利用してhtmlエンコードした方が
インデントも残って見やすいです
http://kawama.jp/php/encode_html.php
0002デフォルトの名無しさん
2010/06/27(日) 12:15:540003デフォルトの名無しさん
2010/06/27(日) 12:42:320004デフォルトの名無しさん
2010/06/28(月) 21:45:450005デフォルトの名無しさん
2010/06/29(火) 00:38:260006デフォルトの名無しさん
2010/06/29(火) 10:39:50receiveの戻りが0byteなら終了と判定してたら
接続直後にたまに0byteが帰ってきていきなり切れたと判定される
だから例外が発生したら終了判定しようとしたら
相手のsocket.Closeを呼び出しても例外が発生しない
いったいどうすれば?
0007デフォルトの名無しさん
2010/06/29(火) 12:55:44メール受信ソフトはつくれないの?
0008デフォルトの名無しさん
2010/06/29(火) 12:59:45ttp://codezine.jp/article/detail/477?p=1
だるいならBASP21使えば?
00107
2010/06/29(火) 13:09:40失礼しました。
0011デフォルトの名無しさん
2010/06/29(火) 15:14:140012デフォルトの名無しさん
2010/06/29(火) 16:56:430013デフォルトの名無しさん
2010/06/29(火) 17:57:49いいんだろうけどシークバーの単位は時間だからなあ
頭から順次再生だとそれほど問題にはならないだろうけど
シークバーを動かして途中から再生の場合は指定した時間が
動画データのどの辺から始まるのかという情報を持ってないと
厳しいかもね
あれってどうやってるんだろう
0014デフォルトの名無しさん
2010/06/29(火) 17:58:49書き込むスレ間違えた
>>13は無視してw
0015デフォルトの名無しさん
2010/06/29(火) 20:29:490016デフォルトの名無しさん
2010/06/29(火) 20:36:120017デフォルトの名無しさん
2010/06/29(火) 20:36:410018デフォルトの名無しさん
2010/06/29(火) 20:44:000019デフォルトの名無しさん
2010/06/29(火) 23:47:37使えるならこの機に載せ替えようかと思うんですが
0020デフォルトの名無しさん
2010/06/29(火) 23:52:100021デフォルトの名無しさん
2010/06/29(火) 23:57:27明日にでも買ってこよう
0022デフォルトの名無しさん
2010/06/29(火) 23:58:44あとはCOM interop専用
0023デフォルトの名無しさん
2010/06/30(水) 00:08:43dynamicとかCOM相互運用とかはまだ分かってないド素人ので、そっちも追々使えるようになりたいです
0024デフォルトの名無しさん
2010/06/30(水) 00:13:48あんまり積極的に使うもんじゃない
0025デフォルトの名無しさん
2010/06/30(水) 02:25:17Form1ウィンドウからボタンをクリックして、Form2のウィンドウを表示させたいのですが、どうプログラムを組んだらよいのでしょう?
これだけじゃ分りにくいかもしれませんが、アドバイスお願いします。
0026デフォルトの名無しさん
2010/06/30(水) 02:55:390027デフォルトの名無しさん
2010/06/30(水) 07:07:28f2.Show();
これだけなんだけどもっと違うことがしたいの?
0028デフォルトの名無しさん
2010/06/30(水) 10:00:33そうです(´・ω・`)
0029デフォルトの名無しさん
2010/06/30(水) 12:14:430030デフォルトの名無しさん
2010/06/30(水) 12:20:230031デフォルトの名無しさん
2010/06/30(水) 12:49:480032デフォルトの名無しさん
2010/06/30(水) 13:00:170033デフォルトの名無しさん
2010/06/30(水) 13:01:330034デフォルトの名無しさん
2010/06/30(水) 13:26:050035デフォルトの名無しさん
2010/06/30(水) 14:41:360036デフォルトの名無しさん
2010/07/01(木) 01:37:330037デフォルトの名無しさん
2010/07/01(木) 01:55:560038デフォルトの名無しさん
2010/07/01(木) 02:03:140039デフォルトの名無しさん
2010/07/01(木) 02:05:58その円を動かしたい。
操作はキーボード上でもマウス上でも、どちらでも構いません。
だれか動かし方を教えてください。
0040デフォルトの名無しさん
2010/07/01(木) 02:54:10private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
{
Graphics g = pictureBox1.CreateGraphics();
g.Clear(Color.White);
g.DrawEllipse(Pens.Black, e.X - 30, e.Y - 30, 30, 30);
g.Dispose();
}
あくまで例だからね
0041デフォルトの名無しさん
2010/07/01(木) 14:09:55それと画面クリアしちゃったらイライラ棒にはならんぞw
0042デフォルトの名無しさん
2010/07/01(木) 17:59:29こういうのを見るといつも思う
「で、最終的にそのコードでやるやつなんて居るの?」ってw
結局ちらつき防止でダブルバッファとかやるわけで
そんな糞コードを教えて何の意味があるのか分からん
MSDNも含めてw
0043デフォルトの名無しさん
2010/07/01(木) 18:20:07操作はキーボードでもマウスでも、どちらでも構わない
要件は100%満たしてるなw
0044デフォルトの名無しさん
2010/07/01(木) 20:35:370045デフォルトの名無しさん
2010/07/02(金) 05:25:25かわりのコードをみせてやればあ〜
0046デフォルトの名無しさん
2010/07/02(金) 17:02:59Cの関数から構造体をポインタで受け取り、C#側で処理してまたポインタで結果を返す
というのはぶっちゃけ可能なんでしょうか?
C#はまだ勉強を始めたばかりで、ポインタは使用しないほうがよいと言われたのですが・・・
0047デフォルトの名無しさん
2010/07/02(金) 17:05:14ポインタ使わずとも可能なケースもある
0048デフォルトの名無しさん
2010/07/02(金) 17:21:26とかすれば頭使わなくていい
0049デフォルトの名無しさん
2010/07/02(金) 18:04:15アンマネージで確保して呼び出せば行ける
流れとしては
1.C#で構造体を作成
2.アンマネージメモリを確保
3.C#の構造体をアンマネージメモリに展開
4.アンマネージメモリのポインタをDLLに渡して呼び出す
5. 戻ってきたアンマネージメモリをC#構造体に展開
6. アンマネージメモリを解放
MCIにアクセスするライブラリを作ったけどかなり苦労した
0050デフォルトの名無しさん
2010/07/02(金) 18:06:50追加
これは他の方法でやった手法だけど
C++/CLIでラップDLLを作る方が楽かもしれない
C++の構造体もそのまま定義してアクセス出来る
結局はC#側にはそのままでは渡せないので
マネージ型の構造体に展開する必要はあるけど
0051デフォルトの名無しさん
2010/07/02(金) 19:45:15元の関数がよっぽど変な仕様でない限り、ポインタなんか使わなくても可能。
C#側からは構造体の参照渡しに見える。
ポインタとの相互変換はランタイムが勝手にやる
0052デフォルトの名無しさん
2010/07/02(金) 19:51:41int x;
int y;
} HOGE;
int WINAPI hage(HOGE *p);
たとえばこういう関数をエクスポートしているDLLがあるとしたら、C#側では、
[StructLayout.Sequential]
struct HOGE {
public int x;
public int y;
}
[DllImport("hoge.dll")]
static extern int hage(ref HOGE p);
こんな風に構造体とメソッドを定義して、普通に構造体を渡せばOK。
0053デフォルトの名無しさん
2010/07/02(金) 19:58:590054デフォルトの名無しさん
2010/07/02(金) 20:13:130055デフォルトの名無しさん
2010/07/02(金) 20:13:52冗談ですよね?
0056デフォルトの名無しさん
2010/07/02(金) 20:16:17は?ケンカ売ってんのか?
0057デフォルトの名無しさん
2010/07/02(金) 20:29:200058デフォルトの名無しさん
2010/07/02(金) 21:13:53でGetListはすでに中身があるメンバを返すだけなんだけど
これでlist[0].flg = 1;ってやるとメンバの方にも反映されるの?
反映させたいんだけど出来るの?
0059デフォルトの名無しさん
2010/07/02(金) 21:24:44いやー、マネージメモリはGCが管理しててころころ移動したりするから使えないと思ったけど
違ったかな?
0060デフォルトの名無しさん
2010/07/02(金) 21:42:38中身が参照型なら出来るだろ
0061デフォルトの名無しさん
2010/07/02(金) 21:48:51違う。
0062デフォルトの名無しさん
2010/07/02(金) 22:02:20値型ならコンパイル通らないんじゃね?
0063デフォルトの名無しさん
2010/07/02(金) 22:10:410064デフォルトの名無しさん
2010/07/02(金) 22:17:29MCIのライブラリ作った時にそれではまったから
構造体に対して意味がないDLLならいいのかもしれないけど
MCIは最初にきっちりデータを入れて渡さないといけなくて
形だけ揃えてマネージメモリ渡したらうんともすんとも言わなかったけど
0065デフォルトの名無しさん
2010/07/02(金) 22:22:090066デフォルトの名無しさん
2010/07/02(金) 22:26:270067デフォルトの名無しさん
2010/07/02(金) 22:27:030068デフォルトの名無しさん
2010/07/02(金) 22:30:51ピン止めって結局アンマネージメモリを確保してそこに構造体を展開してってのを
GCがやってるだけだよ
0069デフォルトの名無しさん
2010/07/02(金) 22:43:280070デフォルトの名無しさん
2010/07/02(金) 22:45:08ピンは呼び出す度に入れ替えが行われるから効率が悪い
0071デフォルトの名無しさん
2010/07/02(金) 22:47:090072デフォルトの名無しさん
2010/07/02(金) 22:48:110073デフォルトの名無しさん
2010/07/02(金) 22:49:200074デフォルトの名無しさん
2010/07/02(金) 22:50:450075デフォルトの名無しさん
2010/07/02(金) 22:53:400076デフォルトの名無しさん
2010/07/02(金) 23:48:31>>39の回答の方がもっと見たいわ
0077デフォルトの名無しさん
2010/07/03(土) 00:13:46何か微妙に他の質問のレスと混同している気がするけど
>>58に対して>>60が参照型ならokとレスしているが、
要素が値型なら>>58はコンパイル通らない(CS1612)から、
参照型ならという仮定は意味を成さないという指摘
0078デフォルトの名無しさん
2010/07/03(土) 00:19:30質問が漠然としすぎている。
一体全体何が聞きたいんだよ。一から十まで全部か?
アホの子の特徴だけど、自分には甘く問題を言葉を尽くして他人に説明する努力すら
惜しむくせに、他人にはエスパー的な行間読み能力と親切心を期待している。
こんな人はプログラムなんて書かなくていいよ。
0079デフォルトの名無しさん
2010/07/03(土) 07:32:290080デフォルトの名無しさん
2010/07/03(土) 07:35:35失礼しました(´・ω・`)
0081デフォルトの名無しさん
2010/07/03(土) 11:57:47割札しました(´・ω・`)
0082デフォルトの名無しさん
2010/07/03(土) 12:01:250083デフォルトの名無しさん
2010/07/03(土) 12:04:510084デフォルトの名無しさん
2010/07/03(土) 12:19:07.NETでPOPサーバからメールを受信する方法:CodeZine
http://codezine.jp/article/detail/477
めんどうならBASP21使え
0085デフォルトの名無しさん
2010/07/03(土) 13:07:20自前で組むこともできるんですね。また、商用で売ってるんですね。
ライブラリを買ってみようかな・・
どうもありがとう。
0086デフォルトの名無しさん
2010/07/03(土) 13:09:11失礼しました。
0087デフォルトの名無しさん
2010/07/03(土) 13:11:010088デフォルトの名無しさん
2010/07/03(土) 13:23:440089デフォルトの名無しさん
2010/07/03(土) 13:36:20前スレかと思って探したのに無かったから精神病んでるのかと思ったじゃねーかw
0090デフォルトの名無しさん
2010/07/03(土) 15:15:380091デフォルトの名無しさん
2010/07/03(土) 16:00:150092デフォルトの名無しさん
2010/07/04(日) 02:49:170093デフォルトの名無しさん
2010/07/04(日) 03:59:150094デフォルトの名無しさん
2010/07/04(日) 06:05:390095デフォルトの名無しさん
2010/07/04(日) 21:50:37class Form1 : Form
{
public class test : x
{
public void vsc(object sender, ScrollEventArgs e)
{
int y = vScrollBar1.Value;
}
}
private void vScrollBar1_Scroll(object sender, ScrollEventArgs e){}
}
入れ子になっている y に 外の型の vScrollBar1.Value を動的に取得したいのですが
(つまり、スクロールバーを動かすたびに y の値も自動で変化させたい)
エラー CS0038が出てしまいます。
なんとかして解決できないものでしょうか。
入れ子を解除するのはその他の部分に影響がでてしまい、自分の技量ではまだできそうにありません。
0096デフォルトの名無しさん
2010/07/04(日) 21:54:27public test(Form1 owner) {
this.owner = owner;
}
Form1 owner;
0097デフォルトの名無しさん
2010/07/04(日) 22:04:49class Form1 : Form
{
public class test : x
{
public test(Form1 owner)
{
this.owner = owner;
}
Form1 owner;
public void vsc(object sender, ScrollEventArgs e)
{
int y = vScrollBar1.Value;
}
}
private void vScrollBar1_Scroll(object sender, ScrollEventArgs e){}
}
やはり、エラーCS0038が出てしまいました。入れる場所が違ったのでしょうか。
0098デフォルトの名無しさん
2010/07/04(日) 22:06:27馬鹿かお前
0099デフォルトの名無しさん
2010/07/04(日) 22:07:14ていうかxって何? 無理に継承使わなくても.NETで継承しないとできないことってほとんど無いだろ
0100デフォルトの名無しさん
2010/07/04(日) 22:07:34分からないならプログラミング辞めて畑でも耕そう
0101デフォルトの名無しさん
2010/07/04(日) 22:11:090102デフォルトの名無しさん
2010/07/04(日) 22:14:46class Hoge : Fuga
{
/* 質問したい部分 */
}
って書くと
Fugaって何?継承する必要あんの?
とか聞かれるんですかね
0103デフォルトの名無しさん
2010/07/04(日) 22:16:20こんなスレにいるくらいだし。
0104デフォルトの名無しさん
2010/07/04(日) 22:16:41xの継承を使っている理由は、他所から手に入れたサンプルコードを弄っているからです。
どういう状況かといいますと、GLSharpというライブラリを使いたくて、GLSharp_Demoというソリューションを見ておりました。
その中のCGのカメラ操作がマウスで行われており、それをForm上のスクロールバーで変わりに操作したいと思っていたので
下手に継承を解除できなかったのです。
0105デフォルトの名無しさん
2010/07/04(日) 22:19:12毎回初歩を学べば済むことを聞きに来る気?
0106デフォルトの名無しさん
2010/07/04(日) 22:55:55いや。ただ単に相手してくれる現実の人間がいないんだよ。
0107デフォルトの名無しさん
2010/07/05(月) 13:51:260108デフォルトの名無しさん
2010/07/05(月) 18:23:40class Bでprivate 形でoverrideする方法ってありますかね?
0109デフォルトの名無しさん
2010/07/05(月) 19:15:320110デフォルトの名無しさん
2010/07/05(月) 20:32:420111デフォルトの名無しさん
2010/07/05(月) 21:01:42そんなのできたら継承の概念と矛盾しちゃうし。
EditorBrowsable属性をいじる当たりで妥協したら
0112デフォルトの名無しさん
2010/07/05(月) 21:56:190113デフォルトの名無しさん
2010/07/05(月) 21:59:39必ずしも矛盾はしないよ
インターフェイスの明示的実装みたいにキャストすれば見れるようにするって形が考えられる
まあそうすると今度はアクセス修飾子変える意味なくね?って話になるけど
0114デフォルトの名無しさん
2010/07/05(月) 23:14:50お忘れかも知れんが、たとえ親クラスの型に入っている場合でも
メソッド呼び出しで呼ばれるのはそのクラス自身のメソッドでなければならないはずだが、
>>108こんなことが出来ちゃうとそのポリシーが破綻しちゃうでしょ。
0115デフォルトの名無しさん
2010/07/05(月) 23:22:48.NETではインターフェイスメンバをprivateで実装しても構わない。キャストすればもちろん呼び出し可。
あくまでそのメンバを含む型としてオブジェクトを扱った場合にはコンパイルエラーを出すべきということ。
実際C#で明示的実装されたインターフェイスメンバのアクセスレベルはprivateになる。
0116デフォルトの名無しさん
2010/07/06(火) 00:47:520117デフォルトの名無しさん
2010/07/06(火) 20:32:06C#でwebアプリからファイルサーバー上にある
ファイルのアクセス権を取得したいと思っています。
ttp://intre.net/item_6569.html
↑のサイトを参考にコーディングしてみたのですが、
デバッグでローカル環境で実行すると正常に
アクセス権を取得できますが、IIS上で実行すると
アクセス権を取得できません。
どうすれば良いかアドバイスお願いします。
また、このあたりの情報の載っているサイト、
書籍の紹介がありましたら、教えてください。
よろしくお願いします。
0118デフォルトの名無しさん
2010/07/06(火) 21:05:53普通のIISの問題だろ?
フォルダにIISユーザーの権限与えてるか?
0119デフォルトの名無しさん
2010/07/06(火) 21:38:430120デフォルトの名無しさん
2010/07/06(火) 21:39:38違うとしたら、何というイベントでその開こうとしているURLを取得できますか?
0121デフォルトの名無しさん
2010/07/06(火) 21:51:48>はい。
いったい誰に与えてる?
0122デフォルトの名無しさん
2010/07/07(水) 09:37:04権限の問題ならとりあえずOSとIISのバージョンが必要だな
0123デフォルトの名無しさん
2010/07/07(水) 09:48:300124デフォルトの名無しさん
2010/07/07(水) 10:52:490125デフォルトの名無しさん
2010/07/07(水) 11:20:110126デフォルトの名無しさん
2010/07/07(水) 23:48:41Click? それともMouseClick?
どちらもテキストエリアでなくて、
comboBox全体をクリックしたときに割り当てられているような気がします。
テキストエリアだけのクリックを検出したいので、
アドバイスよろしくお願いします。
0127デフォルトの名無しさん
2010/07/07(水) 23:53:28コンボボックスの中のEditコントロールをサブクラス化して、メッセージを横取りすればいけそう。
0128デフォルトの名無しさん
2010/07/08(木) 22:43:370129デフォルトの名無しさん
2010/07/09(金) 00:15:310130デフォルトの名無しさん
2010/07/09(金) 00:21:190131デフォルトの名無しさん
2010/07/09(金) 00:26:561ヶ月も経ってない。
そしてこの上ない バ カ である。
それでもおけ?
0132デフォルトの名無しさん
2010/07/09(金) 00:28:42去れ。
0133デフォルトの名無しさん
2010/07/09(金) 00:29:31いいじゃないか
ここは初心者用だ
そして俺も初心者だw
0134デフォルトの名無しさん
2010/07/09(金) 00:43:52ソース貼ったほうがいいですか?
0135デフォルトの名無しさん
2010/07/09(金) 00:46:140136デフォルトの名無しさん
2010/07/09(金) 00:47:31初心者だから勝手が分らない。
どうしろというんだ?
0137デフォルトの名無しさん
2010/07/09(金) 00:48:40>>1
の微香参照
0138デフォルトの名無しさん
2010/07/09(金) 00:48:570139デフォルトの名無しさん
2010/07/09(金) 00:51:450140デフォルトの名無しさん
2010/07/09(金) 01:05:08分りました。
0141デフォルトの名無しさん
2010/07/09(金) 01:05:330142デフォルトの名無しさん
2010/07/09(金) 01:06:570143デフォルトの名無しさん
2010/07/09(金) 01:07:08課題は宿題スレでやれってだけ
0144デフォルトの名無しさん
2010/07/09(金) 01:10:44過疎ってるからこっちで聞こうとしたんだけどね。
初心者だし、こっちでもいいかなって思った
0145デフォルトの名無しさん
2010/07/09(金) 01:12:280146デフォルトの名無しさん
2010/07/09(金) 01:14:24次回からは気をつける。
そう揚げ足とりなさんな。
0147デフォルトの名無しさん
2010/07/09(金) 01:18:300148デフォルトの名無しさん
2010/07/09(金) 01:19:41どうした?
納期前か?
デスマか?
新屋だし愚痴ってみろよw
0149デフォルトの名無しさん
2010/07/09(金) 01:20:290150デフォルトの名無しさん
2010/07/09(金) 01:21:49良くそこまでして揚げ足取りにかかるな。
0151デフォルトの名無しさん
2010/07/09(金) 01:29:17プログラマーは人間性に欠けるというのは本当なんだな・・・
何でそんな奴が初心者板にいるんだよ。
0152デフォルトの名無しさん
2010/07/09(金) 01:30:350153デフォルトの名無しさん
2010/07/09(金) 07:15:350154デフォルトの名無しさん
2010/07/09(金) 12:01:38一晩寝て考えた結果がそれか
0155デフォルトの名無しさん
2010/07/09(金) 12:32:470156デフォルトの名無しさん
2010/07/09(金) 14:19:43異常に多い。
0157デフォルトの名無しさん
2010/07/09(金) 14:24:230158デフォルトの名無しさん
2010/07/09(金) 14:24:360159デフォルトの名無しさん
2010/07/09(金) 15:12:43マ板でやれ低脳
0160デフォルトの名無しさん
2010/07/09(金) 15:17:19異常者発見
0161デフォルトの名無しさん
2010/07/09(金) 20:28:01そういう奴らが圧迫してくるから初心者って質問しにくいんじゃないか。
0162デフォルトの名無しさん
2010/07/09(金) 20:42:02よう、人格異常者。おまえみたいなやつはリアルでもネットでも居場所ないから
こなくていいよ。
0163デフォルトの名無しさん
2010/07/09(金) 21:04:300164デフォルトの名無しさん
2010/07/10(土) 01:01:27何のための「匿名」掲示板だよ
そんな気にせずどんどん質問しろ
もちろん答えが返ってくるとは限らないけどな
0165デフォルトの名無しさん
2010/07/10(土) 01:40:330166名無しさん@そうだ選挙に行こう
2010/07/10(土) 09:59:56public override bool Equals(object o){
return base.Equals(RuntimeHelpers.GetObjectValue(o));
}
と
public override bool Equals(object o){
object p = System.Runtime.CompilerServices.RuntimeHelpers.GetObjectValue(o);
return p.Equals(this);
}
です。
0167名無しさん@そうだ選挙に行こう
2010/07/10(土) 10:54:180168名無しさん@そうだ選挙に行こう
2010/07/10(土) 13:21:12出来れば.NETは使いたくないのです。
0169名無しさん@そうだ選挙に行こう
2010/07/10(土) 13:24:11> 出来れば.NETは使いたくないのです。
こっちは諦めれ
0170名無しさん@そうだ選挙に行こう
2010/07/10(土) 13:24:54でも、C#で.NETを使わないアプリ、は作れない。
0171名無しさん@そうだ選挙に行こう
2010/07/10(土) 13:36:020172名無しさん@そうだ選挙に行こう
2010/07/10(土) 13:38:460173名無しさん@そうだ選挙に行こう
2010/07/10(土) 13:48:04ありがとうございます。.NETこれから慣れて行きたいと思います。
>>172 そのとおりです。
0174名無しさん@そうだ選挙に行こう
2010/07/10(土) 14:07:05あまりに本がなさ過ぎる…
0175名無しさん@そうだ選挙に行こう
2010/07/10(土) 16:43:390176名無しさん@そうだ選挙に行こう
2010/07/10(土) 18:07:23してないのは学生とか零細だけだと思う。
0177名無しさん@そうだ選挙に行こう
2010/07/10(土) 18:34:14EndPointに例えば192.168.0.100:4000みたいなのを先に入れると
192.168.0.100:4000からのデータからしか反応しないように出来るんですか?
0178名無しさん@そうだ選挙に行こう
2010/07/10(土) 18:40:470179名無しさん@そうだ選挙に行こう
2010/07/10(土) 18:43:370180名無しさん@そうだ選挙に行こう
2010/07/10(土) 19:29:44System.Net.Sockets.SocketでUDP Connectしたらどうなるんだろう
とにかくソースを簡素化するために通信相手を分離したいんだけど
0181名無しさん@そうだ選挙に行こう
2010/07/10(土) 19:33:310182名無しさん@そうだ選挙に行こう
2010/07/10(土) 19:46:42解説ってMSDNのこと?何も書いてないよ
0183名無しさん@そうだ選挙に行こう
2010/07/10(土) 19:49:570184名無しさん@そうだ選挙に行こう
2010/07/10(土) 19:51:420185名無しさん@そうだ選挙に行こう
2010/07/10(土) 19:53:230186名無しさん@そうだ選挙に行こう
2010/07/10(土) 20:07:13ほんとだ
分離するにはセレクタを自分で実装するしかなさそう
0187名無しさん@そうだ選挙に行こう
2010/07/10(土) 20:12:460188名無しさん@そうだ選挙に行こう
2010/07/10(土) 21:55:37Silverlightなら.NET使わずにC#で作れるよ
0189名無しさん@そうだ選挙に行こう
2010/07/10(土) 23:18:48.netで出来ますでしょうか?
0190名無しさん@そうだ選挙に行こう
2010/07/10(土) 23:33:240191名無しさん@そうだ選挙に行こう
2010/07/10(土) 23:53:080192名無しさん@そうだ選挙に行こう
2010/07/11(日) 00:04:130193189
2010/07/11(日) 00:05:42ありがとう!
C++,MFCから移ってきたから、よくわからんことばかりだわ。
0194名無しさん@そうだ選挙に行こう
2010/07/11(日) 00:06:020195名無しさん@そうだ選挙に行こう
2010/07/11(日) 00:06:250196名無しさん@そうだ選挙に行こう
2010/07/11(日) 00:11:44WPFスレとかSilverlightスレでもいいが
0197名無しさん@そうだ選挙に行こう
2010/07/11(日) 00:18:410198デフォルトの名無しさん
2010/07/14(水) 12:46:231.フォーム1(メイン)を起動
2.フォーム2をフォーム1のロードイベントで起動
3.重い処理を複数回行い、ログをフォーム2のテキストボックスに書き込みつつ、処理終了を待つ。
4.フォーム2を閉じる
5.フォーム1表示
■困ってること
フォーム2にはキャンセルボタンがあります。
このボタンを押すと、3番の処理を中断してフォーム2を閉じ、5番の処理に移ります。
このキャンセルボタンの実装で困っています。
3番の処理はテキストボックスにログを書きながら実行するため、フォーム2のフォームロードイベントでスレッドを使用しています。
スレッドの中断には、abortメソッドは危険なため使用していません。
現在は、キャンセルボタン内でフラグをたてて、スレッドを中断しています。(下記URLの20行目、40行目)
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10829.txt
42行目のthread.Join();が終わりません。どうやってスレッドの終了を待てば良いのでしょうか?
0199デフォルトの名無しさん
2010/07/14(水) 12:55:58Joinでメインスレッド待機
this.Invokeでメインスレッドに処理を依頼
メインスレッドが止まってるからその処理を完了できない
this.Invokeは処理が完了するまで待機するからいつまでたっても返らない
ワーカースレッドが終わらないからJoinが完了しない
0200デフォルトの名無しさん
2010/07/14(水) 16:10:27cancelled
0201デフォルトの名無しさん
2010/07/14(水) 18:01:050202デフォルトの名無しさん
2010/07/14(水) 19:10:16俺様コードを量産するからデッドロックが起きるんだろ…
0203デフォルトの名無しさん
2010/07/14(水) 20:27:40使わなくても大した失敗はしないと思うぜ
もちろん統一したフレームワークに乗せるという意味では大事だけど
0204デフォルトの名無しさん
2010/07/14(水) 22:00:000205デフォルトの名無しさん
2010/07/14(水) 22:04:110206デフォルトの名無しさん
2010/07/14(水) 22:05:280207デフォルトの名無しさん
2010/07/15(木) 00:05:570208デフォルトの名無しさん
2010/07/15(木) 11:41:41これだとtabpage.text = で書き換えられる場所を右クリックした時にイベントが取れないようですが、
お手軽に取る方法はないのでしょうか?
0209208
2010/07/15(木) 12:45:170210デフォルトの名無しさん
2010/07/15(木) 13:32:36ちゃんと画像も表示されるように保存することってできますか?
ためしにIEで選択コピーしたクリップボードの中身をWordで貼り付けたらうまく
画像もフォーマットも表示されましたが。
そのように保存することはできますか?
0211210
2010/07/15(木) 13:34:07IDataObject sentaku_data = Clipboard.GetDataObject();
if (sentaku_data.GetDataPresent(DataFormats.Html))
{
// 直前のデータがHTML形式であるとき、取得したデータを保存する(時刻、名前)
}
0212デフォルトの名無しさん
2010/07/15(木) 13:36:280213デフォルトの名無しさん
2010/07/15(木) 13:39:50ワードは勝手にsrcを読みに行っただけではないかと。
0214210
2010/07/15(木) 13:43:34普通なら、画像まで拾ってくれないというのも初めて知りました。
お二方のいうとおり、URLから画像を取得することにします。
Wordがそんなことまでして画像を表示してるとは知りませんでした(;^_^
ありがとうございました。>>212-213さん。
0215デフォルトの名無しさん
2010/07/15(木) 13:47:21揚げ足取りになってしまうが、
>HTMLそのものに画像データが含まれているわけではない(通常)
含まれていることなんてあんの??
バイトコード埋め込むってこと??
ちゃんと動くかわからんけど。
0216デフォルトの名無しさん
2010/07/15(木) 13:57:34揚げ足をとられるけどあります。
ブラウザ対応度は知らないし保存しようとするとbmpになりますけど。
src=data:image/type;base64,data
こんな感じです。
0217デフォルトの名無しさん
2010/07/15(木) 14:01:39普通に知らんかった
かしこさが1上がった気がする
0218デフォルトの名無しさん
2010/07/15(木) 14:07:140219デフォルトの名無しさん
2010/07/15(木) 14:11:36ばーか
0220デフォルトの名無しさん
2010/07/15(木) 14:12:25これは…
0222デフォルトの名無しさん
2010/07/15(木) 20:23:55(;^_^)ノシ
0223デフォルトの名無しさん
2010/07/15(木) 23:08:250224デフォルトの名無しさん
2010/07/15(木) 23:10:25本屋で立ち読みして、少しは理解できるやつ。
0225デフォルトの名無しさん
2010/07/15(木) 23:11:03お題がほしいだけならぐぐればいろいろでてくるよ
本を買うのならある程度マスターしてステップアップの関連で
投資するのが一番かと
0226デフォルトの名無しさん
2010/07/16(金) 00:41:02言語仕様はとりあえず@itでいいんじゃないのかな
ttp://www.atmarkit.co.jp/fdotnet/csharp_abc2/index/index.html
一通り学習し終えたら225が言うとおり自分がやりたいカテゴリの書籍を探すがよろし
0227デフォルトの名無しさん
2010/07/16(金) 00:53:06ttp://ufcpp.net/study/csharp/index.html
0228デフォルトの名無しさん
2010/07/16(金) 01:00:180229デフォルトの名無しさん
2010/07/16(金) 01:02:000230デフォルトの名無しさん
2010/07/16(金) 02:10:560231デフォルトの名無しさん
2010/07/16(金) 04:19:18最初に言語仕様しっかり把握するべきだったと後で後悔した。
0232デフォルトの名無しさん
2010/07/16(金) 04:45:11好きなことからやるよろし
0233デフォルトの名無しさん
2010/07/16(金) 08:15:580234デフォルトの名無しさん
2010/07/16(金) 08:53:00回収される可能性が上がるわけでもない。そのコントロールがその場でGCされるわけでもない。
DisposeとGCは関係ない。
0235デフォルトの名無しさん
2010/07/16(金) 08:55:47桁ごとにモデルを表示させるのがうまくいかない。
例えば12なら十の位に1、一の位に2を表示させたい。
配列でa[1]=1、a[0]=2って感じに格納出来ればなんとかなるんだけど
ぐぐってもよくわからなかったんだ。
教えてくださいえろい人。
0236デフォルトの名無しさん
2010/07/16(金) 09:03:38そんなレベルで躓いてたらさすがに時間の無駄。最低限の勉強は必要。
0237デフォルトの名無しさん
2010/07/16(金) 09:34:53別にちょっと考えればほんとはわかるんだけどね
まあ、今は卓上論でしかないが、数式的な考え方でOS設計程度の能力は既に俺の中で軽く確立してる。
ただ自分は目立とうとかも思わないしプログラムはただの趣味だしその程度のもの。
自分が知ってる限り、そういう「闇の」エンジニアは数人知っているが、
こういう煽りに近い初心者(俺はそれを模しただけ)いびりを見ると、
「おやおや、俺のような達人に得意げに語るだけで飽きたらず、しかも馬鹿にまでしちゃってるよ、HAHAHA」としか思わないのよね
口だけじゃあれだから、一応言っておきたいが、
これ、作り話だと思ってた親友に俺が作った物みせたら
そいつは「ビルゲイツ?おいおい、そんなレベルじゃないだろ、お前。お前は表の世界に出るなよ。世界にはバランスっていうのがある。お前なら分かるだろ?ったく」と言い、笑った。
そういう世界に俺はいるんですよ
わかった?
0239デフォルトの名無しさん
2010/07/16(金) 09:41:17なんだこれwwwwwww
0240デフォルトの名無しさん
2010/07/16(金) 10:04:430241デフォルトの名無しさん
2010/07/16(金) 10:11:04かの有名なマタドールパターンを作ったのは俺なんだけど
あらゆるアルゴリズムに対応している神をも平伏す事が出来るデザパタ
しらないだけでも無かろうに
俺がたまに下界に下りてきておまえらに声かけてるのは業界のレベルの低さを嘆いているから
初心者を演じるのもお前等に優越感を出させてやる気を出させる為っていうのがわからないの?
あんまり怒らせないでね
なんならやるかい?
プログラム勝負をさ
0242デフォルトの名無しさん
2010/07/16(金) 10:36:180243デフォルトの名無しさん
2010/07/16(金) 10:38:130244デフォルトの名無しさん
2010/07/16(金) 10:45:33C++の場合class A{ void foo(int); void bar(int); };があったとして、
typedef int A::(*int_void_signature)();
void tekitou_na_kannsuu(int_void_signature memfnp, A *array){ for(int i = 0; i < N; ++i){ (array[i].*memfnp)(99); } }
//...
tekitou_na_kannsuu(&A::foo, hairetu);
tekitou_na_kannsuu(&A::bar, hairetu);
要するに、オブジェクトが任意で同一シグネチャのメソッドを複数の中から切り替えたい場合にC#ではどうすればいいかということ
0245デフォルトの名無しさん
2010/07/16(金) 11:34:050246デフォルトの名無しさん
2010/07/16(金) 11:34:380247デフォルトの名無しさん
2010/07/16(金) 11:36:420248デフォルトの名無しさん
2010/07/16(金) 12:08:340249デフォルトの名無しさん
2010/07/16(金) 12:10:030250デフォルトの名無しさん
2010/07/16(金) 13:06:532回も再起動をさせられたんだが
「今すぐ再起動をする」と「後で再起動をする」のボタン2個表示されてるのに
「後で再起動をする」のボタンはdisabledってどういうことなの!ふざけてるの?
0251デフォルトの名無しさん
2010/07/16(金) 13:07:280252デフォルトの名無しさん
2010/07/16(金) 13:56:462010を動かせるPasoconがあるだけうらやましいよ。
C#でフリーソフト作れるのもあと何年か・・
0253デフォルトの名無しさん
2010/07/16(金) 14:04:115万もあればそれよりはずっとまともなPC買えるだろ
0254デフォルトの名無しさん
2010/07/16(金) 14:18:330255デフォルトの名無しさん
2010/07/16(金) 14:20:050256デフォルトの名無しさん
2010/07/16(金) 15:09:22評価目的でしか使えないので、オレは2008に戻した。
0257デフォルトの名無しさん
2010/07/16(金) 15:15:48ボトルネックになりやすいHDDを変えてみては?
0258デフォルトの名無しさん
2010/07/16(金) 16:15:09CPUの型番書いた方が分かりやすい。
それでも2.8GHzのCPUが低スペックだとは思わないけど。
0259デフォルトの名無しさん
2010/07/16(金) 17:00:340260デフォルトの名無しさん
2010/07/16(金) 17:10:42上記の方法だと毎回ログインしないと読み込むことができないような。。。
一回だけログインして後はurlだけ指定して読み込みたいんだけど
何かいい方法ある?
0261デフォルトの名無しさん
2010/07/16(金) 17:13:06Pentium4の2.8GHzはひどいぞ
0262デフォルトの名無しさん
2010/07/16(金) 17:45:52cookieが無効にならない限りログインは1回だけじゃん
0263デフォルトの名無しさん
2010/07/16(金) 17:48:54,各自で課題を設定しプログラム
を作成しなさい.ただし,以下の要件を満たすこと.
自作のメソッド(関数)を最低一つ作成し,Mainメソッドなど他の関数
から呼び出す.その際,実引数を与え,戻り値を受け取るようにするこ
と.
プログラム中で,条件分岐および繰り返し処理を行うこと.
入力はキーボードから行い,出力は標準出力とすること.
というものが出ているんですが・・・まったくちんぷんかんぷんで・・・誰かお力になっていただけませんでしょうか?
0264デフォルトの名無しさん
2010/07/16(金) 17:54:14課題が悪すぎる。
白紙で提出してやれ。
0265デフォルトの名無しさん
2010/07/16(金) 17:59:14課題を出した人をリプレースする必要がありそうだな
0266デフォルトの名無しさん
2010/07/16(金) 17:59:310267デフォルトの名無しさん
2010/07/16(金) 18:15:110268デフォルトの名無しさん
2010/07/16(金) 18:24:24よかったら協力していただけませんか?
0269デフォルトの名無しさん
2010/07/16(金) 18:27:26>を作成しなさい.ただし,以下の要件を満たすこと.
, ー――― 、
/ \
/ ,へ `、
/ ,Λ/ `、Λ , \ / ̄ ̄ ̄ ̄ ̄ ̄ ̄
レ| /十十 十十| _ \_ | はぁ…
/| (イ-t―,- -t―,-`'6)ー 、`、 o O |
/ `  ̄  ̄ r' \) | だっるぅー…
/ ` 、 _ / | ,_,へ| \_______
( ̄`' ̄ ̄ ̄)  ̄ ( ̄ ̄ ̄`'  ̄`)
っていきなり言われてる気がする
0270デフォルトの名無しさん
2010/07/16(金) 19:03:58足し算かべき乗計算をするプログラムを作る。
Main内で足し算かべき乗計算かで条件分岐し足し算の関数とべき乗計算の関数をつくり
Mainから呼び出す。当然戻り値は計算結果。
んで、べき乗計算の関数は引数を2つ取り、2番目の引数まで1番目の引数を掛け算しまくる。当然、ここで繰り返し処理を使う。
標準入力は、Console.In 標準出力は、Console.Outでも使っとけ。
0271デフォルトの名無しさん
2010/07/16(金) 19:54:40まったくちんぷんかんぷんってのは
授業の一回目でこんな課題が出たのか
授業に着いていけてないのかどっちだ?
0272デフォルトの名無しさん
2010/07/16(金) 20:12:37明らかに授業を真面目に聞いてないだけ。DQN破滅しろ
0273デフォルトの名無しさん
2010/07/16(金) 23:05:350274デフォルトの名無しさん
2010/07/16(金) 23:35:11できるが。
0275デフォルトの名無しさん
2010/07/17(土) 19:41:310276デフォルトの名無しさん
2010/07/17(土) 19:44:36正規表現ライブラリとかもあるだし
0277デフォルトの名無しさん
2010/07/17(土) 22:34:590278デフォルトの名無しさん
2010/07/18(日) 04:43:37今、
DLLに含まれるクラスやメソッドを取得したい
↓
リフレクションというのが必要らしい
↓
クラスライブラリを眺める
↓
使い方が分からない。ていうか知らない用語ばっか ←今ここ
って状態なんですが、用語の意味を調べると、更に分からない事が増える負のループ状態です orz
0279デフォルトの名無しさん
2010/07/18(日) 05:21:59キララ桐井でサンプル探してきてコピペ
0280デフォルトの名無しさん
2010/07/18(日) 09:47:56Assembly.CreateInstance(”アセンブリ名”)で読み込んで
Assembly.GetTypes()で型をすべて取り出して
それぞれにType.GetMethods()すればいいだけじゃ
使い方がわからねえって
Assembly.CreateInstance以外は引数いらねえよ
MSDNくらい読んでんだろうな
http://msdn.microsoft.com/ja-jp/library/f7ykdhsy%28v=VS.80%29.aspx
0281デフォルトの名無しさん
2010/07/18(日) 10:20:37いきなりなんだそれはw
0282デフォルトの名無しさん
2010/07/18(日) 10:45:45アセンブリを読み込むのはAssembly.Load
0283デフォルトの名無しさん
2010/07/18(日) 11:12:11ググる。解からない部分が無くなるまでループ繰り返し
278が欲しいのはAssembly.Loadなの?DllImportじゃなくて?
0284デフォルトの名無しさん
2010/07/18(日) 11:52:010285デフォルトの名無しさん
2010/07/18(日) 12:18:100286デフォルトの名無しさん
2010/07/18(日) 18:34:020287デフォルトの名無しさん
2010/07/18(日) 18:53:41http://msdn.microsoft.com/ja-jp/library/system.windows.forms.listview.listviewitemcollection(v=VS.80).aspx
仮想モードなら悩むまでもねーだろ
0288デフォルトの名無しさん
2010/07/18(日) 19:08:250289デフォルトの名無しさん
2010/07/18(日) 21:24:02脳味噌って不思議。
0290デフォルトの名無しさん
2010/07/18(日) 21:32:220291デフォルトの名無しさん
2010/07/18(日) 21:37:46C#のwebアプリでTextBoxの入力された文字列を取得したいです。
buttonを押されたときは、
session["TEXT"] = txtbox.Text;
という感じで正常に取得できました。
これとは別に、キーボードのEnterキーを押したときに
TextBoxの入力内容を取得するのはどうすればいいんでしょうか?
C#ではキーボード入力のハンドラがないので、javascriptのコールバックで処理しました。
その中で、Session["TEXT"] = txtbox.Text;としても値が取得できませんでした。
それで、txtbox_TextChangedというイベントを登録して、そのなかでsessionに
代入したら、基本的にはtxtboxの中身を取得できるようになりました。
しかし、IISでこのアプリを動かしてみたら、取得できることとできないことがありました。
PCとブラウザの組み合わせで取得できない頻度が変わります。
とりあえず、javascriptのコールバック処理中に
明示的にtextboxの中身を取得する方法というのはあるのでしょうか?
とりあえず、最近のお友達googleさんに聞いてもわかりませんでした。
質問する人間に知識がなく、本当に申し訳ないですが、よろしくお願いします。
0292デフォルトの名無しさん
2010/07/19(月) 01:08:30ググるとAPIでGetSystemInfo使えとかGetLogicalProcessorInformation使えとか
SmartDeviceどうとかいう倒片木な答えしか出てこないんで
誰か教えてください
そんなAPI呼ぶまでもなかったはずです
0293デフォルトの名無しさん
2010/07/19(月) 01:11:390294デフォルトの名無しさん
2010/07/19(月) 01:13:240295デフォルトの名無しさん
2010/07/19(月) 01:15:59愛してるよぉー
0296デフォルトの名無しさん
2010/07/19(月) 09:30:17とどのつまりC#ってのはDelphiなの?
0297デフォルトの名無しさん
2010/07/19(月) 09:32:23C#はゲイツに首輪を付けられた言語(最近自由になった)
0298デフォルトの名無しさん
2010/07/19(月) 09:43:22graphicsを作成したコントロールがResizeする時にGDI+で描画できる範囲が初期状態のコントロールの大きさに自動的にクリッピングされてしまいます。
何か他に設定するべき項目でも存在するんでしょうか?
0299デフォルトの名無しさん
2010/07/19(月) 10:11:18全体的に言ってることがオカシイしよく分からん。
どうせ君はGDI+についてもコントロールについてもちゃんと理解してないんだから、
初めからストレートに「最終的に何を実現したいのか」だけを書いた方がいいと思う。
0300デフォルトの名無しさん
2010/07/19(月) 10:16:560301デフォルトの名無しさん
2010/07/19(月) 12:37:04どうやってVisibleClipBoundsの大きさ変えればいいの
0302デフォルトの名無しさん
2010/07/19(月) 13:11:240303デフォルトの名無しさん
2010/07/19(月) 14:05:17左側にメインのプログラム、右側にメソッドの中身
という形で分割して
メインのプログラムが進行して行くにつれて
自動的に右側のメソッドウィンドウも変わって行くみたいな表示の仕方って
できますか?
お願いします。
0304デフォルトの名無しさん
2010/07/19(月) 14:09:06Visual Studio 2010 Part8
ttp://pc12.2ch.net/test/read.cgi/tech/1278244478/
0305デフォルトの名無しさん
2010/07/19(月) 15:00:29明示的にバッファに描きこみをしつつプログラマの決めるタイミングでOnPaint外からバッファをディスプレイへ転送する方法はありませんか?
0306デフォルトの名無しさん
2010/07/19(月) 15:16:37自分の好きなタイミングでバッファ用bmpからコントロールにDrawすればいいんじゃね?
と試さずに書いてみる
0307デフォルトの名無しさん
2010/07/19(月) 15:37:430308デフォルトの名無しさん
2010/07/19(月) 15:55:110309デフォルトの名無しさん
2010/07/19(月) 16:14:020310デフォルトの名無しさん
2010/07/19(月) 17:35:360311デフォルトの名無しさん
2010/07/19(月) 18:58:150312デフォルトの名無しさん
2010/07/19(月) 20:46:14C#は素晴らしい言語です。
0313デフォルトの名無しさん
2010/07/19(月) 20:49:03C#はusingしまくっても問題が出ないように注意して設計されてるから
基本的にすべてusingでおk
0314デフォルトの名無しさん
2010/07/19(月) 21:23:55そのせいで長ったらしいクラス名を書かないといけないんだけどな
0315デフォルトの名無しさん
2010/07/19(月) 22:08:320316デフォルトの名無しさん
2010/07/20(火) 07:15:210317デフォルトの名無しさん
2010/07/20(火) 07:19:020318デフォルトの名無しさん
2010/07/20(火) 08:20:34FileStreamだとすぐ例外が発生するだけだよね?
あとlockで一定時間止まってたらlockを解除するって出来る?
0319デフォルトの名無しさん
2010/07/20(火) 16:54:19スクロールバーを動かして常に最新アイテムを表示させたいのですがどうすればいいですか?
0320デフォルトの名無しさん
2010/07/20(火) 17:05:44俺がまとめてこたえたる!
待ってろ!
0321デフォルトの名無しさん
2010/07/20(火) 17:17:010322デフォルトの名無しさん
2010/07/20(火) 17:21:174.1999999999999993=3.0*1.4
ってなるんだけどなんで??
0323デフォルトの名無しさん
2010/07/20(火) 17:22:340324322
2010/07/20(火) 17:28:19C#の場合、どうすればスマートに
4.2 = 3.0*1.4
になるのでしょうか?
0325デフォルトの名無しさん
2010/07/20(火) 17:30:340326デフォルトの名無しさん
2010/07/20(火) 17:39:42整数ならΣa_n * 2^n (a_n in {0, 1})で綺麗に表されるが、小数の場合はΣa_n * 2^nに加えΣa_m * 2^(-m)も処理しなければならない。
そこで問題になるのが0.2が1/2, 1/4, 1/8, 1/16, 1/32, 1/64, 1/128, 1/256, ...のそれぞれの項の和で示せるかどうかで、
少なくともC#の浮動小数点数型では桁数が足りない。
.netにはdecimalってのがあったはずだからそれ使えばいいよ。これは確か「小数をドットを外した時の数とドットの位置」を覚えている型だったと思うから。
0327デフォルトの名無しさん
2010/07/20(火) 17:46:3030*14/100
0328322
2010/07/20(火) 17:47:59思うような動きをしてくれました。
二進浮動小数点数、decimal型をもうちょっと勉強してみます。
ありがとうございました。
0329デフォルトの名無しさん
2010/07/20(火) 17:59:080330デフォルトの名無しさん
2010/07/20(火) 18:12:53/ \ /\
| (゚)=(゚) | 人人人人人人人人人人人人人人人人人人人人人人人人人
| ●_● | < 小数点以下を厳密にしたいなら浮動小数点型は使うなよ >
/ ヽ < >
| 〃 ------ ヾ | YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
\__二__ノ
∩ ∩
| | | |
| |__| |
/ 一 ー \ 人人人人人人人人人人人人人人人
/ (・) (・) | < 無理数超越数はどうすればいいの >
| ○ | YYYYYYYYYYYYYYYYYYYYYYY
\__ ─ __ノ
∩_∩
/ \ /\
| (^)=(^) | 人人人人人人人人人人
| ●_● | < 諦めろってことだよ >
/ // ///ヽ <言わせんな恥ずかしい>
| 〃 ------ ヾ | YYYYYYYYYYYYYY
\__二__ノ
0331デフォルトの名無しさん
2010/07/20(火) 18:14:031行目、無理数じゃないぞ。循環小数だ
0332デフォルトの名無しさん
2010/07/20(火) 18:15:00訂正ありがとうございます。
0333デフォルトの名無しさん
2010/07/20(火) 18:18:570334デフォルトの名無しさん
2010/07/20(火) 18:24:330335デフォルトの名無しさん
2010/07/20(火) 18:32:260336デフォルトの名無しさん
2010/07/20(火) 18:54:04Decimalも浮動小数点型な件
0337デフォルトの名無しさん
2010/07/20(火) 19:14:14そして、DataGridViewに以下の列設定を行いました。
1列目> 名称:"連番" 幅:50
2列目> 名称:"名前" 幅:100
問題は、"連番"という文字の横幅から考えて
50pxと余裕を持った横幅にしているにも関わらず、
画面に表示させた場合に、本来は、
連番 と横に表示させたいのですが、
連
番
と縦に表示されてしまうのです。
また、横幅を100にすると 連番 と正常に横に表示される様に
なるのですが、どうすれば幅を小さくした場合でも正常に
横に表示される様になりますか?
0338322
2010/07/20(火) 19:15:14なぜDecimalは浮動小数点型なんですか?
msdnには「decimal 型は、浮動小数点型よりも有効桁数が多く」
と浮動小数点型よりもと書いてあるので、
違うものと思いましたが浮動小数点型なのでしょうか?
0339デフォルトの名無しさん
2010/07/20(火) 19:17:310340デフォルトの名無しさん
2010/07/20(火) 19:19:45特定のdoubleなりsingleなりの実装を指す「浮動小数点型」の違い。
>>336 が言ってるのは一般的な意味で、MSDNの文章では特定の型のことを言っている。
0341デフォルトの名無しさん
2010/07/20(火) 19:21:44その列の「SortMode」を「NotSortable」にしてみたら?
「連番」だけじゃなく▲も表示されるようになってるから3文字分必要。
0343デフォルトの名無しさん
2010/07/20(火) 20:02:03なんかどう考えても間違った方向に進んでるのを見過ごすのもアレなんで。
たぶん扱う小数点以下の桁数が確定しているような用途なんだろうから、
だったら表示なり何なりする時点で必要な桁数で丸めればいい、っていうか
それが普通の方法だと思うよ。
たまたま上手くいくからDecimal使おう、とか、考え方間違ってるでしょ。
0344デフォルトの名無しさん
2010/07/20(火) 20:14:07疑問が解決しました。どうもありがとうございます。
0345デフォルトの名無しさん
2010/07/20(火) 20:26:30int(数値型)では無く、諸事情によりstringで定義しています。
しかし、DataGridView上の連番をクリックするとどうやら
ソートが数値としてでは無く、文字列としてされている様です。
どうすれば数値としてソートする事が出来ますでしょうか?
0346デフォルトの名無しさん
2010/07/20(火) 20:36:21やさしいんですね(><;)
いづみは、そういう人が大好きなんです(><;)
ありがとうございました(//∇//)
0347デフォルトの名無しさん
2010/07/20(火) 20:37:08DataTableバインディングしてるなら
DataTableに数値型の非表示列作ってそれをソート列にすることになるな
結構めんどくさいから素直に元々数値列にするなり0パディングするなりするのがお勧めだがね
0348デフォルトの名無しさん
2010/07/20(火) 20:46:17どう考えても間違ってるってこたないだろー
これだけの情報ではどっちが適切なのかはわからんぜ
0349デフォルトの名無しさん
2010/07/20(火) 20:47:43小数点扱うのもめんどくさいんだな〜
ようやくC#でGUIつくれたりK&Rを7年かかってようやく理解できるようになったりしたのに、
小数点扱う上でもそんな盲点があったのか・・
やっぱ大学行ってきっちり教えてもらわないと駄目だな・・1回だけ就職したブラック企業では
浮動小数点の扱い方なんておしえてくれなかったわ。
0350デフォルトの名無しさん
2010/07/20(火) 20:51:00大学行っても2進化10進数とか軽く流されるから意味ないよ
数値計算とか金銭系行かないと数値を厳格に扱わないのではないかな
0351デフォルトの名無しさん
2010/07/20(火) 20:54:13あんまり厳格にはやらないと思う。
0352デフォルトの名無しさん
2010/07/20(火) 21:00:45数値計算だね。金銭系で問題になるようなところを教えるカリキュラムはすごく珍しいと思う。探せば教えてる
ところもないではないけども。
0353デフォルトの名無しさん
2010/07/20(火) 21:07:452進浮動小数点数の実装や誤差について調べたいなら、GNUの多倍精度演算ライブラリのドキュメントを見たり
浮動小数点数演算が可能なCPUを話題に取り扱っている本を読んでみれば良い。
ここまでくるとC#は関係ないが、ほんの30年前まではアナログ回路で計算させてたのに
最近だとデジタル演算でマンデルブロー集合が一瞬で計算できる様になるまでの道のりなども調べてみると興味深いかもしれない。
0354デフォルトの名無しさん
2010/07/20(火) 21:32:370355デフォルトの名無しさん
2010/07/20(火) 21:44:21一応突っ込んどくけど、2進化10進数(いわゆるBCD)なんて
組み込み用のマイコンでもなきゃ直接扱うことはまずない。
別の何かと勘違いしてないか。
0356デフォルトの名無しさん
2010/07/20(火) 21:48:08大学でそれが流されるか、流されなかったとしてもさわりだけしかやらないのはわざわざ授業の時間割いてやる様なものではないから。
俺中卒引きこもり無職だけど
0357デフォルトの名無しさん
2010/07/20(火) 22:33:34COBOLのパック10進数のことを思ってたんだ
ttp://ja.wikipedia.org/wiki/%E3%83%91%E3%83%83%E3%82%AF10%E9%80%B2%E6%95%B0
俺は電子工学科でFORTRANの授業しか受けてない
20年ちかく前だけどニュートン法とか2分法とかそっち系
0358デフォルトの名無しさん
2010/07/20(火) 23:14:55iのあとに.でaがインテリセンスに出てこないんです
class TESTcls
{
int a;
}
TESTcls[,] test = new Testcls[100,100];
foreach(TESTcls i in test)
{
i.a=0;
}
0359デフォルトの名無しさん
2010/07/20(火) 23:20:260360デフォルトの名無しさん
2010/07/20(火) 23:26:27アホか
0361デフォルトの名無しさん
2010/07/20(火) 23:27:11public
0362デフォルトの名無しさん
2010/07/20(火) 23:27:280363デフォルトの名無しさん
2010/07/20(火) 23:28:110364デフォルトの名無しさん
2010/07/20(火) 23:29:03クラス内にネストしてクラスを作った場合は省略するとprivateになる
メンバは常にprivate
0365デフォルトの名無しさん
2010/07/20(火) 23:41:410366デフォルトの名無しさん
2010/07/20(火) 23:47:340367デフォルトの名無しさん
2010/07/20(火) 23:59:470368デフォルトの名無しさん
2010/07/21(水) 00:07:210369349
2010/07/21(水) 00:29:28なんしろ、趣味?で7年もやってるので、引くに引けないので、とりあえず
いろいろと調べてみます。実は本屋で今調べてきたところです。
少数を掛け算して整数にしてから、10やら100でわるという方法とか
何人かの方がおっしゃってた、BCDという手法も載っていました。金がたまったら本買って見ます。
>>353さんのレスを足がかりにいろいろ調べてみたいとおもいます。ありがとうございましたm(_ _)m
問題は、多分、私がそこまでのレベルに達していないと思われることです(;^_^
とりあえず、小数部分を10倍とか100倍して、計算後に10やら100でわるという方法で対処します。
みなさん、ありがとうございました。本当に参考になりました。
0370デフォルトの名無しさん
2010/07/21(水) 00:31:35そーします。どーも。
0371349
2010/07/21(水) 00:35:15暇にまかせて、Java、PHPから入り、CやらWin32APIやらC++やらC#に手を出したのですが、最近、コンソールアプリしかなかった時代のK&Rを読み、C言語プログラミングの実感がわきました。
で、だんだんと、あーこうやってつながっていって今のC#があるんだなとかわかったりしました。また、Cの文法のでき方の由来を知るにも「こりゃアセンブラやりゃいいな」とかわかるようになりました。
K&Rがやや?理解できるようになってから、急にC#でのプログラムのうまいアルゴリズムとかもできるようになりました。
苦節10年とありますが、多分私はまだしばらくニートだとおもいますので、それまでがんばってみます。
スレチすません。
0372デフォルトの名無しさん
2010/07/21(水) 00:57:50いつか自分の時代が来ると思って。。。
Step by Step
0373デフォルトの名無しさん
2010/07/21(水) 01:10:55一応ちょっとアドバイス。
学者になりたいなら話は別だけど、別に難しい本なんて読まなくても
誤差を最小化する方法なんて自分で考えれば分かるでしょ?
っていうか、難しい科学計算とか数値積分とかは知らんけど、
普通のプログラマが扱う領域で必要な精度なんて、たぶんほとんどの場合
演算順序とか何も気を使わなくても得られちゃうよ。
必要なのは、必要とされている精度をちゃんと把握することと、
適切に丸めを使うことを覚えるだけ。
0374デフォルトの名無しさん
2010/07/21(水) 01:38:56.Net 3か4からか知らないが2には無いBigIntegerとうものがある
多倍長整数を計算計算出来るすぐれもの
2に拘ったからCodeProjectにBigIntegerを作ってくれてる人が居るよ
0375デフォルトの名無しさん
2010/07/21(水) 01:44:31これこれ
MD5とかSHA1とかそのまま数値として扱えるからいろいろ怪しいことに使える
0376デフォルトの名無しさん
2010/07/21(水) 01:49:59警察に通報しといた。
会社や学校に最後の挨拶をしておいた方が良い。
0377デフォルトの名無しさん
2010/07/21(水) 02:14:10良くわかんないけど凄いの?
0378デフォルトの名無しさん
2010/07/21(水) 02:16:530379デフォルトの名無しさん
2010/07/21(水) 02:18:310380デフォルトの名無しさん
2010/07/21(水) 02:22:300381デフォルトの名無しさん
2010/07/21(水) 02:23:44警察に通報しといた。
会社や学校に最後の挨拶をしておいた方が良い。
0382デフォルトの名無しさん
2010/07/21(水) 07:58:40本当に通らないんです
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
TESTcls[,] test = new Testcls[100,100];
test[1,1].a = 2; ここの.の後にaが通らない
}
}
public class TESTcls
{
int a;
int b;
TESTcls(){ a = 1; b = 1; }
}
0383デフォルトの名無しさん
2010/07/21(水) 08:01:16>>359
0384デフォルトの名無しさん
2010/07/21(水) 08:29:000385デフォルトの名無しさん
2010/07/21(水) 08:32:57なかなか面白いw
0386デフォルトの名無しさん
2010/07/21(水) 09:17:440387デフォルトの名無しさん
2010/07/21(水) 09:18:45↓
public int a;
0388デフォルトの名無しさん
2010/07/21(水) 09:53:11ありがとうございました!
0389デフォルトの名無しさん
2010/07/21(水) 09:57:47うん
0390デフォルトの名無しさん
2010/07/21(水) 09:58:090391デフォルトの名無しさん
2010/07/21(水) 10:31:09これのどこがまずいんだよ。
数値として扱えるから署名が正しいかどうか検証できて、返って全く怪しくない利用方法で役立てられるだろ。
名前からしてただの多倍精度整数型だしな。
0392デフォルトの名無しさん
2010/07/21(水) 11:43:01TESTcls[,] test
の中が全部nullです。どうすればいいんですか?
for(int x=0;x<100x++){
for(inty=0;y<100;y++){
test[x,y] = new TESTcls()
}
}
TESTcls.TESTcla()はアクセスできない保護レベルですと出てしまいます
0393デフォルトの名無しさん
2010/07/21(水) 11:44:390394デフォルトの名無しさん
2010/07/21(水) 11:52:340395デフォルトの名無しさん
2010/07/21(水) 11:54:360396デフォルトの名無しさん
2010/07/21(水) 12:04:08test[1,1].a にはアクセスできるだろ?
0397デフォルトの名無しさん
2010/07/21(水) 12:12:53{
public Form1()
{
InitializeComponent();
TESTcls[,] test = new Testcls[100,100];
#test[1,1].a = 2; インテリセンスは通ったがインスタンスが無いと言われる
#TESTcls.TESTcla()はアクセスできない保護レベルでコンパイルできない間違え
#for(int x=0;x<100x++){
#for(inty=0;y<100;y++){
#test[x,y] = new TESTcls();
#}
#}
for(int x=0;x<100x++){
for(inty=0;y<100;y++){
test[x,y].a = 2; インスタンスが無いと言われる
test[x,y].b = 2; インスタンスが無いと言われる
}
}
}
}
public class TESTcls
{
public int a;
public int b;
TESTcls(){ a = 1; b = 1; }
}
どこで何をnewすればいいんですか?そもそもTESTcls[,] test = new Testcls[100,100]でインスタンスが無いのが納得できません
0398デフォルトの名無しさん
2010/07/21(水) 12:15:10そういえば多次元配列なんか最初にC#勉強して以来使ったことないわ
0399デフォルトの名無しさん
2010/07/21(水) 12:16:33拙者も拙者も〜
0400デフォルトの名無しさん
2010/07/21(水) 12:16:47だからnewしてねぇつってんだろwwwwwwwwww
0401デフォルトの名無しさん
2010/07/21(水) 12:23:190402デフォルトの名無しさん
2010/07/21(水) 12:23:48おかしいって受け取れるんだが、我輩だけ?
0403デフォルトの名無しさん
2010/07/21(水) 12:24:330404デフォルトの名無しさん
2010/07/21(水) 12:25:330405デフォルトの名無しさん
2010/07/21(水) 12:25:470406デフォルトの名無しさん
2010/07/21(水) 12:27:090407デフォルトの名無しさん
2010/07/21(水) 12:27:37今では見向きもされなくなったな。扱いづらいだけ。
使ったらFxCopで警告が出るという悲惨な状況
0408デフォルトの名無しさん
2010/07/21(水) 12:30:450409デフォルトの名無しさん
2010/07/21(水) 12:31:300410デフォルトの名無しさん
2010/07/21(水) 13:21:350411デフォルトの名無しさん
2010/07/21(水) 13:23:450412デフォルトの名無しさん
2010/07/21(水) 13:24:330413デフォルトの名無しさん
2010/07/21(水) 13:25:260414デフォルトの名無しさん
2010/07/21(水) 14:12:27w = ^^
この見え方の違いだと思う
0415デフォルトの名無しさん
2010/07/21(水) 14:22:470416デフォルトの名無しさん
2010/07/21(水) 14:48:230417デフォルトの名無しさん
2010/07/21(水) 17:58:260418デフォルトの名無しさん
2010/07/21(水) 19:51:390419デフォルトの名無しさん
2010/07/21(水) 19:55:40eclipse
0420デフォルトの名無しさん
2010/07/21(水) 20:01:24結局Gedit使う頻度高くなる
0421デフォルトの名無しさん
2010/07/21(水) 20:29:51だめですわかりません。何をnewすればいいんですか?
0422デフォルトの名無しさん
2010/07/21(水) 20:40:58人生
0423デフォルトの名無しさん
2010/07/21(水) 20:48:46TESTcls[,] test = new Testcls[100,100];
の行でも、その次の行でもいいのでブレークポイントを置いてtestの中身を確認すれば
全部nullになってることがわかるはず。
あとは各要素をnewするだけ。
0424デフォルトの名無しさん
2010/07/21(水) 21:08:16環境違うじゃん
0425デフォルトの名無しさん
2010/07/21(水) 21:09:30for (int j = 0; j < test.GetLength(1); j++)
test[i,j] = new TESTcls();
0426デフォルトの名無しさん
2010/07/21(水) 21:15:010427デフォルトの名無しさん
2010/07/21(水) 21:29:14あとはGrapeCityとかのサードパーティ製のとか
0428デフォルトの名無しさん
2010/07/21(水) 21:51:490429デフォルトの名無しさん
2010/07/21(水) 22:01:130430デフォルトの名無しさん
2010/07/21(水) 22:15:27だめです
test[i,j] = new TESTcls();
やはりここでTESTcls.TESTcls()はアクセスできない保護レベルになっていますとエラーが出ます
助けてください。
0431デフォルトの名無しさん
2010/07/21(水) 22:20:010432デフォルトの名無しさん
2010/07/21(水) 22:24:15できましたーーーーーーーーーーーーーーーーーーーーー
多次元配列とかまったく関係ありませんでしためちゃくちゃはずかしいです
ありがとうございました!!!!!!!!!!!!
0433デフォルトの名無しさん
2010/07/21(水) 22:49:23今回犯した失敗を短くまとめてみろ
0435デフォルトの名無しさん
2010/07/21(水) 23:01:09インデクサでジェネリックは使えないのでしょうか?
public T this<T>[string key]
{
get {}
set {}
}
0436デフォルトの名無しさん
2010/07/21(水) 23:01:390437デフォルトの名無しさん
2010/07/21(水) 23:03:53DataGrid(WinFormの)はネタとしてあげただけだから始めなくて良いよ
0438デフォルトの名無しさん
2010/07/21(水) 23:07:11使えないけど、使えたとして呼び出し側をどう書くつもりだよw特にsetするとき
0439デフォルトの名無しさん
2010/07/21(水) 23:39:57aaa<T> = 10;
こんな感じですかね・・・
ともかくありがとうございました。他の方法を探してみます
0440デフォルトの名無しさん
2010/07/22(木) 00:58:00はい。人の言うことを聞いてないのが原因でした
クラスを理解していません。
でも納得できません。なぜ
TESTcls[,] test = new Testcls[100,100];
と
test[x,y] = new TESTcls();
で、
2段階もnewしないといけないんですか?
TESTcls[,] test = new Testcls[100,100];
これでインスタンスが出来ていると普通考えるとおもうんですが何とかして一つにまとめる方法はありませんか
0441デフォルトの名無しさん
2010/07/22(木) 01:01:050442デフォルトの名無しさん
2010/07/22(木) 01:02:49TESTcls[,] test = new Testcls[100,100]; //100x100サイズの空っぽの表を作る
test[x,y] = new TESTcls(); //表の座標x, yに新しく作ったインスタンスを指す参照を入れる
型TESTcls[,]のインスタンスは具体的な大きさの定まっているTESTclsの変数の領域。
対して型TESTclsのインスタンスはTESTcls型のオブジェクトを指している値の領域。
TESTcls型の変数が100x100=10000個あっても、そのひとつひとつがnullならないもないんだよ。
0443デフォルトの名無しさん
2010/07/22(木) 01:12:49値型なら 1 段階でいける。つまり、
int[,] hoge = new int[10,10];
とかならそのまま使える。
0444デフォルトの名無しさん
2010/07/22(木) 01:33:39配列newは参照型の入れ物を作るだけという仕様なんですね
object[,] test = new object[100,100];
test[x,y] = new TESTcls();
これで通ったので完璧に理解できました。ありがとうございました
0445デフォルトの名無しさん
2010/07/22(木) 01:39:41ありがとうございます
これからは参照の配列作成時は全部object型にすることにします。これですっきりします。
0446デフォルトの名無しさん
2010/07/22(木) 01:46:23何その斜め上な発想。
0447デフォルトの名無しさん
2010/07/22(木) 01:55:100448デフォルトの名無しさん
2010/07/22(木) 06:56:290449デフォルトの名無しさん
2010/07/22(木) 11:19:390450デフォルトの名無しさん
2010/07/22(木) 11:51:310451デフォルトの名無しさん
2010/07/22(木) 12:28:55つまんねえって
0452デフォルトの名無しさん
2010/07/22(木) 12:31:410453デフォルトの名無しさん
2010/07/22(木) 14:22:220454デフォルトの名無しさん
2010/07/22(木) 14:24:290455デフォルトの名無しさん
2010/07/22(木) 16:08:31ダイナミックヘルプに出てきません
0456デフォルトの名無しさん
2010/07/22(木) 17:09:32Dispose()を呼べばClose()する必要はないのでしょうか?
せっかく using(){}を使っても、その中でtry〜catchでClose()は変な感じなので。
また、Close()とDispose()の違いは、
Close()してもオブジェクトはそのまま使えるけど、
Dispose()をしたらそれ以降はオブジェクトを使えないと言うでしょうか?
0457デフォルトの名無しさん
2010/07/22(木) 17:34:430458デフォルトの名無しさん
2010/07/22(木) 17:48:550459デフォルトの名無しさん
2010/07/22(木) 20:14:210460デフォルトの名無しさん
2010/07/22(木) 21:48:44それはそれとして、Fileクラスの静的メソッドを使えるならそっちを使うべき。
0461456
2010/07/22(木) 23:57:23混乱しそうなので、基本は Dispose() で統一します。
ちなみにFileStreamを継承してみましたが、
Close()とDispose()を呼ばないでフォームを落とすと
Dispose(bool)だけ呼ばれますね。なんでだろ。
0462デフォルトの名無しさん
2010/07/23(金) 00:12:02GCによってファイナライザが呼び出された場合はfalseになるお約束
後者の場合は、参照先のオブジェクトのファイナライザが既に呼び出されている可能性があるので
絶対に他のマネージオブジェクトにアクセスしてはいけない
0463デフォルトの名無しさん
2010/07/23(金) 00:50:090465デフォルトの名無しさん
2010/07/23(金) 03:27:33VS2005を使っているのですが、
気が付くといつの間にか、VSでソースファイルを開いた時に、
通常であれば【クラス名】と【そのクラスの中に存在するメソッドの一覧】が
画面上部にプルダウン形式で表示されていると思うのですが
それが表示されなくなりました。
どうすれば元に戻りますか?
0466デフォルトの名無しさん
2010/07/23(金) 09:48:46相手も同じようなことをやってると
たぶんReceiveはSendが完了するのを待っててお互いSendが完了しないせいで
デッドロックするの?
0467466
2010/07/23(金) 10:45:23同時にやっても動いてる時は動いてる
何かのタイミングで突然Sendしなくなる
しかもすべてのソケットが一斉に
なんぞこれ
Console.Writeしてデバッグしようとすると止まらないから分からない
なんぞこれ
0468デフォルトの名無しさん
2010/07/23(金) 10:51:47VS2005スレいけ
0469デフォルトの名無しさん
2010/07/23(金) 10:53:360470466
2010/07/23(金) 11:09:110471デフォルトの名無しさん
2010/07/23(金) 11:19:340472デフォルトの名無しさん
2010/07/23(金) 13:50:40何事もなかったようにFormが起動するのですが、どうしてでしょうか?
EXEで動かすと、エラーで落ちます。
0473デフォルトの名無しさん
2010/07/23(金) 14:05:390474デフォルトの名無しさん
2010/07/23(金) 17:18:37(VB2005:C#)
Windowsアプリを作成しています。
Form1にbuttonを配置しており、クリックで処理をおこなっています。
またTextBoxには上記の処理の状況を表示するようにしています。
クリックでの処理の部分は煩雑にしたくないので、別途クラスを用意して
処理の部分をクラスのメソッドとしたいのですが、その際にTextBoxへの表示の
部分(A.Text=m)でコンパイルエラーがでます。
このような場合の対処方法について教えてください。
0475デフォルトの名無しさん
2010/07/23(金) 17:29:27テキストボックスなんか実装の詳細だから他のクラスから弄るという発想が間違っている
フォームクラスにプロパティを定義してgetとsetの中でA.Textを取得設定する
0476デフォルトの名無しさん
2010/07/23(金) 17:43:170477デフォルトの名無しさん
2010/07/23(金) 17:46:29イベントハンドラに直接書きたくないんだったら別のクラスになんてせずにフォーム内でメソッド分ければいいだけ
0478デフォルトの名無しさん
2010/07/23(金) 17:50:31処理状況の通知のためだけに無駄にUIに依存させちゃもったいない
フォームクラスを渡すよりはテキストボックスを渡す方がマシだが
何も渡さずにイベントなどで通知するのが最善
0479デフォルトの名無しさん
2010/07/23(金) 17:51:15別スレッドで処理を実行して
フォームのタイマーコントロールで状況プロパティを取得して
テキストボックスに描画する。
超クール。
0480デフォルトの名無しさん
2010/07/23(金) 20:20:59そういうGUIに依存するようなクラスを作るのは糞設計の典型だよ。
「GUIが」データを持ってるクラスに依存するのはOK。
データを持ってるクラスが「GUIに」依存するのは普通の神経してたら
やりたいと思わない。
0481デフォルトの名無しさん
2010/07/23(金) 21:03:11それを定義しないで議論しても、結論は一致しないと思います。
0482デフォルトの名無しさん
2010/07/23(金) 21:07:09煩雑にしたくないからクラスにしたとか言ってる以上は仕方ない
0483デフォルトの名無しさん
2010/07/23(金) 21:08:550484デフォルトの名無しさん
2010/07/23(金) 22:19:501.即座に表示が必要な場合は
クラスにイベントを作ってイベントハンドラでメッセージを受け取って表示
2.表示より処理そのものの速度が重要な場合
クラスにメッセージをStringに溜め込んでおいてフォームで
タイマーを使って表示する
3.即座に表示しつつも速度も重視する場合
System.Dignostics.Debugを使う
テキストボックスをリスナーに登録してクラスでDebug.WriteLineする
か
Debug.Listenerと同じものを自分で作る
0485デフォルトの名無しさん
2010/07/23(金) 22:47:41理想的な形だと思われるものが、現実的には理想的ではない典型的なパターンかな。
>>474
メソッドに直接書くか、クラスにTextboxを引数で渡しちゃいなさい。
理想を求めると、それが煩雑の原因になる可能性がある。処理も重くなるし。
0486デフォルトの名無しさん
2010/07/23(金) 22:53:440487デフォルトの名無しさん
2010/07/23(金) 22:57:07何を分かったようなこと言ってんの。
煩雑(可読性を損なう)ことがないための「理想」なんだよ。
処理の重さ?
TextBox一つの更新ごときでどうやりゃそんなに重くなるんだよアホかw
0488デフォルトの名無しさん
2010/07/23(金) 22:58:000489デフォルトの名無しさん
2010/07/23(金) 23:14:56それが一番だめなパターンだな
作りっぱなしで終わるならいいけど
クラスライブラリでまとめられるように設計しとけば言語が進化しても使いまわしが出来る
それとコンソールアプリ化が一瞬で出来る点は大きい
デバッグしやすい
0490デフォルトの名無しさん
2010/07/23(金) 23:15:080491デフォルトの名無しさん
2010/07/23(金) 23:34:57アホの子ってなんで抽象論理解できないのかね
0492デフォルトの名無しさん
2010/07/23(金) 23:38:500493デフォルトの名無しさん
2010/07/23(金) 23:40:32だから動けばいいよ
手間と結果が自分でペイしてると思うならそれでいい
0494デフォルトの名無しさん
2010/07/23(金) 23:43:55publicにしろってことだよ
言わせんな面倒臭い
0495デフォルトの名無しさん
2010/07/24(土) 00:38:280496デフォルトの名無しさん
2010/07/24(土) 00:39:16いろんなことを想定して実装した80%が無駄だ。
0497デフォルトの名無しさん
2010/07/24(土) 06:45:220498デフォルトの名無しさん
2010/07/24(土) 07:59:46もともとpartial classなんだから、さらにソースファイルを分ければいい
0499デフォルトの名無しさん
2010/07/24(土) 09:03:55・テキストボックスをpublicにしてフォームごと渡す
・フォームにプロパティ付けてフォームごと渡す
・テキストボックスだけ渡す
・渡さないで外から監視
あとは手間次第
0500デフォルトの名無しさん
2010/07/24(土) 09:20:580501デフォルトの名無しさん
2010/07/24(土) 09:28:12モデルの状態の変更をViewModelに通知する仕組みが必要になるから同じこと
0502デフォルトの名無しさん
2010/07/24(土) 09:33:55ViewModelが何か意味わかってる?
0503デフォルトの名無しさん
2010/07/24(土) 09:35:150504デフォルトの名無しさん
2010/07/24(土) 09:35:58ViewModelに本質的な処理を書くのは御法度
0505デフォルトの名無しさん
2010/07/24(土) 09:39:54フォームに全部書くのと大差ない
0506デフォルトの名無しさん
2010/07/24(土) 09:41:14相互の橋渡しがViewModelの役目なのに何をいってるだよ…
抽象化されたUIとか何をいってるんだ?
Prismのサンプルソースでもいいからみろよ
0507デフォルトの名無しさん
2010/07/24(土) 09:42:23ttp://www.itarchitect.jp/methodology_and_design/-/38302.html
0508デフォルトの名無しさん
2010/07/24(土) 09:43:36いや、ViewModelの役目の説明の一役にはなってますけどね…
0509デフォルトの名無しさん
2010/07/24(土) 09:45:31橋渡しってことは結局どこかでViewModelがModelを監視しなきゃいけない
0510デフォルトの名無しさん
2010/07/24(土) 09:48:31何でViewに書くのと同じになるのやら
ViewはViewだろ
0511デフォルトの名無しさん
2010/07/24(土) 09:49:37その問題にViewModelは関係ない
0512デフォルトの名無しさん
2010/07/24(土) 09:52:01もしかしてModelからViewに直接通知すんのか?
んなわけねぇよな?
0513デフォルトの名無しさん
2010/07/24(土) 09:55:000514デフォルトの名無しさん
2010/07/24(土) 09:55:10通知方法の話としては一緒だという意味だよ
0515デフォルトの名無しさん
2010/07/24(土) 09:56:28車の事
通知は徒歩よりも車使えって事をいってるのさ
0516デフォルトの名無しさん
2010/07/24(土) 10:01:50そんなものがあるとは知らなかったが
model-viewだけだとやり難い場面があるなと思って
modelとviewを制御する部分を独立させるってのは自然にやってたな
そうすると両方を継承したクラスでも違和感無く連携が取れる
modelとviewは一方向制御とは限らないからね
制御ルールはcontrolに隠蔽してしまうとやりやすい
0517デフォルトの名無しさん
2010/07/24(土) 10:08:06いぢわる
0518デフォルトの名無しさん
2010/07/24(土) 10:08:510519デフォルトの名無しさん
2010/07/24(土) 10:16:42ソースが無いものなんか使えるかソース出せやゴルァって
何様か分からないようなのがうようよしてるし
結局中身をパクリたいだけなんだろうけど
まあいいや、とにかくソース公開した時に恥ずかしい形にしたくないから
いろいろと工夫してると自然に綺麗な設計になってくるんだと思います
0520デフォルトの名無しさん
2010/07/24(土) 11:53:07Formを継承してイベントは子クラスでって言うのもあるかな
0521デフォルトの名無しさん
2010/07/24(土) 12:03:53もっと複雑な処理があって質問のために簡略化しているかで、
回答は変わってくるね。
0522デフォルトの名無しさん
2010/07/24(土) 20:54:230523デフォルトの名無しさん
2010/07/24(土) 20:56:44フィールドならType.GetField
その前にDictionaryが使えないか検討すること
0524デフォルトの名無しさん
2010/07/24(土) 21:01:30ありがとござーます!
Dictionaryを使うケースってどういう事でしょうかー
0525デフォルトの名無しさん
2010/07/24(土) 22:05:050526デフォルトの名無しさん
2010/07/24(土) 22:09:060527デフォルトの名無しさん
2010/07/26(月) 09:35:14例えば以下のサンプルでは、WebClientをDispose()していませんが、必要ないのでしょうか?
ttp://msdn.microsoft.com/ja-jp/library/system.net.webclient.aspx
0528デフォルトの名無しさん
2010/07/26(月) 09:46:48ComponentがIDisposableを実装しているから伝染してるだけ
ComponentのDisposeの実装も単なるスケルトンなので特に実質的な意味はない
0529デフォルトの名無しさん
2010/07/26(月) 10:39:58なるほど。全部が全部呼ばなくて良いわけですね。ありがとうございます。
すぐに解放の必要があるリソースがある時だけ呼べばいいか。
0530デフォルトの名無しさん
2010/07/26(月) 13:49:55判断できないのでIDisposableは使い終わったら取り敢えずDisposeすることにするのが無難
(「使い終わった」の判断が難しいものもあるけど)
あとサンプルに書かれてないから不要って考えはやめるべき
0531デフォルトの名無しさん
2010/07/26(月) 13:51:220532デフォルトの名無しさん
2010/07/26(月) 15:19:21即解放しないと排他制御とかで問題がある場合は解放する
0533デフォルトの名無しさん
2010/07/26(月) 20:24:03WebBrowserコンポーネントでファイルではなくstringの値を指定して開くことは可能でしょうか
string = hogehoge; // 中身はhtmlソース
0534デフォルトの名無しさん
2010/07/26(月) 20:31:300535デフォルトの名無しさん
2010/07/26(月) 20:39:25ありがとうございました
0536デフォルトの名無しさん
2010/07/26(月) 23:40:49いつ実行されるか分らないジェネリックメソッドが実行された際に、引数(可変個数)、戻り値を取得・記録するにはどうしたらいいでしょうか?
0537デフォルトの名無しさん
2010/07/27(火) 00:22:050538デフォルトの名無しさん
2010/07/27(火) 00:42:540539デフォルトの名無しさん
2010/07/27(火) 09:39:260540デフォルトの名無しさん
2010/07/27(火) 11:52:160541デフォルトの名無しさん
2010/07/27(火) 12:35:510542デフォルトの名無しさん
2010/07/27(火) 12:41:210543デフォルトの名無しさん
2010/07/27(火) 13:10:080544デフォルトの名無しさん
2010/07/27(火) 13:45:230545デフォルトの名無しさん
2010/07/27(火) 13:48:55例えば、動的メソッドMをもつクラスAのインスタンスを大量に作成すると、Mも大量に作成されてしまう
のでしょうか?
0546545
2010/07/27(火) 13:53:09簡単に言うと、たくさんメモリ食っちゃうの?ってことです
0547デフォルトの名無しさん
2010/07/27(火) 14:19:21静的クラスを動的にインスタンス化してるだけなのか、Reflection.EmitとかCodeDomで型から生成してるのか…
0548デフォルトの名無しさん
2010/07/27(火) 14:46:58上の例でいうと、
class A
{
...
public void M()
{
...
}
}
を
A[] a = new A[1000];
のように使用した場合です。
0549デフォルトの名無しさん
2010/07/27(火) 14:59:10そういうのは普通にクラス・メソッドって言う方がいい。動的って言うと別の意味になる。
0550デフォルトの名無しさん
2010/07/27(火) 15:06:05最適化してくれるかもしれないけど、食ってる気がする。
試しに1000個くらいメソッドを持ったクラスを定義して測定してみてよ。
>>549
ホント?元ネタとかある?
昔からよくある話だけど、実際のところ結論を聞いたことがないので。
0551デフォルトの名無しさん
2010/07/27(火) 15:06:060552デフォルトの名無しさん
2010/07/27(火) 15:07:20静的に対して動的だと思ってました。大変失礼しました><
0553デフォルトの名無しさん
2010/07/27(火) 15:14:11スマン、書き方が悪かった。
クラス・メソッドで一語じゃなくて
「動的クラス、動的メソッド」ではなく、それぞれ「クラス、メソッド」と言うべき って意味だった。
0554デフォルトの名無しさん
2010/07/27(火) 15:14:56>>549 の根拠はオレも後学のために教えてほしいなぁ
0555デフォルトの名無しさん
2010/07/27(火) 15:18:140556デフォルトの名無しさん
2010/07/27(火) 15:19:402つめの引数が表示されず、また引数がない状態「Sample.exe」で実行した場合エラー(インデックスが配列の境界外です)が出てしまいました。
foreachを使わずに、cmds[0]、cmds[1]のような形で利用したいのですがどなたかご教示お願い致します。
using System;
class Sample {static void Main() {
string[] cmds = Environment.GetCommandLineArgs();
if (cmds.Length > 0) {
Console.WriteLine(cmds[1]);// helloと表示させたい
Console.WriteLine(cmds[2]);// 1000と表示させたいのですが、表示されません
} else {Console.WriteLine("引数はありません");// 引数がない場合に表示させたい}
}}
0557デフォルトの名無しさん
2010/07/27(火) 15:21:280558デフォルトの名無しさん
2010/07/27(火) 15:21:470559デフォルトの名無しさん
2010/07/27(火) 15:28:20別のインスタンスでもメソッドの処理は全く同じ。違うのは
メソッドに与えるパラメータなので、メソッドそのものは1つしか作られない。
http://ameblo.jp/syou007/entry-10023299808.html
メソッドについてはここの最後の部分にも書いてあるな。
0560デフォルトの名無しさん
2010/07/27(火) 15:32:13http://msdn.microsoft.com/en-us/magazine/cc163791.aspx
0561デフォルトの名無しさん
2010/07/27(火) 15:35:110562デフォルトの名無しさん
2010/07/27(火) 15:39:400563デフォルトの名無しさん
2010/07/27(火) 15:45:37オブジェクトとして考えた場合、共通化ない方が自然なんだよ。
0564545
2010/07/27(火) 16:02:06public class A
{
}
0565デフォルトの名無しさん
2010/07/27(火) 16:05:300566デフォルトの名無しさん
2010/07/27(火) 16:08:49public class A
{
public int Methodxxxx() //xxxx: 0001〜1000
{
return xxxx;
}
}
public static class A_Static
{
public static int Methodxxxx() //xxxx: 0001〜1000
{
return xxxx;
}
}
AまたはA_Staticを100000個作成し、
全Methodxxxxを1回ずつ実行ました。
GC.GetTotalMemory(false)でインスタンス作成前と全Methodxxxx実行後のメモリ使用量を比較すると、
Aの場合、1299820 bytes
A_Staticの場合、1566996 bytes
でした。
0567デフォルトの名無しさん
2010/07/27(火) 16:09:46×publi static class A_Static
○public class A_Static
です。
0568デフォルトの名無しさん
2010/07/27(火) 16:31:56メソッドへのポインタ× メソッドテーブルへのポインタ○
メソッドが1個だろうと1000個だろうと、インスタンスのサイズは一定。
メソッドテーブルは当然メソッドの数だけ大きくなるけど、インスタンスのサイズは一定。
0569デフォルトの名無しさん
2010/07/27(火) 16:39:05お疲れさま。毎回同じように後者の方が大きくなるなら、興味深い。
0570デフォルトの名無しさん
2010/07/27(火) 17:03:010571デフォルトの名無しさん
2010/07/27(火) 17:08:50C#についてはどうなのかと考えて、一度測定してみたことがある。
結果は意外なことに、増えなかった。つまりメソッドをVirtualにするかどうかにあたっては
メモリ消費を考慮にいれる必要はないということになる。
0572デフォルトの名無しさん
2010/07/27(火) 17:10:35勘違いした。失礼。
0573デフォルトの名無しさん
2010/07/27(火) 17:16:250574デフォルトの名無しさん
2010/07/27(火) 17:46:040575デフォルトの名無しさん
2010/07/27(火) 17:48:02きみがね。
0576デフォルトの名無しさん
2010/07/27(火) 17:48:430577デフォルトの名無しさん
2010/07/27(火) 17:55:120578デフォルトの名無しさん
2010/07/27(火) 22:11:42大量のメソッドがコピーされるのか?
なんのために?
ありえない。
0579デフォルトの名無しさん
2010/07/27(火) 22:14:490580474
2010/07/28(水) 00:57:33値の参照はエラーになり断念しました(たぶんイベントと関連がありそう)が、イベントを使って機能を実現しました。
ご助言いただいた方々、ありがとうございましたm(__)m
0581デフォルトの名無しさん
2010/07/28(水) 02:04:21無知って怖いわ〜。そのポリシーで仕事されたらたまらんわ。
メリットがデメリット、デメリットがメリット。わかる?
>>563 の言う通り、ある有名な言語は、まさにメソッドが大量にコピーされる。
もちろん、メモリ節約の手段はある。
さて、この言語は何でしょう?
0582デフォルトの名無しさん
2010/07/28(水) 02:17:230583デフォルトの名無しさん
2010/07/28(水) 02:26:13言い返せない根拠>>560を示されたからって、C#と関係ない話をして荒らすな無能。
無知って怖いわ〜。そのポリシーで仕事されたらたまらんわ。
0584デフォルトの名無しさん
2010/07/28(水) 03:18:44C++/Java/C#なんかの静的型付け言語からすると随分設計思想が違う
ま、それだって今時は高速化の為に共有できるメソッドは共有したりするわけで
大量のメソッドがコピーされる内部動作が正しいと言う>>563は馬鹿だろ
0585563
2010/07/28(水) 14:02:33正しいなんて書いてないけど。。。そして馬鹿呼ばわりか。
工場で車(オブジェクト)を作ったら、ハンドル(メソッド)は個別にできるでしょって言う意味。
理解できない、しようとしない相手に正論語っても無駄だけどさ。
0586デフォルトの名無しさん
2010/07/28(水) 14:34:58C#スレでC#の"内部実装"の話をしてるのに、
「共通化ない方が自然なんだ」とか「ある有名な言語は、まさにメソッドが大量にコピーされる」とか
「工場で車(オブジェクト)を作ったら、ハンドル(メソッド)は個別にできるでしょ」なんて話が出てくるんだ。
君の頭では話の流れが理解できないようだな。
0587デフォルトの名無しさん
2010/07/28(水) 15:38:10でもそうやって熱くなってるとああ、この人は中身のない人なんだなと勘違いする子もいるので
気をつけてくださいね
虚しい人生を送り続けている人の中には、意味不明なことをして優位性を保持しようとする輩が稀によくいますから
あなたは怒りの感情を押し込めたりしない熱いハートの持ち主なんでしょう
そして熱いハートは行動によってのみ示され、言葉が足りないためによく大きな誤解を周囲に与えているようです
ですが悲しいかな、ここにもその熱いハートを真っ向から向き合える人間がいないようです
なので提案ですが、マックスハートスレにいかれてはどうでしょう
そうすればあなたは晴れやかなマックスハートとなりくだらない諍いもなくなるでしょう
0588デフォルトの名無しさん
2010/07/28(水) 15:39:59つまんねえって
0589デフォルトの名無しさん
2010/07/28(水) 15:57:050590デフォルトの名無しさん
2010/07/28(水) 16:11:58せいろ ん
っが
0591デフォルトの名無しさん
2010/07/28(水) 16:23:07意味不明なことをして優位性を保持しようとする輩 >>585
0592563
2010/07/28(水) 16:44:06>>578 が、C#だけを特定して語っているとは思えない。
こんなのも理解できない君は、まさに君が言うそれですよ。
>>591
そして妄想が始まる。
0593デフォルトの名無しさん
2010/07/28(水) 18:11:26C#はそんな非効率的な事はやっていないと結論が出たのに
スレタイ読めない馬鹿がまだ騒いでやがるwwwwww
ていうか、俺のレスじゃないやつまで俺のせいにされてもねぇ?
被害妄想甚だしい。ただの馬鹿だと思っていたがもっと深刻なようだな。
0594デフォルトの名無しさん
2010/07/28(水) 18:42:410595デフォルトの名無しさん
2010/07/28(水) 19:06:360596デフォルトの名無しさん
2010/07/28(水) 19:48:18見た目でそう見えるようになってるだけで内部実装は違いそうなもんだが。
プロトタイプ的な言語だって必要なメソッドだけ参照で入れ替えればいいだけだろ?
C#だって見た目はインスタンスごとにメソッドがあるように見えるよな。
単に内部実装上そんな無駄なあほなことはしてないってだけで。
まあC#の場合はCLIの仕様の方が本来だから、内部実装詳細とは言い切れない面があるが。
0597デフォルトの名無しさん
2010/07/28(水) 20:05:340598デフォルトの名無しさん
2010/07/28(水) 20:08:30気にせず使おう じゃなくて 気にしなくても使える。
つかググれば数分で答えに巡りつく程度の問題で「生産性高まらない」なんて大袈裟だなぁ
問題解決の手がかりになったりして得する事はあっても損はしないだろ。
0599563
2010/07/28(水) 21:37:13スレタイで逃げるのはいいけど、とりあえずレスを遡って見てもらってもいい?
C#ではなく、一般論から始まってるんだけど。あー、草刈は面倒だ。
0600デフォルトの名無しさん
2010/07/28(水) 21:49:33578は一般論じゃないと思う
0601デフォルトの名無しさん
2010/07/28(水) 22:20:53C#の話から始まって>>545、途中で入ってきたお前さんがスレ違いの荒らしを延々とやってるわけだが。
0602デフォルトの名無しさん
2010/07/28(水) 22:25:06自分に都合の悪いレス>>596はスルーするわけね。
0603デフォルトの名無しさん
2010/07/28(水) 23:09:01ときどき「Webページからのメッセージ」というポップアップウィンドウが出てきてしまうページがあります。
メッセージには、「error0」もしくは「エラーが発生しました。[Object Error]」と書いてあるのですが、「OKボタン」を押すとその後問題なく動きます。
このメッセージを出さないようにしたいのですが、何かいい方法はありますでしょうか?
0604デフォルトの名無しさん
2010/07/28(水) 23:19:21System.Windows.Forms.WebBrowserならScriptErrorSuppressed
これでダメならIDocHostUIHandler辺り実装することになるかねぇ
0605デフォルトの名無しさん
2010/07/28(水) 23:20:15とかじゃね?
0606デフォルトの名無しさん
2010/07/28(水) 23:21:39割り込んで悪いけど、さすがに誰が考えても君の言ってることは変だ。
クラスメソッドの一番素朴な実装方法は、インスタンスのフィールドの値を保持する
構造体へのポインタを暗黙的に引数に取る方法だと思うが、
それよりどう考えても非効率な方法をとる理由が何一つない。
0607デフォルトの名無しさん
2010/07/28(水) 23:25:33素人の見解発表会場じゃねーんだよ
0608デフォルトの名無しさん
2010/07/28(水) 23:26:12頭のいい上級者さんは、MVPとねちょねちょやってろ。
0609603
2010/07/28(水) 23:35:19ありがとう、これでなんとかなりそうです。
0610デフォルトの名無しさん
2010/07/28(水) 23:40:340611063
2010/07/28(水) 23:42:14ありがとう、これでなんとかなりそうです。
0612デフォルトの名無しさん
2010/07/28(水) 23:43:05面白いと思うの、それ
0613デフォルトの名無しさん
2010/07/29(木) 00:03:180614デフォルトの名無しさん
2010/07/29(木) 01:37:39System.Type type;
string value;
}
上記のような構造体で、typeで型、valueで値を表しているとき、
type型のvalue値を持った、インスタンスを作るにはどうしたらいいですか?
0615デフォルトの名無しさん
2010/07/29(木) 01:41:41文字列からの Parse もやりたいなら色々リフレクション駆使しないとダメ。
数値型なら、 int.Parse みたいなのが各型にあるから、
type.GetMethod("Parse", BindingFlags.Public | BindingFlags.Static) とかで変換関数とれるけども、
一般の型だとちょっと難しい。
WPF なんかは、TypeConverter 属性とか調べて、それに基づいて型変換してる。
0616デフォルトの名無しさん
2010/07/29(木) 01:47:25そうですね。
Activator.CreateInstance()でからインスタンスは作れるのですが、
そこにどうやって値を与えればいいのかわかりませんでした。
簡単にはいかないようですね。
0617デフォルトの名無しさん
2010/07/29(木) 02:09:160618デフォルトの名無しさん
2010/07/29(木) 04:34:44うすうす気づいてるのだけど
C# って C++ の delete とか C の free() みたいなのって無いんだよね?
デストラクタとか Dispose() とか using (foo){ } とか用途がまったく違うんだよね?
強いて言うなら System.GC.Collect(世代); が一番幸せに近いの?
質問ばかりでごめんねすぐにVIPに帰るから許して
0619デフォルトの名無しさん
2010/07/29(木) 07:53:31そして空いた時間でプロファイル取ってロジック見直す方がよっぽど効果的。
0620デフォルトの名無しさん
2010/07/29(木) 08:56:580621デフォルトの名無しさん
2010/07/29(木) 09:03:01IDispose 実装してたらとりあえず using。
GC 強制呼び出しとかいまいち。
0622デフォルトの名無しさん
2010/07/29(木) 18:44:19(ハイライト色塗りつぶしじゃなくて半透明角丸の選択状態)するのって
どうやるんですか?
0623デフォルトの名無しさん
2010/07/29(木) 19:31:24ttp://stackoverflow.com/questions/555383/making-vista-style-apps-in-c
0624デフォルトの名無しさん
2010/07/29(木) 20:10:48えすてえ!!
0625デフォルトの名無しさん
2010/07/29(木) 20:21:34数千件のIPアドレスがあり全てに対してPINGを行いたいのですが
IPアドレスのネットワークが数種類ありNICの設定を変更しなければ
全てに対してPINGを行うことができません。
If(192.168.01)
{
}
elseif(192.168.100.1)
{
}
みたいな感じでIPごとにゲートウェイを指定して接続する方法て無いでしょうか
0626デフォルトの名無しさん
2010/07/29(木) 20:26:32ありがとうございます。
ところでこれは必ずWndProcでWM_CREATEをフックして実行しなければダメですか?
コンストラクタでもできたんですが
0627デフォルトの名無しさん
2010/07/29(木) 20:30:48ルーティングテーブルを設定すればいいんじゃないの。
0628デフォルトの名無しさん
2010/07/29(木) 20:33:120629デフォルトの名無しさん
2010/07/29(木) 20:36:25HandleCreatedイベントでやるのがベストかな
0630デフォルトの名無しさん
2010/07/29(木) 20:46:33ListViewはデザイナでHandleCreated表示されないので面倒なんですよね・・・
0631デフォルトの名無しさん
2010/07/29(木) 21:51:56ルーティングテーブルってWindowsのでしょうか
>>628
SoftEtherがシェアウェアになってしまったし
フリーで使える仮想NICってほかにありますか
0632デフォルトの名無しさん
2010/07/29(木) 21:58:080633デフォルトの名無しさん
2010/07/30(金) 00:35:21ルーティングテーブルは、あるIPやネットワークが、
どのNICやルータの先にあるかって定義
だからping打つだけで勝手にそこ経由して出て行ってくれるよ
0634デフォルトの名無しさん
2010/07/30(金) 04:21:48>>619-621さんどうもでした
一度ヒープに乗っけてしまうと、自分の思い通りには出来ないのね…
struct組み合わせたりして頑張ってみます
0635デフォルトの名無しさん
2010/07/30(金) 07:09:29なんのためのポリモーフィズムだよw
0636デフォルトの名無しさん
2010/07/30(金) 07:10:09NW構造によるわけだけどNATの向こうにpingを通したいのか、
IPアドレスのインクリメントのしかた(*)がわからないのか
(*:ex)192.168.0.254の次に192.168.1.1にする方法)
0637デフォルトの名無しさん
2010/07/30(金) 07:18:540638デフォルトの名無しさん
2010/07/30(金) 13:15:34同時に動いてるネットワーク関連の動作がぐちゃぐちゃになるけど。
0639デフォルトの名無しさん
2010/07/30(金) 13:54:16特定の日付の部分だけ背景色を変えたり文字を強調させたりしたいのですが、
どのようにすればできるでしょうか?
0640デフォルトの名無しさん
2010/07/30(金) 15:12:280641デフォルトの名無しさん
2010/07/30(金) 18:46:230642デフォルトの名無しさん
2010/07/30(金) 21:11:260643デフォルトの名無しさん
2010/07/30(金) 21:20:030644デフォルトの名無しさん
2010/07/30(金) 21:30:580645デフォルトの名無しさん
2010/07/30(金) 23:44:370646デフォルトの名無しさん
2010/07/31(土) 04:48:240647デフォルトの名無しさん
2010/07/31(土) 08:00:280648デフォルトの名無しさん
2010/07/31(土) 08:38:070649デフォルトの名無しさん
2010/07/31(土) 11:30:370650デフォルトの名無しさん
2010/07/31(土) 11:32:290651デフォルトの名無しさん
2010/07/31(土) 11:48:23ルーティングイベントの e.Handled = true みたいな状態になって、
次からはもう override 書かなくても言い的な解釈しちゃった?
んなわけねぇだろぉ。
override 必須にしてる理由が、
「間違えて別の名前でメソッド書いてもコンパイルエラーにならない」っていう人為的ミスを避けるためだし。
0652646
2010/07/31(土) 11:58:56来月からC#使うんだけど
・環境入れてない
・とりあえず本で学習
・手元の本及びサイトで二階層overrideがなぜか乗ってない
C++だとvirtual→virtual→virtual→virtual→…となるから
どうなんだろうと思って
>>651
寧ろ中間階層のクラスがoverride virtualじゃないのかと思ったくらいです
0653デフォルトの名無しさん
2010/07/31(土) 12:08:49C++だと2回め以降のvirtualは書いても書かなくてもいい。
C#の場合は>>651の言うとおり人為的ミスを避けるために構文がわざと冗長になっている。
0654デフォルトの名無しさん
2010/07/31(土) 12:42:20overrideを書かなくても、baseで親メソッドを呼べば、同じ結果になる場合がある。
newを使う場合ってどんな時だろう。
0655デフォルトの名無しさん
2010/07/31(土) 12:58:31new はまず使わない。
あれは「やるなよ」って警告みたいなもんだ。
0656デフォルトの名無しさん
2010/07/31(土) 13:09:23もっとも、あれはほとんどの場合コントロールの設計がまずいからだけど
0657デフォルトの名無しさん
2010/07/31(土) 13:11:05それにしたって、別の名前のメソッドにした方がいいと思うけどね。
0658デフォルトの名無しさん
2010/07/31(土) 13:19:36コントロールなんて嫌じゃん普通は。
もちろん、newした場合はアップキャストした場合の問題があるんで一長一短なんだけど。
0659デフォルトの名無しさん
2010/07/31(土) 14:22:120660デフォルトの名無しさん
2010/07/31(土) 14:32:59参照しているライブラリをバージョンアップしたら基底クラスにメソッドが追加されてて
自分の書いていたサブクラス側のメソッドと重複した場合。
0661デフォルトの名無しさん
2010/07/31(土) 16:41:570662デフォルトの名無しさん
2010/07/31(土) 17:22:340663デフォルトの名無しさん
2010/07/31(土) 17:25:540664デフォルトの名無しさん
2010/07/31(土) 17:43:12アホ。
0665デフォルトの名無しさん
2010/07/31(土) 17:51:52同じ名前じゃないと駄目な場合が多いんだなこれが
カスタムコントロールを配布/販売できるくらいまともに作ろうとすると、
デザイナで扱いやすくするために既存のプロパティやイベントに属性を追加して、
不要なプロパティを非表示にしたり、初期値を変更したり、etc.
ちょっとした機能追加だと、こんなコードが大半を占めるという馬鹿らしい状況に
[Browsable(false)]
public new string Hoge {
get { return base.Hoge; }
set { base.Hoge = value; }
}
0666デフォルトの名無しさん
2010/07/31(土) 17:56:36基底クラスに偶然同じシグネチャのメンバが追加される
→派生クラスをコンパイルしたら警告が出る
→派生クラスを書いた人がそれに気付く
→確認したらnewで警告抑制→派生クラスを利用してたコードの修正は不要
0667デフォルトの名無しさん
2010/07/31(土) 17:57:19お前の笑ってるものってお前自身なんじゃねえの、って奴。
実にみっともないな。
それに、老人の繰言みたいに2ch的定型句を何の疑問もなく口にできる奴って
個人的にはちょっと信じられないんだよな。
0668デフォルトの名無しさん
2010/07/31(土) 18:00:24あるあるw
0669デフォルトの名無しさん
2010/07/31(土) 18:12:38きみのレスが信じられないんだが。ほっとけよ。
0670デフォルトの名無しさん
2010/07/31(土) 18:24:41継承なら警告出る→new追加で解決できるけど、拡張メソッドでそれやっちゃうと警告すら出ないという……
0671デフォルトの名無しさん
2010/07/31(土) 18:30:54今後の.NET Frameworkの拡張は間違いなくそういうルールで行われるはず
0672デフォルトの名無しさん
2010/07/31(土) 19:49:430673デフォルトの名無しさん
2010/07/31(土) 19:54:53よくわからないんだけど、デザイン時に隠して、
プロパテイへのアクセスは許可するってどう言うことでしょうか?
0675デフォルトの名無しさん
2010/07/31(土) 20:05:35そういうことじゃなくて、例えば曜日を選択するComboBoxを作ったとすると、
普通はデザイン時にItemsは編集する必要がないし、してもらいたくないわけだ。
>>665は恐らくそういう場合のことを言っている。
0676デフォルトの名無しさん
2010/07/31(土) 21:57:12させたくないとかね。
アップキャストされたらどうしようもないんだけどさ。
0677デフォルトの名無しさん
2010/07/31(土) 22:46:47なるほど。setがあるのは、最悪の場合は使えってことか。
ただこの場合、newを使う必要があるかどうかはよくわからないが、まぁいいか。
0678614
2010/08/01(日) 11:48:14System.Type type;
string value;
}
typeが様々なEnum型の場合、type型からvalue値を持ったEnum型のインスタンスを生成するにはどうしたらいいでしょうか。
Enum.Parse(type, value)でobject型を得られるところまでは分かったのですが、これをtype型にキャストする方法がわかりません。
Enum.Parse(type, value) as type のようなことが出来ればいいのですが。
0679614
2010/08/01(日) 11:54:22× typeが様々なEnum型の場合、type型からvalue値を持ったEnum型のインスタンスを生成するにはどうしたらいいでしょうか。
↓
○ typeが様々なEnum型の場合に、typeのEnum型のvalue値を持ったインスタンスを生成するにはどうしたらいいでしょうか。
0680デフォルトの名無しさん
2010/08/01(日) 12:17:46ttp://ideone.com/qQW6b
0681デフォルトの名無しさん
2010/08/01(日) 12:52:04あとは、もっとリフレクション勉強した方がいいんじゃないかと。
0682デフォルトの名無しさん
2010/08/01(日) 13:07:08なんか突っ込みどころがズレてる気もする。
614は
>これをtype型にキャストする方法がわかりません
こう言ってるんだから、少なくともC#では、実行時にメソッドの返り値や
変数の型を指定することはできない、というような回答でないとおかしいのでは
0683デフォルトの名無しさん
2010/08/01(日) 13:23:00{
object parsed = Enum.Parse(typeof(T), str);
return (T)parsed;
}
とかいうコード示すのがいい気もしてきた。
0684デフォルトの名無しさん
2010/08/01(日) 15:15:31Func<int, bool> f1 = SerchValue;
Func<int, int, bool> f2 = SerchValue;
foreach (var s in src.Where(f1)) Console.WriteLine(s);
foreach (var s in src.Where(f2)) Console.WriteLine(s);
static bool SerchValue(int x, int index) {
return ((x + index) % 2) == 0;
}
static bool SerchValue(int x) {
return (x % 2) == 0;
}
匿名メソッド、ラムダ式を使用せずに、
Func<int, bool> f1 = SerchValue;
Func<int, int, bool> f2 = SerchValue;
の宣言を行わずして記述できる方法が不明。
教えて。
0685デフォルトの名無しさん
2010/08/01(日) 15:26:47質問の意図がつかめないけどこういうことかな?
foreach (var s in src.Where((Func<int, bool>)SearchValue)) Console.WriteLine(s);
foreach (var s in src.Where((Func<int, int, bool>)SearchValue)) Console.WriteLine(s);
0686デフォルトの名無しさん
2010/08/01(日) 15:35:38foreach (var s in src.Where(Func<int, bool>SearchValue)) Console.WriteLine(s);
foreach (var s in src.Where(Func<int, int, bool>SearchValue)) Console.WriteLine(s);
とか記述して、なぜだろうって思ってたw
単純にキャストですね。
ありがとうございます!
0687614
2010/08/01(日) 21:14:22それはわかります。でも、特定のEnum型に代入するためにはキャストが必要ですよね?
↓このようにはできるのですが、
MyEnum me = (MyEnum)Enum.Parse(typeof(MyEnum), "hoge");
このMyEnumの型がType型で与えられているときは、どうすればいいでしょうか?
0688614
2010/08/01(日) 21:15:25これはよさそうですね。試してみます。
0689デフォルトの名無しさん
2010/08/01(日) 21:17:03<T>のTはType型とはいわない。ジェネリックの型引数とか呼ぶ。
0690デフォルトの名無しさん
2010/08/01(日) 21:19:41まず知らないわけだから
0691614
2010/08/01(日) 21:25:44残念ながら、T Parse<T>ではダメでした。
下記のようなことをやりたいのですが、<>にはType型の変数を入れられないようです。
Type t = typeof(MyEnum);
object obj = Parse<t>("hoge"); //←これが出来ない。
0692625
2010/08/01(日) 21:31:12ルーティングテーブルで検討してみましたが
膨大な数のIPに対してすべてのルートを追加するのは現実的ではないので
理想を言えば ping.exe の -j オプションのように経由するGWを指定して
PINGテストをできればよいのですがPINGクラスを見てもそれらしきものが見つかりませんでした
何か良い方法はないでしょうか
NW構成は [PC]-[HUB]-[ネットワークごと複数ルーター]-[インターネット] です
0693デフォルトの名無しさん
2010/08/01(日) 21:38:31だからリフレクション勉強しろってば。
0694614
2010/08/01(日) 22:35:03ご指導ありがとうございます。
先ずは、書籍やC#の初心者向けのスレッドなどを幅広く利用して勉強してみたいと思います。
0695デフォルトの名無しさん
2010/08/01(日) 22:59:40個別のIPだけじゃなくて、ネットワークも指定できるよ
ネットワークマスクで指定すればいいじゃん
0696デフォルトの名無しさん
2010/08/01(日) 23:16:40ありがとうございます。
ちょっと理由があってマスク指定しても正常にルーティングされないんです。
それで別の方法を検討中です。
0697デフォルトの名無しさん
2010/08/01(日) 23:27:000698デフォルトの名無しさん
2010/08/01(日) 23:29:21リフレクションというか、基礎が徹底的に欠けてる感じだねえ。
一度書籍をザッと眺めるといいと思うよ。
0699695
2010/08/01(日) 23:31:13駄目だしはしていないと思いますが・・・
0700デフォルトの名無しさん
2010/08/02(月) 00:13:010701デフォルトの名無しさん
2010/08/02(月) 00:24:210702デフォルトの名無しさん
2010/08/02(月) 01:39:362chでもそれはまずいよ。
0703デフォルトの名無しさん
2010/08/02(月) 02:25:190704デフォルトの名無しさん
2010/08/02(月) 08:16:07だからType型で与えられてるならキャストする意味無いんだから
Type t = typeof(MyEnum);
object obj = Enum.Parse(t, str);
でいいんだよ
特定のEnum型に代入したいならそもそもType型で与えられてないだろ?
頭を整理して考えてみて
0705デフォルトの名無しさん
2010/08/02(月) 10:36:47内容に合わせて自動的に小さくするには、どうしたら良いでしょうか?
今はコントロールとセルと間にグレーの余白ができてしまいます。
0706デフォルトの名無しさん
2010/08/02(月) 14:14:18Form上(に配置したアイコン または 登録したメニュー欄)から新しいウィンドウを開くのは
「Form内にFormを配置する」と考えていいでしょうか?
または、DataGridViewなんかでもできますでしょうか?
例:JaneStyleの板一覧ウィンドウなど。
枠がついてて右上に×を出して閉じれるようにしたいです。
0707デフォルトの名無しさん
2010/08/02(月) 14:19:35Formの中を分割したいだけだろ?
0708デフォルトの名無しさん
2010/08/02(月) 14:57:21自分のバージョン情報だと
string appVersion = Application.ProductVersion;
で取れるんだけど参照したdllはどうするのかわけわかめ
0709デフォルトの名無しさん
2010/08/02(月) 15:36:21呼び出すみたいなことをやりたいと思ってます。
調べてたら Func<>という奴がそれっぽいみたいですが
ref / out を使おうとするとエラーになってしまいます。
Func<> では使えないのでしょうか?
また、ほかに実現する手段ありますか?
0710デフォルトの名無しさん
2010/08/02(月) 15:44:25Assembly
>>709
delegateは調べてみた?
0711デフォルトの名無しさん
2010/08/02(月) 15:46:320712デフォルトの名無しさん
2010/08/02(月) 16:05:47System.Diagnostics.FileVersionInfo.GetVersionInfoがそれっぽい。
>>709
Func<>はMSDNでみてもわかるように、引数にref/outが指定されていないデリゲート。
なので自分でそれらしいものを用意すればいいんじゃないかと。
delegate TResult FuncRef<T, TResult>(ref T value);
delegate TResult FuncOut<T, TResult>(out T value);
0713デフォルトの名無しさん
2010/08/02(月) 19:02:27で何から始めればいいでしょうか?
プログラミング経験といえばFortran90、BASICぐらいしかありません(それもかじった程度)
0714デフォルトの名無しさん
2010/08/02(月) 19:04:500715デフォルトの名無しさん
2010/08/02(月) 19:04:57まずそのVS2003をそっと押し入れに戻すところから。
0716デフォルトの名無しさん
2010/08/02(月) 19:09:02あれどういう需要あんの?
0717デフォルトの名無しさん
2010/08/02(月) 19:14:59情報系じゃない学者先生が惰性で使う
0718デフォルトの名無しさん
2010/08/02(月) 19:29:08ttp://www.atmarkit.co.jp/fdotnet/csharp_abc2/index/index.html
早く上達して無能な僕ちゃんに教える立場になっておくれ
0719デフォルトの名無しさん
2010/08/02(月) 19:46:52線を太くしたいのですが、それらしきプロパティがありません。
DataPointのサイズをいじればいいのかな?と思って色々試しているのですが、変わりません・・・。
どなたかお願いします。
0721デフォルトの名無しさん
2010/08/02(月) 21:58:040722デフォルトの名無しさん
2010/08/02(月) 22:02:03少なくとも工学ではまだまだ現役。最古の高級言語なのにね。
行列とかベクトルとかの扱いが楽だから簡単なシミュレーション書きたいときに重宝。
スパコンなんかでもまだまだ使われてるとか。
0723デフォルトの名無しさん
2010/08/02(月) 22:17:18SeriesのBorderWidthプロパティ?
0724614
2010/08/02(月) 23:26:21切羽詰っていたので勘違いしていましたが、問題は>>691ではなく、
object[] を enum[] に代入することでした。
問題は無事解決しました。ありがとうございました。
0725デフォルトの名無しさん
2010/08/02(月) 23:33:110726デフォルトの名無しさん
2010/08/03(火) 00:49:45存在しない場合に付加するような関数ありますか?
0727デフォルトの名無しさん
2010/08/03(火) 01:01:42new DirectoryInfo(@"c:\test").FullName でも
Path.Combine(@"c:\test", "") でもダメだった・・・
0728デフォルトの名無しさん
2010/08/03(火) 01:07:16Path.Combine(@"C:\test", @".")
とか・・・
0729デフォルトの名無しさん
2010/08/03(火) 01:08:220730デフォルトの名無しさん
2010/08/03(火) 14:25:56Seriesのそれ変えてるんだけど、変化がないんですよね。
よくわからない。
0731デフォルトの名無しさん
2010/08/03(火) 14:28:28とおもったら、マーカーボーダーウィズと勘違いしてた!
ボーダーウィズかえたらいけました。
サンクス!
こんな簡単なことに手間取ってはずかしい・・・。
0732デフォルトの名無しさん
2010/08/03(火) 14:45:040733デフォルトの名無しさん
2010/08/03(火) 19:33:23>>726
二重になってもかまわないから無条件に付加しちゃえ。
0734デフォルトの名無しさん
2010/08/03(火) 20:41:160735デフォルトの名無しさん
2010/08/03(火) 21:02:34\が2つあっても認識するんですね。
知りませんでした。
\が2つ以上でも大丈夫なのでしょうか?
それならいちいちチェックしなくてもいいかなと思いましたが。
0736デフォルトの名無しさん
2010/08/03(火) 21:08:360737デフォルトの名無しさん
2010/08/03(火) 21:25:31String.Substringが遅いんです。
0738デフォルトの名無しさん
2010/08/03(火) 21:27:530739デフォルトの名無しさん
2010/08/03(火) 21:32:15単純に検索なら IndexOf は?
Substring使ってるってことは、ループして自分で検索してるよね?
0740デフォルトの名無しさん
2010/08/03(火) 21:40:05やりたい/やっている動作は検索なのか?
0741デフォルトの名無しさん
2010/08/03(火) 21:59:56と書き込んでいるうちに自己解決しました(ゝω・)v☆キャピ!
0742デフォルトの名無しさん
2010/08/03(火) 22:12:24Lengthが250万ぐらいです。
for (int i = 20; i < text.Length - 2; i++) {
if (text.Substring(i, 1) == "-") {
int pos = 0;
for(int n=2; n< 20; n++){
if (text.Substring(i-n, 1) == " ") {
pos++;
}
if( pos == 2 ){
text = text.Insert(i-n, "\r\n");
break;
}
}
}
}
この中で一番重いのはSubstringですよね?
今回の処理が終わったらIndexOfやってみます。ありがとうです。
0743デフォルトの名無しさん
2010/08/03(火) 22:15:370744デフォルトの名無しさん
2010/08/03(火) 22:25:400745デフォルトの名無しさん
2010/08/03(火) 22:59:04text = text.Insert(i-n, "\r\n"); が一番重そう。
0746デフォルトの名無しさん
2010/08/03(火) 23:03:07string str = "abc";
if(str[1]=='b')
{
// true
}
この程度すら理解してないだろ
0747デフォルトの名無しさん
2010/08/03(火) 23:03:100748デフォルトの名無しさん
2010/08/03(火) 23:05:280749デフォルトの名無しさん
2010/08/03(火) 23:06:430750デフォルトの名無しさん
2010/08/03(火) 23:08:29その仕様をコードじゃなくて言葉に表してみ?
0751デフォルトの名無しさん
2010/08/03(火) 23:09:40・ハイフンから手前を最大20文字見て、二つ目の空白の手前に改行を入れる
0752デフォルトの名無しさん
2010/08/03(火) 23:13:35答えは>>748
0753デフォルトの名無しさん
2010/08/03(火) 23:16:37それともEnvironment.NewLine派?
俺はEnvironment.NewLineだけど
Environment.NewLineはダサいから\r\n使えっていう奴がいるんだよね
0754デフォルトの名無しさん
2010/08/03(火) 23:18:100755デフォルトの名無しさん
2010/08/03(火) 23:20:53とか思っちゃってるのに
改行はNewLineですwなぜ?w
0756デフォルトの名無しさん
2010/08/03(火) 23:22:17"
0757デフォルトの名無しさん
2010/08/03(火) 23:26:01ぜったいやだw
それやってる奴いたら即直させる。
0758デフォルトの名無しさん
2010/08/03(火) 23:29:330759デフォルトの名無しさん
2010/08/03(火) 23:32:49そんじゃあMicrosoft.VisualBasic.ControlChars.CrLfとかMicrosoft.VisualBasic.Constants.vbCrLf
なんてのもあるよ
0760デフォルトの名無しさん
2010/08/03(火) 23:34:55VwwwwwwwwwwwwwBwwwwwwwwwwwwwwwwww
0761デフォルトの名無しさん
2010/08/03(火) 23:56:12\r\n なのか \n\r なのかがわからなくなる。
よっておれは、トランクス派。
0762デフォルトの名無しさん
2010/08/03(火) 23:56:52空文字列は""。
書きやすいのと文字列として色分けされるから。
改行は原則Environment.NewLine。
Win以外の環境でなんて実行しないけどw 一応考慮して。
いっぱい使うときは var nl = Environment.NewLine に入れてる。
0763デフォルトの名無しさん
2010/08/04(水) 00:00:56その頃の意気込みがEnvironment.NewLineなのかw
0764デフォルトの名無しさん
2010/08/04(水) 00:06:28stringクラスにあればいい。
0765デフォルトの名無しさん
2010/08/04(水) 00:07:250766デフォルトの名無しさん
2010/08/04(水) 00:09:57stringクラスに環境依存の定数はちょっとやだ。
0767デフォルトの名無しさん
2010/08/04(水) 01:42:56stringクラスにあればいい。
0768デフォルトの名無しさん
2010/08/04(水) 01:44:21stringクラスに環境依存の定数はちょっとやだ。
0769デフォルトの名無しさん
2010/08/04(水) 01:46:24そんじゃあMicrosoft.VisualBasic.ControlChars.CrLfとかMicrosoft.VisualBasic.Constants.vbCrLf
なんてのもあるよ
0770デフォルトの名無しさん
2010/08/04(水) 01:46:340771デフォルトの名無しさん
2010/08/04(水) 01:49:490772デフォルトの名無しさん
2010/08/04(水) 01:56:40やっぱEnvironmentは長すぎると思わね?
Environment.NewLine使うときって
+ で結合するから更に長くなりがちなんだよね。
だからstringクラスにあればいい。
0773デフォルトの名無しさん
2010/08/04(水) 02:28:410774デフォルトの名無しさん
2010/08/04(水) 02:33:21そこはお前
stringクラスに環境依存の定数はちょっとやだ。
って書いとけよ
0775デフォルトの名無しさん
2010/08/04(水) 02:36:550776デフォルトの名無しさん
2010/08/04(水) 02:41:28public static string AddNewLine(this string value)
{
return value + Environment.NewLine;
}
public static string CombinLine(this string left, string right)
{
return left + Environment.NewLine + right;
}
0777デフォルトの名無しさん
2010/08/04(水) 03:53:240778デフォルトの名無しさん
2010/08/04(水) 03:56:150779デフォルトの名無しさん
2010/08/04(水) 05:04:000780デフォルトの名無しさん
2010/08/04(水) 08:26:45「意味」が通ることが最重要とされるこのご時世に string に環境依存なもの入れたいってはかなりアレだし。
0781デフォルトの名無しさん
2010/08/04(水) 08:48:420782デフォルトの名無しさん
2010/08/04(水) 09:07:20まあ環境無視して同じ出力が得られるようにするのがSilverlightの用途としては普通だろうけど
0783デフォルトの名無しさん
2010/08/04(水) 09:44:41とりあえず System.Net.WebClient を使っているのですがもっと適切なのはありますか?
0784デフォルトの名無しさん
2010/08/04(水) 16:23:58MouseDown、MouseMove、MouseUpを使って移動させることはできましたが、
ウィンドウを非アクティブな状態にして、素早くマウスを動かすと、
フォームがついて来なくなりました。ゆっくり動かすと大丈夫です。
どう言った原因が考えられますでしょうか?
とりあえず、MouseDown時にActiveにすることにより、解決はしています。
0785デフォルトの名無しさん
2010/08/04(水) 16:38:120786デフォルトの名無しさん
2010/08/04(水) 16:40:310787デフォルトの名無しさん
2010/08/04(水) 16:41:25フォーム、フォームのクライアント領域をドラッグして移動する方法
ttp://support.microsoft.com/kb/320687/ja
0788784
2010/08/04(水) 19:00:41キャプチャなしでも、MouseMoveでフォーム外のマウスの位置を取れるみたいです。
イベント発生のきっかけと、イベント発生にタイムラグがあるからですかね。
>>787
めちゃくちゃ簡単ですね。これで試してみます。
ありがとうございました。
0789784
2010/08/04(水) 19:14:460790デフォルトの名無しさん
2010/08/04(水) 20:15:06Aeroシェイクの対応までやってくれる衝撃
■ このスレッドは過去ログ倉庫に格納されています