ふらっとVisual C#,C♯,C#(初心者用) Part100

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
このスレッドは
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
ほかのスレッドでは恐ろしくて書き込めないような低レベル、
もしくは質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からない場合など、勇気をもって書き込んでください。
内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますが、
ご了承下さい。

なお、テンプレ2行目が読めない回答者は邪魔なので後述のC#相談室に移動して下さい。

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

前スレ
ふらっとVisual C#,C♯,C#(初心者用) Part99
http://toro.2ch.net/test/read.cgi/tech/1351515076/

関連スレ
C#, C♯, C#相談室 Part77
http://toro.2ch.net/test/read.cgi/tech/1352467358/
2デフォルトの名無しさん:2012/12/02(日) 17:36:07.63
class hoge {
static void Main() {

string text = @"C:hoge.txt";

Encoding e = Encoding.GetEncoding("shift_jis");

string[] l = File.ReadAllLines(text, e);

int i = 0;
while(l[i]!=null){
Console.WriteLine(l[i]);
i++;
}
}
}
インデクッスが配列の境界外のエラーがでてしまいます
どうすればよろしいでしょうか?
3デフォルトの名無しさん:2012/12/02(日) 17:43:38.84
>>2
foreach 使わんのかい、あとデバッガ使ってみるといい。
File.ReadAllLines() の仕様に最後にnullを入れるってあったかな?

l[i] != null はl[i]にnullが入ってるかチェックしてるんで、l[i]そのものがnullかを見てるわけじゃないぜ。
l.Length > i とかでどうかね。
4デフォルトの名無しさん:2012/12/02(日) 17:43:44.36
whileでなく、forで l.Length分回すか、foreachで回すか
5デフォルトの名無しさん:2012/12/02(日) 17:45:01.12
>>3-4
ありがとうございます
6デフォルトの名無しさん:2012/12/02(日) 18:59:09.66
うっ、このクソスレもついに100を数えたか
7デフォルトの名無しさん:2012/12/02(日) 20:32:59.86
糞スレの始まりにふさわしいクソみたいな質問だった
8デフォルトの名無しさん:2012/12/02(日) 20:53:13.18
以上、糞の排泄終わり
9デフォルトの名無しさん:2012/12/02(日) 20:54:22.73
次スレ発見
10デフォルトの名無しさん:2012/12/02(日) 22:15:09.73
糞スレ発見
11デフォルトの名無しさん:2012/12/02(日) 22:16:48.24
HSVカラーをRGBに変換するのって、フレームワークにないよね?
自分でファンクション書かなきゃだめですよね?
もしかして、どっか奥深くにあったりしないよね?
12デフォルトの名無しさん:2012/12/02(日) 22:18:14.36
ない
んなもんネットにいくらでも転がってるだろ
13デフォルトの名無しさん:2012/12/02(日) 22:23:22.40
HSVなんて書き捨てで十分なレベルの難易度だから
14デフォルトの名無しさん:2012/12/02(日) 22:40:44.62
えぇ〜 DirectX11だとか3Dヌルヌルな時代なもんで、今時グラフィックボードに投げたら
処理してくれるもんだとか勝手に思ってた・・・
15デフォルトの名無しさん:2012/12/02(日) 22:50:19.90
そういうのってプログラマがどんだけ大変なことやらされてるのか知らんのか
GPUにやらせることはできるけど、
Cとアセンブラの中間みたいな変な言語でシェーダ書くんだよ
16デフォルトの名無しさん:2012/12/02(日) 22:59:03.25
まだ動画含む画像処理で絶対使うYCbCrの方が需要あると思う
17デフォルトの名無しさん:2012/12/03(月) 00:20:39.99
フォトショップライクなペイントツール作ったときには自分で作ったわ
18デフォルトの名無しさん:2012/12/03(月) 00:38:33.31
ソリューションエクスプローラでは、

□アプリケーション名
>Properties
>>Settings.settings
>>>Setiings.Desinger.cs

となっており、C:\Users\pc1\Desktop\アプリケーション名\Properties\Settings.settingsにSettingsファイルがあるんですが、


Properties.Settings.Default.〜

とかいうコードを書いたとき、


C:\Users\ユーザー名\AppData\Local\アプリケーション名\アプリケーション名.vshost.exe_StrongName_なんかハッシュっぽいやつ\1.0.0.0\user.config

に値が書かれてしまうようです。

C:\Users\pc1\Desktop\アプリケーション名\Properties\Settings.settingsに値を書かせる方法はないんでしょうか?
19デフォルトの名無しさん:2012/12/03(月) 02:10:21.85
色を変換するくらいシェーダで書いてもそんなに難しくないわよう
20デフォルトの名無しさん:2012/12/03(月) 04:45:50.91
dobonのコピペでなんか書いてるからこういう頓珍漢なレベルの初心者を生み出すんかな
どこで覚えてきたんだか知らんけどSettings触るには早すぎるんじゃないですかね
たぶん何言っても理解できないと思う
21デフォルトの名無しさん:2012/12/03(月) 04:51:43.93
覚えてきてねーからこんな意味不明な質問してんだろ
22デフォルトの名無しさん:2012/12/03(月) 08:57:16.61
>>18
標準では無い Program Filesとかにexeがあったらどうしようもないからな
23デフォルトの名無しさん:2012/12/03(月) 09:23:43.85
デスクトップに設定撒き散らしたら速攻アンインストールするわ
24デフォルトの名無しさん:2012/12/03(月) 10:09:14.71
起動した瞬間意味不明な場所に意味不明なファイル作ってくれるから安心しろ
25デフォルトの名無しさん:2012/12/03(月) 11:11:14.63
>>19
それだけシェーダで書いてもしょうがないじゃん
やりだすと図形や文字の描画とかGUIとか全部フルスクラッチで実装することになるぞ
2618:2012/12/03(月) 12:23:52.95
ありがとうございます
とりあえずデスクトップにソリューションを置いて開発しているんですが、
確かにインストールさせたら、ユーザー名の下にあるべきですね

ただ、ソリューションエクスプローラーにあるSettingsはVisual Studioから生成したんですが、これが参照されないんだったら、なんでこのパス(この場合Desktop)に生成されるんでしょうか?
27デフォルトの名無しさん:2012/12/03(月) 12:32:25.51
プロジェクト内のファイル構成とインストール時の構成は別
ビルドしたらcsファイルとかresxファイルとか無くなるだろ? それがおかしいと思うのか?
28デフォルトの名無しさん:2012/12/03(月) 12:33:37.92
アプリケーション設定はアプリケーション構成ファイルapp.configの中に情報が格納される
設定のうちスコープがユーザーのものについては後から保存可能だが
後から保存したものについては%LocalAppData%以下に保存される
で、アプリ起動時に、まず%LocalAppData%に指定したデータが存在するかどうか確認して、
存在していればそれを、していなければ既定のapp.config、
つまりexeの横に転がってるexe.configの中から取ってくる
2918:2012/12/03(月) 12:53:51.04
詳しく説明ありがとうございました
勉強不足でした
30デフォルトの名無しさん:2012/12/03(月) 12:58:22.16
早く国内でWin8スマフォ出してくれよ!!
もうJavaでAndroidアプリ作るのはウンザリなんだよおおお!!!
31デフォルトの名無しさん:2012/12/03(月) 13:00:35.04
Win8じゃなくてWP8の間違いでした、すまん
32デフォルトの名無しさん:2012/12/03(月) 13:08:29.55
やっぱりオマイラくらいになると
Winストアアプリで副収入200万円くらいになってるわけ?
33デフォルトの名無しさん:2012/12/03(月) 13:11:49.39
>>30
Mono買って浮いた時間で働け
34デフォルトの名無しさん:2012/12/03(月) 17:20:44.55
「新しいプロジェクト」でプロジェクトを作成して
2時間ほど作業したときにVisual C#自体が予期せぬエラーで終了したんですが、
こんな時に限って一回も保存してませんでした。
やっぱりこれは一からやり直しでしょうか…?
35デフォルトの名無しさん:2012/12/03(月) 17:22:53.78
2010から痕跡残さなくなったよね、どっかにあるんじゃないかなあ。
36デフォルトの名無しさん:2012/12/03(月) 17:25:29.22
一度でも実行してりゃ、そこまでのが保存されてるんだけどなぁ
37デフォルトの名無しさん:2012/12/03(月) 17:25:47.00
2010だけどエラー落ちすると復元のダイアログ出るよ
38デフォルトの名無しさん:2012/12/03(月) 17:29:25.42
>>36
あ、デバッグでの実行はしてます。
>>37
2010 Expressですが、
復元のダイアログはでませんでした。
3934:2012/12/03(月) 17:33:37.53
すいません、こちらを見て解決しました。
http://www.atmarkit.co.jp/fdotnet/dotnettips/540vsautobackup/vsautobackup.html
マイドキュメントの
\Visual Studio 2010\Backup Files\WindowsFormsApplication1\~AutoRecover.Form1.cs
にありました。

助かった…。
40デフォルトの名無しさん:2012/12/03(月) 20:57:15.68
>>33
Monoのほうが効率よくAndroアプリ作れるんけ?
41デフォルトの名無しさん:2012/12/04(火) 10:00:40.23
MonoならC#でそのまま出来るってことだろ
iOSアプリも作れるし
42デフォルトの名無しさん:2012/12/04(火) 10:20:35.67
PowerShell 3.0のコマンドレットをC#で作る方法について説明しているサイトありませんか?
43デフォルトの名無しさん:2012/12/04(火) 10:22:36.34
>>40
通常、Android OSのアップデートとDalvik仮想マシンのアップデートはイコールであり、Android端末によっては
製造メーカーの放置プレイにより最新のAPIが利用できない、また製造メーカーがアップデートを提供しても
ユーザーの放置により同一端末で複数バージョンのOSが存在し、それぞれの挙動が異なるなどの問題を抱えて
いることがある。

また一部の機種において、特定のAPIの挙動が異なる、イベント発生タイミングやイベント発生順序が異なるなどの
問題も抱えている。

一方、Mono仮想マシンはアプリと同梱されて配布されるため、Mono仮想マシンを半ば強制的にアップデート
できるようになっている。つまりOSとアプリをセット配布しているようなものであり、Androidのアプリ互換性問題を
大幅に軽減でき、かつアップデートしていない端末でも最新APIが叩けたりする。

ただしMono for Androidはメリットばかりではなく、アプリのサイズが桁違いに超巨大化するというデメリットもある。
たとえば単純な「Hello World」ですら4MBを超えるapkファイルとなる。 また、アプリの起動には仮想OSの起動も
伴うため、アプリの立ち上がりに時間がかかるという問題もある。この起動時間の問題については
Mono for Androidの最新バージョンで大幅に改善されつつある。

※ベータ版まではMono仮想マシンは単体アプリとして配布する形式だったが、製品版ではアプリの互換性の
向上のためにアプリと同梱されるようになった。また開発環境(デバッグ版)では起動速度の高速化のために
共有仮想マシンを使うようになっている。
http://monobook.org/wiki/Mono_for_Android
44デフォルトの名無しさん:2012/12/04(火) 10:34:01.75
Developer Efficiency - XCode, Eclipse, Visual Studio
http://youtu.be/OF5mGoKcm80
45デフォルトの名無しさん:2012/12/04(火) 10:49:02.05
それ操作してる人のツールの習熟度の比較表みたいだなw
まあVSはどうやってもああなるけど。
46デフォルトの名無しさん:2012/12/04(火) 15:35:47.10
とあるDateTimeデータdtがありまして、
その時間と、現時刻との間に、特定の時刻(例えば正午12:00)が挟まっているか
という判定をしたいのですが、どのように判定させたらよいかわからないので、
すみませんがお教えください。
特定の時間が何回挟まったかという判定はしません。


dt:12月1日11:00 現時刻 12月1日13:00 → true
dt:12月1日11:00 現時刻 12月2日1:00 → true
dt:12月1日6:00 現時刻 12月1日11:00 → false
dt:12月1日13:00 現時刻 12月2日11:00 →false
というような感じです。
47デフォルトの名無しさん:2012/12/04(火) 15:43:19.80
日と時間を取り出せばいいんちゃう?
48デフォルトの名無しさん:2012/12/04(火) 15:45:11.37
dtより大きい特定の時刻、の日時が出ればいいわけだよね
4946:2012/12/04(火) 15:46:51.71
説明が足りなくてすみません
dtは過去の時刻になります。
なので、過去の時刻dtから現時刻の間に12:00が入ったか、
を判定したいと思っています。
50デフォルトの名無しさん:2012/12/04(火) 17:13:27.52
static bool Hantei( DateTime dt )
{
    DateTime dtNoon = dt.Date.AddHours( 12 );
    if( dtNoon > dt )
    {
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return dtNoon < DateTime.Now;
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;else
&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return dtNoon.AddDays( 1 ) < DateTime.Now;
&nbsp;&nbsp;&nbsp;&nbsp;}
}

知らんけど
51デフォルトの名無しさん:2012/12/04(火) 17:14:27.60
ぐは

bool Hantei( DateTime dt )
{
  DateTime dtNoon = dt.Date.AddHours( 12 );
  if( dtNoon > dt )
  {
    return dtNoon < DateTime.Now;
  }
  else
  {
    return dtNoon.AddDays( 1 ) < DateTime.Now;
  }
}
5246:2012/12/04(火) 17:52:42.42
>>51
ありがとうございました!
参考にさせてもらって、無事プログラム組むことができました。

12:00の設定の方法に特に悩んでましたので
参考になりました。
53デフォルトの名無しさん:2012/12/04(火) 19:40:40.84
>>43
なるほど
54デフォルトの名無しさん:2012/12/05(水) 09:24:00.53
NPOI2.0でxlsxの編集(Genrate)のサンプル動かした人いる?

なんか作成されるファイルが壊れて開けないんだが
55デフォルトの名無しさん:2012/12/05(水) 14:26:47.09
試してみたけど開けるぞ、、test.xlsだよね?
56デフォルトの名無しさん:2012/12/05(水) 14:27:16.03
またワケのわからん略語か
57デフォルトの名無しさん:2012/12/05(水) 14:35:56.37
略語ってなんのこと?
もしかしてNPOIのこと?

略語じゃないけど。
http://npoi.codeplex.com/
58デフォルトの名無しさん:2012/12/05(水) 14:49:41.51
>55
hello.xlsxを編集して作るtest.xlsx
「xls」ではなく「xlsx」の方(xssf)の方なんだけど開けた?
自分の環境だとファイルは作られるけど開けないんだよね
なんか環境かなぁ。。。。
59デフォルトの名無しさん:2012/12/05(水) 15:10:42.89
>>58
xlsxのほうかごめん。
たしかに開けないね。
何も操作しないで書いたtext.xlsxと、元のhello.xlsxとを比較すると
わかるかもね、どっちもzipに直せば展開できるし。
60デフォルトの名無しさん:2012/12/05(水) 15:24:36.15
>59
サンクス。
中身のxmlの解析まではしたくないなぁ。。。
まだNPOI2.0を使うのは時期尚早ってことなのかね。
closedXMLに逃げるかなぁ。
そうすると「xls」が使えないんだよなぁ
61デフォルトの名無しさん:2012/12/05(水) 22:12:38.18
フォームのボタンを押したら実行されるスレッドで実行中もフォームの操作ができるようにしたいのですがどうやってやればいいですか?
実行に際して引数を渡したいですが、public変数を使うとかっこ悪いのでちゃんとした方法でやりたいです。
62デフォルトの名無しさん:2012/12/05(水) 22:15:24.64
form.Invoke(()=>{
 Hoge(local);
});

こんなかんじでUIのスレッドにローカル変数渡せるでしょう
63デフォルトの名無しさん:2012/12/05(水) 22:15:53.29
デリゲートに引数わたせんでしょ
64デフォルトの名無しさん:2012/12/05(水) 22:21:54.15
引数渡せるしクロージャでダメな理由も見当たらない
65デフォルトの名無しさん:2012/12/06(木) 07:20:36.58
でもそのやり方は王道ではないよね
66デフォルトの名無しさん:2012/12/06(木) 09:09:39.51
ならば覇道を歩めばよい
67デフォルトの名無しさん:2012/12/06(木) 09:21:04.37
プログラムなんぞ動けばよかろうなのだ
68デフォルトの名無しさん:2012/12/06(木) 10:49:51.35
スレッドに引数渡したいけど、public変数使いたくないって意味がわかんない
69デフォルトの名無しさん:2012/12/06(木) 12:04:30.47
わかんなくはないでしょ
ロックとか考えなくちゃいけなくなって面倒くさい
70デフォルトの名無しさん:2012/12/06(木) 17:40:48.47
別フォーム起動しちゃったら?
71デフォルトの名無しさん:2012/12/06(木) 17:51:40.38
馬鹿はすっこんでろ
72デフォルトの名無しさん:2012/12/06(木) 18:22:13.79
コロンブス現るw
73デフォルトの名無しさん:2012/12/06(木) 18:32:02.99
ちょっと何いってるかわからないw
スレッドの話なのに別フォームって基本的にUIスレッドひとつしかないっての…
74デフォルトの名無しさん:2012/12/06(木) 18:33:56.49
BitmapでAddすればいいよ
75デフォルトの名無しさん:2012/12/06(木) 18:35:37.88
OS起動しちゃったら?
76デフォルトの名無しさん:2012/12/06(木) 18:36:52.96
まあ別アプリ開いちゃうってのは蟻だな
77デフォルトの名無しさん:2012/12/06(木) 18:38:39.41
蟻なのか?
同期とったりデータ渡したり面倒そうだけど…
IPCとか使って同期オブジェクト作ってやればできるけど。
78デフォルトの名無しさん:2012/12/06(木) 18:41:04.10
別アプリの中で全部やらせて同期取ればいいんじゃね?
だって元フォームの操作したんでしょ?
79デフォルトの名無しさん:2012/12/06(木) 23:04:04.26
ねーよ
80デフォルトの名無しさん:2012/12/06(木) 23:25:45.64
フォーム二重起動しちゃえばいいのに
81デフォルトの名無しさん:2012/12/06(木) 23:55:49.17
やめろやめろ
ムチャクチャなことを言うな
82デフォルトの名無しさん:2012/12/07(金) 01:26:10.69
他人のPCにタスク投げちゃう
83デフォルトの名無しさん:2012/12/07(金) 03:40:52.69
クロージャ渡しは王道だよ
必要ない情報をクロージャ内に隠すことで依存性の発生を避ける事が出来る
84デフォルトの名無しさん:2012/12/07(金) 13:24:18.42
C#のイベントってVisualStudioで選べるものだけなのですか?
自分で作ったりできないのですか?
85デフォルトの名無しさん:2012/12/07(金) 13:35:33.77
既存のコントロールにイベントを追加したい場合は
そのクラスを継承してください
86デフォルトの名無しさん:2012/12/07(金) 13:59:55.35
なんでIList<T>にはForEach#があるのに
?IEnumerable <T>??にはないの?おせーてくだしあ
87デフォルトの名無しさん:2012/12/07(金) 14:06:53.22
IList<T>にForEachなんてメンバは存在しないが?
88デフォルトの名無しさん:2012/12/07(金) 18:23:23.10
エクスプローラでファイルを右クリック⇒プロパティした時のウィンドウを
C#から直接呼び出すことは出来ませんか?
89デフォルトの名無しさん:2012/12/07(金) 18:38:54.63
直接は無理
ShellExecuteExでぐぐれ
90デフォルトの名無しさん:2012/12/07(金) 20:05:01.34
拡張メソッドで作ればいいじゃん。ForEachぐらい
91デフォルトの名無しさん:2012/12/07(金) 20:27:56.26
>>86
ForEachで使うのはIEnumerableのGetEnumeratorで返される
IEnumeratorのオブジェクトだから

列挙可能(IEnumerable)と列挙子(IEnumerator)は別ね
92デフォルトの名無しさん:2012/12/07(金) 20:45:24.27
>>91
意味不明すぎる
IEnumerable<T>とIList<T>は両方IEnumerableだから何の理由にもなってない
93デフォルトの名無しさん:2012/12/07(金) 20:56:17.80
疑問そのものに答えたわけじゃなかったんだけど、うまく伝わらなかったか
しかし読み返したらそういう風にみえるな

IEnumerableそのものがForEacheしてるわけじゃないよ
ということを言いたかっただけ
94デフォルトの名無しさん:2012/12/07(金) 20:58:44.74
もしかして:foreach
95デフォルトの名無しさん:2012/12/07(金) 21:18:36.40
IEnumerableを実装したクラスは、GetEnumeratorメソッドで
IEnumerator を返すという決まりになっている。

つまり、IEnumerableってのは、その型が列挙可能であることを示す。
IEnumeratorは、イテレータパターンで使うために必要なものを返す。
96デフォルトの名無しさん:2012/12/07(金) 21:27:45.88
はぁ
97デフォルトの名無しさん:2012/12/07(金) 21:28:12.59
ForEachって、C#2.0で匿名メソッドが追加されたときにこんなに便利ですよ
という宣伝のためのサンプルコードを書くためだけに追加されたようなもんだよ
3.0以降では副作用をはっきり区別するためにforeach推奨になって要らなくなった子
WinRTでは削除されてる
98デフォルトの名無しさん:2012/12/07(金) 21:41:28.39
ForEachはvoid型だから必ず単独のステートメントになる
インラインで書けないのでコーディング上のメリットがない
99デフォルトの名無しさん:2012/12/07(金) 21:42:03.51
で結局 ForEachメソッドはどこで定義されてるの?
100デフォルトの名無しさん:2012/12/07(金) 21:50:46.69
副作用とかあったけ?
101デフォルトの名無しさん:2012/12/07(金) 21:52:02.66
ごめん勘違いしてたわ
ForEachメソッドの話だったのね

List<T>だよ。
102デフォルトの名無しさん:2012/12/07(金) 22:15:49.29
列挙は普通は副作用あるだろう
ループ変数を書き換えたりしなきゃいけないからな
103デフォルトの名無しさん:2012/12/07(金) 22:44:19.23
プログラムカウンタが変わるのも副作用とか言い出しそう
104デフォルトの名無しさん:2012/12/07(金) 23:02:39.96
インクリメントをなくすために単連結リストをカーとかクダーとかしてる人もいるんですよ
105デフォルトの名無しさん:2012/12/07(金) 23:05:18.31
ループ変数ごときで副作用とかいってる奴の存在が副作用だろw
106デフォルトの名無しさん:2012/12/07(金) 23:19:33.12
ForEachメソッドってインターフェースに定義あるとか、拡張メソッドだとかじゃなくて
各クラスが勝手に実装してるだけってことか
107デフォルトの名無しさん:2012/12/07(金) 23:34:13.98
public void ForEach( Action<T> action );
108デフォルトの名無しさん:2012/12/07(金) 23:47:20.34
ForEachに副作用があるんじゃなくて
多くの場合副作用を起こす処理をすることになるからだよ
だから関数型を強く意識したEnumerableクラスにはForEachは無い
109デフォルトの名無しさん:2012/12/08(土) 00:20:07.36
>>85
84です
ありがとう
継承って・・・勉強してみます
110デフォルトの名無しさん:2012/12/08(土) 00:23:08.87
var texts = new[] { "A", "B", "C", "X", "D", };

for (int i = 0; i < texts.Count(); i++)
{
  if (texts[i] == "X") { break; }
  Console.WriteLine(string.Format("{0}番目の要素は{1}", i, texts[i]));
}

 ↓ こうしたらいかんのか?

texts.TakeWhile(foo => foo != "X").Select((foo, bar) => Tuple.Create(foo, bar)).ToList().ForEach(foo => Console.WriteLine(string.Format("{0}番目の要素は{1}", foo.Item2, foo.Item1)));
111デフォルトの名無しさん:2012/12/08(土) 00:28:04.03
>>109
public ButtonEx : Button{
public void OnCall(){
  if( this.Call != null )
  this.Call( this , EventArgs.Empty );
}
public event EventHandler Call;
}

こんな感じでイベント作れる。
あとはググったりしてくれ。
112デフォルトの名無しさん:2012/12/08(土) 00:38:56.68
>>110
ToListしたら遅延実行の意味がなくなる。
あとC#でTupleとか使うな。Item2とか暗号かよ。
113デフォルトの名無しさん:2012/12/08(土) 00:40:22.50
>>110の場合は匿名型を使うべき
Tupleまじやめて
114デフォルトの名無しさん:2012/12/08(土) 00:42:43.87
>>110
Tuple.Createじゃなくてstringを直接作ればいいし、Console.WriteLineには書式を渡せるから

LINQ厨ごっこならstring.JoinとかMax(foo=>{…;return 0;});でいいんじゃない?
ToList().ForEachはポイント低いよ
115デフォルトの名無しさん:2012/12/08(土) 00:51:49.82
TupleってF#やF#と他の言語の相互運用のために用意されてるだけだよ
タプルは複数の戻り値として name, age = FindPerson(); のようにして使うもので
C#ではこうやって変数名付けられないから読めないコードのできあがり
仮に複数戻り値が使えたとしても静的型の恩恵はほとんど無くなるしな
116デフォルトの名無しさん:2012/12/08(土) 01:06:38.11
ToListよりもそのあと追加とか削除が不要なら
ToArrayのほうがよくないか?
117デフォルトの名無しさん:2012/12/08(土) 01:18:29.24
118デフォルトの名無しさん:2012/12/08(土) 01:32:21.86
>>116
ToArrayはサイズ調整のためにバッファに貯めた後にまた別の配列にコピーしないといけないから
バッファ一つで済むToListの方が軽いはずじゃね
どちらにしろToList().ForEachはアホだけど
119デフォルトの名無しさん:2012/12/08(土) 12:40:45.33
虚しいとき〜!

コントロールコレクション作ったのに0番目にしかアクセスしないとき〜
120デフォルトの名無しさん:2012/12/08(土) 13:49:22.49
EnumerableにもToArrayにもForEachはないじゃない
だからToListするって言う陳腐な例を出してみました
あとTupleってオブジェクトが短命で
命名のコストを払うのが馬鹿馬鹿しいときにうってつけだから
1行の匿名関数ないでしか生きられないLINQの変数を纏めるときにこうやって使うものだと思っていた
短命なデータを纏めるだけに匿名型で命名するは冗長じゃありませんか?
121デフォルトの名無しさん:2012/12/08(土) 18:40:00.53
可読性という観点が欠落している
C#がもしPythonのようなタプルをサポートしていて
foreach (var foo, index in texts.TakeWhile(foo => foo != "X").Select((foo, index) => foo, index) {
 Console.WriteLine(string.Format("{0}番目の要素は{1}", index, foo));
}
このように書けるんならまあ(これでも型がいい加減になるから短命なら)アリだがItem1やItem2はありえない
特殊変数かよ
122デフォルトの名無しさん:2012/12/08(土) 19:34:39.93
完全に切り離したクラスにまとめて引数送るときに重宝してるわ
123デフォルトの名無しさん:2012/12/08(土) 19:42:07.80
イヤな匂いがする
124デフォルトの名無しさん:2012/12/08(土) 19:42:47.35
馬鹿とハサミは使いようって言うしな
おまえら高いところ好きだろ?
125デフォルトの名無しさん:2012/12/08(土) 19:45:19.95
トイレ以外離れたくないほど部屋がすきなんだよ
126デフォルトの名無しさん:2012/12/08(土) 20:58:17.77
5個のradioButtonがあってチェックされてるものがどれなのかで処理を分けたいのですが
if文を4個書いてチェックがtrueだったら処理をしてgotoなどで下に飛ぶ(残りのifを処理せずに)という
コードを書いてみたのですが、こういう処理でもっといいかきかたがあったら教えて頂きたいです。
127デフォルトの名無しさん:2012/12/08(土) 21:20:28.70
>>126
結局ベタに書くのが正解。

Checkedイベントを拾ってその時点でどのラジオボタンがチェックされているかを
整数値に変換しておくとか方法は考えられるが、期待するほど簡潔にも分かりやすくもならない。
128デフォルトの名無しさん:2012/12/08(土) 21:22:04.82
すまんCheckedChangedね
129デフォルトの名無しさん:2012/12/08(土) 21:42:16.61
>>126
・配列に格納する
・コントロールのコレクションを使う。
130デフォルトの名無しさん:2012/12/08(土) 21:47:58.89
こうかな?
var foo = new Dictionary<RadioButton, Action> { { this.radioButton1, () => { } }, { this.radioButton2, () => { } }, };
this.panel.Controls.Cast<RadioButton>().Where(radio => radio.Checked).ToList().ForEach(radio => foo[radio]());
131デフォルトの名無しさん:2012/12/08(土) 22:14:42.14
ぎゃああああああああああああああああああ
132デフォルトの名無しさん:2012/12/08(土) 22:43:25.69
どうにかしてToListしなくちゃいけない病かよw

var foo = new Dictionary<RadioButton, Action> { { this.radioButton1, () => { } }, { this.radioButton2, () => { } }, };
ここまでしてるなら

foo.First(f => f.Key.Checked).Value();
でいいじゃん
133デフォルトの名無しさん:2012/12/08(土) 22:52:18.68
糞コードは誰の目にも触れないよう焼き捨てるべき
134デフォルトの名無しさん:2012/12/08(土) 23:16:44.65
参考のためにウンコードにうpしておくべき。
135デフォルトの名無しさん:2012/12/08(土) 23:25:42.92
>>130
こんなやつが会社にいたら恐ろしい
136デフォルトの名無しさん:2012/12/09(日) 02:58:06.57
Debug.WriteLine(string.Format("foo {0}", bar)); // string bar = "bar"
というようなコードがあって、当然ながら "foo bar" と出力されるんですが、
先日ReSharperを入れてみたら、このコードは Redundant 'String.Format()' call だと怒られてしまいました。
string.Formatはいらないのかなと思って Debug.WriteLine("foo {0}", bar); にしてみたら、
なぜか出力が "bar: {0} foo" になってしまいました。警告の解決方法が分からないので教えて下さい。
137デフォルトの名無しさん:2012/12/09(日) 03:05:02.61
>>136
指摘はstringとStringのことじゃなの?
138デフォルトの名無しさん:2012/12/09(日) 10:18:45.42
>>111>>117
84です
継承ってそういうことなんですね
すごくよくわかりました
ありがとう
139デフォルトの名無しさん:2012/12/09(日) 10:59:06.04
だがコントロールのイベント実装はEventsプロパティを使うべきだな
140デフォルトの名無しさん:2012/12/09(日) 11:02:20.74
>>136
細かいこと気にするなら引数にカルチャを指定しないString.FormatやToStringは非推奨。
FxCopで警告が出たはず。
>>136の警告とは別の問題だと思うが、細かいコーディングスタイルなんかよりは
FxCopが出すような警告の方が大事だと思うよ。
141デフォルトの名無しさん:2012/12/09(日) 13:52:30.90
VS2010で複数のソリューションを一括でビルドする方法を教えて下さい
バッチでもなんでもいいので。
142デフォルトの名無しさん:2012/12/09(日) 13:54:15.26
全部ビルドするようなメイクファイルプロジェクト作るだけじゃないんすか
143デフォルトの名無しさん:2012/12/09(日) 13:55:52.73
複数のソリューション内のプロジェクトをすべてまとめたソリューションを作ればいいんじゃないの?
144デフォルトの名無しさん:2012/12/09(日) 13:58:55.84
>>142-143
それどうやるんですか?
初心者で全くわかりません。
145デフォルトの名無しさん:2012/12/09(日) 13:59:31.46
何かフルボッコにあったのだが
上の回答だとラジオボタンじゃなくて、チェックボックスだと困らないか?
結局ifを並べるのが正解なの?
自分の師匠は
「LINQってのはSQLみたいにデータを抽出するためだけのものではなく、
従来は、順次・分岐・反復を縦に長いコードで書いていたが、
これからはこれをメソッドで連結して、横に長いコードにするのがトレンド。
60年以上続いた構造化プログラミングに終止符を打つものだ」って言ったよ
C#の構文木やXMLみメソッドチェインになったし
俺は騙されていたのか!!
146デフォルトの名無しさん:2012/12/09(日) 13:59:58.40
それは初心者以前です。
Visual Studioを使う資格がありません。
147デフォルトの名無しさん:2012/12/09(日) 14:00:46.60
バッチで十分
msbuild "ソリューション1のパス"
msbuild "ソリューション2のパス"
これを並べるだけ
msbuildにパスが通ってなければググれ
148デフォルトの名無しさん:2012/12/09(日) 14:02:27.92
>>145
トレンドって言葉使ってるのか
なぜ横に並べるのがいいのか理解してるか怪しいなその師匠
その師匠の中では”トレンド”止まりなんだろうな
149デフォルトの名無しさん:2012/12/09(日) 14:02:30.89
>>147
ありがとうございます。ググってやってみます
150デフォルトの名無しさん:2012/12/09(日) 14:05:01.93
>>145
今のC#は関数型と手続型のちゃんぽん言語なので、
関数型で書くべき部分(データの抽出・変換)は副作用のないLINQで書いて
手続型で書くべき部分(上で抽出したデータの消費、つまりforeachなど)はCっぽく書くのがよい
151デフォルトの名無しさん:2012/12/09(日) 14:07:20.01
>>145
Linqには、いろいろあるがLinq to Objectは、集合(コレクション)に対して
ああして、こうして、これとこれをこうして・・・みたいな感じだと思ってる。
152デフォルトの名無しさん:2012/12/09(日) 14:12:27.25
わらわら湧いてきおって
153デフォルトの名無しさん:2012/12/09(日) 14:15:08.14
>>145

>>126の要望に>>130で回答されたら
そりゃぶん殴られるだろ
154デフォルトの名無しさん:2012/12/09(日) 14:21:07.07
>>152
おまえがな
155デフォルトの名無しさん:2012/12/09(日) 14:25:22.11
9つの値があって、ソートしたときに5番目の値を選びたいのですが
Listを使わずにやる方法ってないでしょうか?
156デフォルトの名無しさん:2012/12/09(日) 14:28:07.68
values.OrderBy(x => x).Skip(4).First()
157デフォルトの名無しさん:2012/12/09(日) 14:29:59.33
魔法の言葉っすか
158デフォルトの名無しさん:2012/12/09(日) 14:41:45.72
>>156
わざわざSkipせんでもElementAtでいいよ
159デフォルトの名無しさん:2012/12/09(日) 14:42:57.94
(x => x)減らせないの?
160デフォルトの名無しさん:2012/12/09(日) 14:54:11.76
「基本的には寝ているけど、キューにActionが来れば1つずつ処理していくサブスレッド」
みたいなのを実現するクラスはありますか?
名前的にThreadPool.QueueUserWorkItemかなと思ったんですが、
別々のスレッドで並列で実行されてしまうようです。
161デフォルトの名無しさん:2012/12/09(日) 15:01:40.84
>>160
queue = new BlockingCollection<Action>();
while (!queue.IsCompleted) {
 var action = queue.Take(); // 空なら新しく追加されるまでブロックしてくれる
 action();
}
これをバックグラウンドスレッドで実行しておいて、queueにAddしていけばいいだけ
終了させたいときにはqueue.CompleteAdding();ね
162デフォルトの名無しさん:2012/12/09(日) 15:05:49.23
VS起動するつもりでついついJane起動しちまう
163デフォルトの名無しさん:2012/12/09(日) 15:11:02.67
Array.Sortなんてあったの知らなかった ごめんちゃい
164デフォルトの名無しさん:2012/12/09(日) 15:46:27.67
>>162
わからなくもない
165デフォルトの名無しさん:2012/12/09(日) 16:09:47.63
Parallelが神すぎる
使いどころはまればネイティブなんておよびじゃねー
166デフォルトの名無しさん:2012/12/09(日) 16:13:07.32
ネイティブではOpenMPで似たようなことができるが
変な言語拡張なしでライブラリレベルでここまで見通し良く書けるのはすばらしい
167デフォルトの名無しさん:2012/12/09(日) 16:18:06.39
大量の文字列(数千行)を描画して、その内、指定範囲内のみ表示し、
表示されている部分以外は処理を行わなず、上下にスクロールして表示領域を変更できる
というものを、既存のコントロール(System.Windows.Forms系)を使用せずに実装したいのですが、どのような
手法をとればよいのでしょうか?また、これらの情報をWeb上で検索する場合
どのようなキーワードが適しているのでしょうか?
168デフォルトの名無しさん:2012/12/09(日) 16:21:22.63
UserControl継承してGDI+で描画するとかか?
169デフォルトの名無しさん:2012/12/09(日) 16:27:31.93
クリッピング領域?
170166:2012/12/09(日) 16:29:03.71
あっ・・・すいません。
ここは「Visual」C#のスレでしたね・・・
質問はPlayStationMobileStudio(monodevelop)の内容でした・・・
171デフォルトの名無しさん:2012/12/09(日) 16:32:37.78
まず書き込む前にいろいろ見直せ
レス番も違うぞ
172デフォルトの名無しさん:2012/12/09(日) 16:32:44.53
>>167
たった数千行なら何も考えずに全部描画しても恐らく問題ないと思うけど
173167:2012/12/09(日) 16:47:30.51
すいませんでした・・・
174デフォルトの名無しさん:2012/12/09(日) 16:49:58.35
指定範囲内のみ表示だと再描画時の処理が増えてスクロールが重くなるよ
175デフォルトの名無しさん:2012/12/09(日) 16:52:05.34
全部描画だと拡大縮小が重くなるけどな
176デフォルトの名無しさん:2012/12/09(日) 16:55:19.56
スクロールのたびに画像作り直すよかましだろ
177デフォルトの名無しさん:2012/12/09(日) 16:57:26.64
ワールド変換行列
178デフォルトの名無しさん:2012/12/09(日) 16:59:56.59
テキストのこといってんじゃねーの
179167:2012/12/09(日) 17:03:37.29
ええ・・・仰るとおり指定範囲プラスアルファの描画が必要なのかなあ?と考えてました・・・

>>172
前述の環境ですので、描画できる範囲が狭いんです
180デフォルトの名無しさん:2012/12/09(日) 17:29:14.24
>>179
だから、もちろん座標系の変換はワールド変換等を使って行ってやる必要はあるけど、
ユーザーコードの側でクリッピングを考える必要は恐らくないよ。

表示範囲外への描画はGDI+が適当に握りつぶすからパフォーマンスはそんなに心配しなくても大丈夫。
181デフォルトの名無しさん:2012/12/09(日) 17:31:11.85
自分でやってることが理解できてねーのに用意されてるもん使いたくねーとか馬鹿じゃねーの
182デフォルトの名無しさん:2012/12/09(日) 17:35:20.20
スクロールはぬるぬるじゃないとだめ?
183デフォルトの名無しさん:2012/12/09(日) 17:35:49.43
ってかDataGridViewコントロールでデータバインディングさせてやれば、
勝手に必要な部分(表示部分)だけ描画してくれるだろ?
184デフォルトの名無しさん:2012/12/09(日) 17:45:06.15
まんこはぬるぬるじゃないとだめ
185167:2012/12/09(日) 18:08:54.65
みなさんありがとうございました。
参考にさせていただきます。
186デフォルトの名無しさん:2012/12/09(日) 18:16:15.28
タイマーのtickイベントのintervalを100(0.1秒)にすると、ダブルクリックが無効になるのですが、この対処法あれば教えてください
エクスプローラのフォルダをダブルクリックで開けなくなったりします
恐らく最初のクリックと次のクリックの間にtickイベントが走ってフォーカスか何かが移るのが原因だと思うのですが…
tickイベントに何も処理を書いていなくてもこうなります
intervalの間隔を長くするのはNGでお願いします
187デフォルトの名無しさん:2012/12/09(日) 18:22:48.92
タイマーじゃなくてスレッドを使えばいいよ
188デフォルトの名無しさん:2012/12/09(日) 18:22:56.73
そのタイマーで何をやっているんだ?
フォーカスが移るのが問題ってことまでわかってるなら移らないようにすればいいと思う。
189デフォルトの名無しさん:2012/12/09(日) 20:08:03.60
.NET4.5にEntity Framework5の環境でSQL Server Compact4の更新について質問です。
TransactionScopeを利用して2つのテーブルを更新したいのですが・・
2つめのテーブルの取得クエリを呼ぶと「接続オブジェクトをトランザクション スコープに参加させることができません。」と例外がでます。
どのようにすればよろしいのでしょうか。

今こんな感じにしています。
using (var tr = new TransactionScope())
using (var context = new HogeEntities()) {

 var r1 = (from x in context.TableA select x).Single();
 r1.Hoge = 100;

 var r2 = (from x in context.TableB select x).Single(); //ここで例外(レコードは有り
 r2.Piyo = "Z";

 context.SaveChanges();
 tr.Complete();
}
190デフォルトの名無しさん:2012/12/09(日) 20:31:52.41
>>189
ひどいなこりゃ・・・
191デフォルトの名無しさん:2012/12/09(日) 22:15:40.93
>>189
context.SaveChanges()の処理中は自動的に
トランザクションが適用されるから
このケースの場合TransactionScopeは不要。
192デフォルトの名無しさん:2012/12/09(日) 22:40:40.03
ほにゃららインターフェース型の値を返すメソッドというのは、
ほにゃららインターフェースを実装してるクラスのインスタンスへの
参照を返すメソッドってことでおk?
193デフォルトの名無しさん:2012/12/09(日) 22:41:38.77
なんで今そんなこと聞くのよ?!
194デフォルトの名無しさん:2012/12/09(日) 22:46:00.41
クラスじゃなくて値型の可能性もある
195デフォルトの名無しさん:2012/12/09(日) 22:50:05.07
構造体の可能性もあるけど返ってくるのは常にオブジェクト参照だよ
値型はボックス化しないとインターフェイスにキャストできない
196デフォルトの名無しさん:2012/12/09(日) 23:27:40.36
インターフェースなんて
クラスとか構造体とかに別の型名を付けてるようなものだ。
197デフォルトの名無しさん:2012/12/09(日) 23:28:28.51
???????????????
198デフォルトの名無しさん:2012/12/10(月) 00:26:16.25
>>150
これって本当にそうなの?そういう潮流なの?
199デフォルトの名無しさん:2012/12/10(月) 00:27:23.63
foreachよりToArrayの方が多く使うぐらいだわ
200デフォルトの名無しさん:2012/12/10(月) 00:56:05.81
単純に見づれえから130にはしないというだけの話
201デフォルトの名無しさん:2012/12/10(月) 00:57:25.25
ForEachはforeachがあるから要らないって事だろう
副作用がどうとかはただの妄想
202デフォルトの名無しさん:2012/12/10(月) 00:59:06.09
>>201
Linqで射影とかした結果に対して一連の処理するときとか
いちいち変数作ったり配列作ったりせず、直結して書けるから楽だと思うんだけどな。
まあ好みの問題だけど。
203デフォルトの名無しさん:2012/12/10(月) 01:01:41.09
個人的には変換・抽出と消費は分けた方が綺麗だと思う
204デフォルトの名無しさん:2012/12/10(月) 01:01:53.56
foreach(var a in hoge.Select(func)){ ... }

でいいじゃない
205デフォルトの名無しさん:2012/12/10(月) 01:02:18.04
動的型の言語ならやるけどC#だと野暮ったすぎてパスだな
普通に書いた方が見通しいい
206デフォルトの名無しさん:2012/12/10(月) 01:09:44.59
野暮ったいってそれだけで注意力を損なうから結構大事よ。
207デフォルトの名無しさん:2012/12/10(月) 08:06:20.79
IContainerインターフェイスを実装したクラスを作ってうんぬん
みたいなことをしなければならないとき
皆さんは一切何も見ずに記憶だけでささっと作れちゃうもんなんですか?
IComponentとかいろいろ絡んでくるじゃないですか

こういう風に考えれば全然難しく考えなくていいいみたいな視点というか、
理解の仕方とかがあれば教えてください。
208デフォルトの名無しさん:2012/12/10(月) 09:18:33.62
何を悩んでいるのかわからないけど

インターフェイスの実装はVSで
class HogeContainer : IContainer
{
...
}
の「IContainer」のところにマウスカーソルあててメニューだせば自動でテンプレ追加してくれるし

あとインターフェイスは抽象化されてるからインターフェイスなんだから
上っ面(シグニチャの合ってるメソッドが揃ってるか)だけ考えときゃいいんじゃない
209デフォルトの名無しさん:2012/12/10(月) 09:23:09.52
IContainerなんて実装したいと思ったこともなかったわ
210デフォルトの名無しさん:2012/12/10(月) 10:01:27.90
>>208
ありがとうございました。
211デフォルトの名無しさん:2012/12/10(月) 10:02:38.33
IComponentとかIContainerとかってWinFormsのデザイナに張り付けられるコンポーネント作るやつだろ
そんなもん熟練者が商用コンポーネント作るんでなければ要らん
212デフォルトの名無しさん:2012/12/10(月) 10:25:21.32
既存のcsvファイルで、1列目だけに、全行データを追記するには、どうしたら良いですか?
213デフォルトの名無しさん:2012/12/10(月) 10:31:21.08
全く意味が分からない
一列目だけ更新したいってこと?
無理だから全部書き直し
幅が完全に固定されているならシークしながらとびとびに書き込めないこともないが
サロゲートペアとか考え出すと泥沼
214デフォルトの名無しさん:2012/12/10(月) 10:56:50.96
質問の下手な初心者は上達しないと常々思っている。
215デフォルトの名無しさん:2012/12/10(月) 11:06:59.30
改行を消せばおk
じゃーダメなんか?
216デフォルトの名無しさん:2012/12/10(月) 12:04:44.13
質問の内容から経験で推測できない奴は質問者のレベルにすら達していないと常々思っている。
217デフォルトの名無しさん:2012/12/10(月) 12:16:10.56
どうでもいいけど寒い
ストーブはあるんだが灯油がない
近くにスタンドはあるんだがお金がない
そんな俺東北
マジで凍死するかも
218デフォルトの名無しさん:2012/12/10(月) 12:16:57.40
へーそう
今後は思うだけで書かない方がいいよ
219デフォルトの名無しさん:2012/12/10(月) 12:46:52.43
へーそう
今後は思うだけで書かない方がいいよ
220デフォルトの名無しさん:2012/12/10(月) 12:49:26.02
スレチもスルーできない馬鹿もゴキブリ以下だと常々思っている。
221デフォルトの名無しさん:2012/12/10(月) 12:51:21.96
へーそう
今後は思うだけで書かない方がいいよ
222デフォルトの名無しさん:2012/12/10(月) 12:53:20.10
tp:://d.hatena.ne.jp/okazuki/20110309/1299683215

のページを参照して国際化対応をやっているのですが、
上のページの「Resources.resx」にて作られるクラスのコンストラクタがinternalになってしまうので、
コンパイルエラーが発生してしまいます。
手動でコンストラクタを public にすると一時的にコンパイルエラーが解決するのですが、恒久的な解決策になっていません。
すいませんが、国際化対応を行うにはどうしたら良いか、正しい方法を教えてくれないでしょうか。
その方法がない場合は、resxで作られるクラスのコンストラクタをpublicにする方法を教えてください。
おしえてくださいえろいひと
223デフォルトの名無しさん:2012/12/10(月) 12:53:29.42
しかし寒いな
マジで凍死するかも
そんな俺九州
224デフォルトの名無しさん:2012/12/10(月) 12:54:22.02
せめて沖縄にしとけよ
225デフォルトの名無しさん:2012/12/10(月) 13:04:01.45
>>222
リンク先読んでないけど
Resources.resx
Resources.ja.resx
Resources.en.resx
Resources.ar.resx

みたいにするとサテライトアセンブリつくってくれるんじゃね?
226デフォルトの名無しさん:2012/12/10(月) 13:39:07.04
へーそう
今後は思うだけで書かない方がいいよ
227デフォルトの名無しさん:2012/12/10(月) 13:59:57.53
へーそう
今後は思うだけで書かない方がいいよ
228デフォルトの名無しさん:2012/12/10(月) 14:18:57.61
うそーへ
よいいが方いなか書でけだう思は後今
229デフォルトの名無しさん:2012/12/10(月) 15:08:41.47
ない寒しかし
230デフォルトの名無しさん:2012/12/10(月) 15:12:19.09
何この糞スレ存在する意味あるのかよ
231デフォルトの名無しさん:2012/12/10(月) 15:16:30.78
お前よりはあるんじゃね
232デフォルトの名無しさん:2012/12/10(月) 15:25:18.78
>>225
サテライトアセンブリ・・・というのは
このコードはツールによって生成されました。ランタイムバージョンry
とかいう、ソースコードのことでしょうか?

だとすると、それは作られています。
そのコードに記述されたクラスのコンストラクタがinternal になってしまうんです。
それをpublicにしたいんです。
233デフォルトの名無しさん:2012/12/10(月) 16:50:22.68
へーそう
今後は思うだけで書かない方がいいよ
234デフォルトの名無しさん:2012/12/10(月) 17:10:26.79
しかし寒いな
235デフォルトの名無しさん:2012/12/10(月) 17:25:22.91
>>232
〜のことでしょうかじゃねーよ
ぐぐれよハゲ

何やりたいのかすら書いてないから分からないけど
その裏ワザてきなローカライゼーションじゃなくて
用意されたローカライゼーションは試したのかよハゲまくり野郎が
236デフォルトの名無しさん:2012/12/10(月) 17:29:24.74
コンソールアプリケーションをPowerShellのcmdletへ移行できるか試しているのですが、app.configが反映されません。
どのようにすればいいのでしょうか?
237デフォルトの名無しさん:2012/12/10(月) 17:35:47.93
反映するようにすればいいのです
238デフォルトの名無しさん:2012/12/10(月) 17:38:33.49
アプリケーションを作りたいのですが、作れません。
どのようにすればいいのでしょうか?
239デフォルトの名無しさん:2012/12/10(月) 17:41:51.75
質問の下手な初心者は上達しないと常々思っている。
240デフォルトの名無しさん:2012/12/10(月) 17:46:39.33
質問の上手な初心者は質問する前に自己解決できてしまうと常々思っている。

なぜなら、どのように質問すれば上手く伝わるのかを考える時点で答えが出てしまうから。
241デフォルトの名無しさん:2012/12/10(月) 17:55:28.14
アプリケーションを作ります
242デフォルトの名無しさん:2012/12/10(月) 18:26:57.02
この猿真似はWin32APIスレの芸風
243デフォルトの名無しさん:2012/12/10(月) 22:21:54.00
うーむ。
暇だからwin8のデスクトップでタートルグラフィックスを書いてたら、
間を開けた動的な描画イベント来なくて小一時間悩んだわ。
結局Timerクラス起動して無理やりイベントループ回したけど、なんかダサイわ。

こういうのってなんか対策有る?
244243:2012/12/10(月) 22:26:13.06
あー、Winformね。
245デフォルトの名無しさん:2012/12/10(月) 22:36:44.38
「間を開けた動的な描画イベント」が何を言っているのか意味が分からない。
なんか根本的に勘違いしてるんじゃないの?

何かの図形を一度にではなく少しずつ描画したいのなら、図形を更新したいタイミングで
クライアント領域を無効化してやるのが普通だと思うけど。
246デフォルトの名無しさん:2012/12/10(月) 22:43:43.61
>>245
this.invalidate(false)でフォームを無効化して描画待ちしてたんだけど、なんか描画されなかった。
パフォーマンス見るためにタスクマネージャー起動したらそのタイミングで書き換えが起こったりわけわかめだった。
なんか、イベントループ回ってないっぽいんだよね。ウィンドウの上でカーソル動かしたら描画されたりしたし。
だから、タイマー突っ込んで回したんだ。
247デフォルトの名無しさん:2012/12/10(月) 22:58:08.71
タートルグラフィックスって何かと思ったら木の枝みたいなのがかかれていくやつか

描いてる最中も経過をリアルタイムで表示したいのか
それとも描き終わるまでは特に表示がなくてもいいのかで
表示の仕方変わるよね
248212:2012/12/10(月) 22:58:56.89
既存のcsvファイルを一行ずつ読み、その文字列の先頭にデータを連結し、
一行ずつ読み込んだ文字列の長さが0の時はスキップで、
最後に、上書き保存することで出来ました。
249デフォルトの名無しさん:2012/12/10(月) 22:58:57.93
うちだけのバグかもしれんから、半信半疑だけど上げてみる。
ttp://www1.axfc.net/uploader/Sc/so/403931.zip

現象は、フォームのコンストラクタにあるTimerクラスのstartを起動するかしないかだけで発現している。
他の環境でうまくいくんだったらうちの問題だ。ちなみにOSはWin8pro。
250デフォルトの名無しさん:2012/12/10(月) 23:01:33.49
>>247
それを制御できるコマンドを追加したんだ。

あー、そうだ。
ちなみに>>249はバグってる可能性が高いので、転用は厳禁だよ。
やるんだったら、自己責任でお願いね。
251247:2012/12/10(月) 23:18:11.96
色を一色しか使わないのならGraphicPathにLineなどを
追加していけばいいんじゃないかな?

DrawPathで描画すれば履歴にあたる部分を自分で書かなくても
.net内部で最適化された機能でPathを描いてくれるよ
252デフォルトの名無しさん:2012/12/10(月) 23:25:00.35
>>251
一応、機能としては色変更入ってるけど、いらないかなー。むー。
GraphicPathは使ったこと無いのでちょっと試してみようかな。
253デフォルトの名無しさん:2012/12/11(火) 00:13:30.25
>>249
君のコードがバグってるだけ。
ループの回ってる間は描画実行されないの当たり前じゃん。
根本的にコードの書き方を考え直したほうがいいような...

しかし、まだこういうメインループでグルグルみたいな発想する人いるんだね。
254デフォルトの名無しさん:2012/12/11(火) 00:19:30.61
>>253
しばらく書いてなかったのもあるんだけど、何が悪いのかさっぱりわからん。
個人的には、メッセージループのキューがある程度溜らないと実行されないんじゃないかと思ったんだけど。
ちがうのか。。。 さてどうしようかな・・・。ま、暇つぶしにはなったかな。
255デフォルトの名無しさん:2012/12/11(火) 00:25:21.23
Application.DoEvents();
入れればいいだけじゃね?
256デフォルトの名無しさん:2012/12/11(火) 00:27:52.48
>>255
どこに入れればいいのかな?invalidateの直後だと効果なかった。
257デフォルトの名無しさん:2012/12/11(火) 00:40:01.64
なんか色々とデータ型があるけど
ややこしいので全部Object型にしちゃえば良いですよね。
258デフォルトの名無しさん:2012/12/11(火) 00:46:00.10
バカ?
259デフォルトの名無しさん:2012/12/11(火) 01:26:59.26
なるほど、var化ってことですね?
260デフォルトの名無しさん:2012/12/11(火) 01:37:10.93
そうですね
261デフォルトの名無しさん:2012/12/11(火) 01:58:12.24
アホなの?
262デフォルトの名無しさん:2012/12/11(火) 13:51:58.31
TextChangingイベント内で現在の入力中のテキストを見るにはどうすればいいですか?
263デフォルトの名無しさん:2012/12/11(火) 13:58:27.41
さあ
264デフォルトの名無しさん:2012/12/11(火) 14:02:16.35
>入力中のテキスト
これってIMEで入力中の文字の話?
265262:2012/12/11(火) 14:07:14.80
そうです
TextBox.Textでは入力された文字列しか取れません
266デフォルトの名無しさん:2012/12/11(火) 14:10:00.85
IMEをONにしてるときはtextBoxなどの付近で入力中の
文字が表示されてるけどIME側で決定が行われるまではIMEの管理だから
IMEから情報もらうしかないんじゃないかな?

textBoxにも多少IMEを操作するメソッドはあったはずだが
IMEが持ってる文字まで取れたっけ?
267デフォルトの名無しさん:2012/12/11(火) 14:17:28.29
何かアプリ作り終わるたびに、こんな作り方で良かったのか?って思うんだけど
どうやるのがよいやり方なんだろう?
1:全体像をしっかり調査して、単体機能を右から左へキッチリ作っていく
2:動けばよいレベルで全機能を網羅したプロトタイプを作って、それをイジリ倒してから、ちゃんと作る
3:機能空っぽの枠だけ作って、必要な機能が必要になったタイミングで肉付けしていく
4:その他
自分の経験則だと意外に2が最短のコストで出来ることが多いけど、どうですかね?
268デフォルトの名無しさん:2012/12/11(火) 14:18:50.22
時刻の差を求めたいのですが、方法がわからず悩んでおります。

AとBいう文字列変数に、
それぞれ12:30、16:00という文字列が入っているとします。

B-Aで3:30、最終的には分に直して210という値を取得したいのですが、
どのように求めたら良いのでしょうか。
269262:2012/12/11(火) 14:25:01.60
>>266
標準じゃあ無理なんですね・・・
諦めます
ありがとうございました
270デフォルトの名無しさん:2012/12/11(火) 14:25:33.22
>>268
時間と分を分離 → 数値へ変換 → 単位の修正 → 計算 → 文字列へ変換 → 表示
271デフォルトの名無しさん:2012/12/11(火) 14:36:50.14
>>268

string s1 = "12:30";
string s2 = "16:00";

DateTime d1 = DateTime.Parse("0001/01/01 " + s1);
DateTime d2 = DateTime.Parse("0001/01/01 " + s2);
TimeSpan ts = d2 - d1;
int min = (int)ts.TotalMinutes;
272デフォルトの名無しさん:2012/12/11(火) 14:38:16.43
>>269
諦めるのはかまわないけどC#でできないって決め付けないでね
ほぼ確実に君のやりたいことを求めようとしている方法がおかしいと思うから










質問の下手な初心者は上達しないと常々思っている。
273デフォルトの名無しさん:2012/12/11(火) 14:47:16.83
お前らゴキブリみたいな人生だろ
274デフォルトの名無しさん:2012/12/11(火) 14:50:11.40
>>270さん
>>271さん
ありがとうございました。
271さんのコードみたいにシンプルに書けるんですね。
時刻だけの文字列も、年月日をつければDateTime型で
簡単に計算できるということも勉強になりました
275デフォルトの名無しさん:2012/12/11(火) 14:53:15.97
理解できないままコピペで動くような教え方は良くないと思うの
276デフォルトの名無しさん:2012/12/11(火) 15:06:57.53
※ゴキブリに餌を与えないでください
277271:2012/12/11(火) 15:13:28.10
ついでに補足しとくと、 DateTime.Parse("12:30") だと実行当日の12:30を示すDateTime値が得られる。
一見これでも計算には支障がないようだけど、万が一 DateTime.Parse(s1) と DateTime.Parse(s2) の間で
PCの日付が変わると計算結果が24時間違ってしまうので、確実に同じ日になるように日付を追加してある。
278デフォルトの名無しさん:2012/12/11(火) 15:19:37.25
なるへそ
279デフォルトの名無しさん:2012/12/11(火) 15:20:55.71
つかTimeSpan.Parseを使えばいいんじゃね?
280271:2012/12/11(火) 15:47:56.58
>>279
知らなかった・・・というか、時刻をTimeSpanで扱うという発想がなかった。

string s1 = "12:30";
string s2 = "16:00";

TimeSpan ts1 = TimeSpan.Parse(s1);
TimeSpan ts2 = TimeSpan.Parse(s2);

TimeSpan ts3 = ts2 - ts1;

int min = (int)ts3.TotalMinutes;

これでいけるやん。
281デフォルトの名無しさん:2012/12/11(火) 18:22:12.55
int min = (int)( TimeSpan.Parse( "16:00" ) - TimeSpan.Parse( "12:30" ) ).TotalMinutes;
282デフォルトの名無しさん:2012/12/11(火) 19:39:58.05
>>281
ちょっと勘違いした初心者がやりそうな書き方
283デフォルトの名無しさん:2012/12/11(火) 21:42:43.19
>>281
可読性悪くしただけで何も変わってないやん
284デフォルトの名無しさん:2012/12/11(火) 21:44:53.57
ふう
285デフォルトの名無しさん:2012/12/11(火) 22:04:57.05
ListViewコントロールの列がColumn1,Column2の時
任意の項目をいくつか追加した後にColumn2のn番目の行にツールチップを設定したいのですが
ToolTipコントロールを使い処理をToolTip.SetToolTip(*,"Text")としたとき
*の部分をどのように設定すればいいのでしょうか?
286デフォルトの名無しさん:2012/12/11(火) 22:09:16.46
>>285
カラムやセルごとにツールチップを表示するのはToolTip任せでは無理だと思うよ。

マウスポインタの座標からセルを判定してツールチップを設定する処理を
ユーザーコードで書く必要があるでしょ
287デフォルトの名無しさん:2012/12/11(火) 22:17:41.99
>>286
なるほど。そうなると随分実装に手間が掛かりそうですね……
実はTweenのタイムラインの投稿カラムのように
長すぎて表示しきれない文字列にマウスオーバー→省略された文字がでてくるというのを実装したかったのですが
いまいちいい方法が思いつかない次第です
288デフォルトの名無しさん:2012/12/11(火) 22:21:50.52
>>287
それ、デフォで実装されてたような気がしたけど...
289デフォルトの名無しさん:2012/12/11(火) 22:29:21.69
>>288
昔はデフォルトで実装されてたような気がするのですがVS2010にしてから何故かできなくなってしまいました
290デフォルトの名無しさん:2012/12/11(火) 22:29:39.61
ShowItemToolTips やね
291デフォルトの名無しさん:2012/12/11(火) 22:30:13.21
>>289
IDEのプロパティなどにでてないだけじゃないの?
292デフォルトの名無しさん:2012/12/11(火) 22:31:26.19
293デフォルトの名無しさん:2012/12/11(火) 22:32:26.20
>>290-291,292
できました。ありがとうございます!
随分と初歩的なことを見落としていたようです
294デフォルトの名無しさん:2012/12/11(火) 22:36:41.31
「listview tooltip」でググれば一発で出てきますね……
見当違いな方法で実装しようとしたのがアホでした
295デフォルトの名無しさん:2012/12/12(水) 05:19:22.48
リスト型の変数の要素数を制御したい場合、プロパティを使えるのでは?とおもったのですが、

List<string> _StringList;
List<string> StringList { set [*] ; get; }
*ここにStringListの数を監視して指定より多ければ、古い(またはいらない)要素を破棄させるといった挙動をさせたい。

こういった場合SetとGetはどういったときに呼び出されるのでしょうか?
ご存知のかたご教示願います
296デフォルトの名無しさん:2012/12/12(水) 06:18:03.26
そういうことしたいときは
Collection<T>を継承してInsertItemメソッドをオーバーライドするんじゃね
297デフォルトの名無しさん:2012/12/12(水) 07:46:33.20
うん
List<>はパブリックに公開するなというガイドラインがあるのはそういう理由
298デフォルトの名無しさん:2012/12/12(水) 08:22:33.71
フレームワークっていっぱいあるの?
299デフォルトの名無しさん:2012/12/12(水) 08:39:17.00
>>296-297
なるほどさんくす!
300デフォルトの名無しさん:2012/12/12(水) 08:53:15.31
>>256
うろ覚えだけどリフレッシュなら即時だったような
301268:2012/12/12(水) 10:47:01.71
>>279
>>280
補足ありがとうございました。
大変勉強になります。
302デフォルトの名無しさん:2012/12/12(水) 15:58:43.69
いえいえ
303デフォルトの名無しさん:2012/12/12(水) 20:11:09.99
TcpClientのコンストラクタで渡すポート番号って相手のだよね?
自分のポート番号はどうやって指定すんの?
304デフォルトの名無しさん:2012/12/12(水) 21:06:26.19
TcpClient(IPEndPoint)で渡すのが自分の
Connectに渡すのが相手の
305デフォルトの名無しさん:2012/12/12(水) 21:59:53.94
>>304
thx
調べてみたらコンストラクタごとに動作が違うんだな
まぎらわしい。
306デフォルトの名無しさん:2012/12/12(水) 23:10:59.69
>>1
自己顕示欲が強いのか、相談室だけど相談しにくい空気を演出する人いるよね。だから、初心者には辛いなぁ・・・と常々思っている。
307デフォルトの名無しさん:2012/12/12(水) 23:17:40.12
ここといい、相談室といい、相談・質問し難い空気にしてる奴は、
一定数いるわけで…
308デフォルトの名無しさん:2012/12/12(水) 23:21:44.27
抽象化してるつもりがかえって分かりにくい
309デフォルトの名無しさん:2012/12/12(水) 23:25:59.95
相談しにくいと感じてるわりにはよくつらつらと愚痴書き込めるね
310デフォルトの名無しさん:2012/12/12(水) 23:29:38.06
>>306
自省を求めるなら、どういうレスが該当するのかアンカーつけろよ
>>306のレス自体が回答しにくい空気を演出してるぞ

「だれとは言わないけど・・・」みたいな感じで
批判すると逆に空気が悪くなるだろ
311デフォルトの名無しさん:2012/12/12(水) 23:34:38.05
仕事でやってるんじゃねーし、答える相手は選ぶよな
312デフォルトの名無しさん:2012/12/12(水) 23:38:13.50
ここは2ちゃんだぞ
>>1を翻訳すると馬鹿の釣堀
313デフォルトの名無しさん:2012/12/12(水) 23:39:38.19
煽る相手も選んでるよ一応ね
314デフォルトの名無しさん:2012/12/12(水) 23:42:58.30
質問者は粘着でもしない限り優しくするけど、クソみたいな回答をする奴には容赦しないよ
315デフォルトの名無しさん:2012/12/12(水) 23:48:47.73
そして誰も触らなくなるっと
316デフォルトの名無しさん:2012/12/12(水) 23:53:25.99
馬鹿が釣れたかたまに確認するくらいだし
馬鹿が釣れたら顔真っ赤にして煽ってやっからな
317デフォルトの名無しさん:2012/12/12(水) 23:55:27.88
血眼になって回答の荒拾いしてやんよ
318デフォルトの名無しさん:2012/12/13(木) 00:01:53.71
初心者スレだから何でも許されるべきだって思ってる勘違い君も困るけどね。

自分の問題をきちんと伝える努力をしない奴とか、自分で問題を解決する努力をした
形跡が感じられない奴とか、そういう奴まで許容するのがこういうスレの趣旨じゃないだろう。
319デフォルトの名無しさん:2012/12/13(木) 00:28:58.09
手間賃出すなら手取り足取り教えてやんよ
交通費出すなら現場まで行くぞ
320デフォルトの名無しさん:2012/12/13(木) 00:39:38.22
手間チンを出す!?
321デフォルトの名無しさん:2012/12/13(木) 01:17:50.25
つまり、こんなところに質問したり、回答すると、血眼になってまで発狂する奴がいるから
自分でどうにかしろとw。
322デフォルトの名無しさん:2012/12/13(木) 03:08:45.63
>>307
そうやって荒らしてるんだよ。コピペだと消されるからな。
質問者がそういうのをわかって質問してくればいいが、
大抵は寄りつかなくなる。そういうのを期待してるんだろう。
323デフォルトの名無しさん:2012/12/13(木) 03:10:03.46
んで、そういう運用上の問題点は自治スレでやってくれ。
このスレでやる議題じゃない。
324デフォルトの名無しさん:2012/12/13(木) 07:00:46.19
つまりこいつらがその荒らしってわけで
325デフォルトの名無しさん:2012/12/13(木) 10:30:32.01
荒れてるどころか過疎ってるだけだと思うんだが
326デフォルトの名無しさん:2012/12/13(木) 16:07:38.00
                     /j
                   /__/ ‘,
                  //  ヽ  ', 、
                    //    ‘  ! ヽ             …わかった この話はやめよう
                /イ       ', l  ’
               iヘヘ,       l |  ’
               | nヘヘ _      | |   l            ハイ!! やめやめ
               | l_| | | ゝ ̄`ヽ | |〈 ̄ノ
               ゝソノノ   `ー‐' l ! ¨/
            n/7./7 ∧        j/ /     iヽiヽn
              |! |///7/:::ゝ   r===オ        | ! | |/~7
             i~| | | ,' '/:::::::::::ゝ、 l_こ./ヾ..     nl l .||/
             | | | | l {':j`i::::::::::::::::`ーr '         ||ー---{
              | '" ̄ ̄iノ .l::::::::::::::::::::::∧       | ゝ    ',
      , 一 r‐‐l   γ /、::::::::::::::::::::::::〉ー= ___  ヘ  ヽ   }
    / o  |!:::::}     / o` ー 、::::::::::::i o ,':::::::{`ヽ ヘ     ノ
   / o    ノ:::::∧   /ヽ  o  ヽ::::::::| o i::::::::ヽ、 /   /
   /    ノ::::::/    /::::::::ヽ  o  ヽ:::| o {::::::::::::::Υ   /
327デフォルトの名無しさん:2012/12/13(木) 20:50:08.11
言語の選択に悩んでいたのですが、このスレのおかげで一つ選択肢が減り楽になりました。
ありがとうございました。
328デフォルトの名無しさん:2012/12/13(木) 21:37:28.37
おうよ
329デフォルトの名無しさん:2012/12/13(木) 21:40:35.69
いえいえ
330デフォルトの名無しさん:2012/12/13(木) 21:53:50.72
#ってポインタないの?
331デフォルトの名無しさん:2012/12/13(木) 21:58:40.23
強いて言うならインスタンスを格納する変数がポインタ(のようなもの)。
メソッドへのポインタも厳密にはインスタンスポインタ経由。
332デフォルトの名無しさん:2012/12/13(木) 22:09:07.54
unsafeコード使えば、かろうじてポインタ同等のことができる。
333デフォルトの名無しさん:2012/12/13(木) 22:28:42.63
#の設計思想がポインタさけてるからそりゃそうだ
334デフォルトの名無しさん:2012/12/13(木) 23:18:21.14
アーキテクチャって言葉
リアルに使ってる人いる?
335デフォルトの名無しさん:2012/12/13(木) 23:38:34.63
組み込みなら使うだろ
336デフォルトの名無しさん:2012/12/14(金) 01:25:25.24
展示会とかに行けば耳にタコができるくらい聞ける
337デフォルトの名無しさん:2012/12/14(金) 01:28:41.09
スマホは-archオプションとか普通に出てくる
338デフォルトの名無しさん:2012/12/14(金) 01:33:23.94
VCにもあるよ/arch:SSE2
339デフォルトの名無しさん:2012/12/14(金) 03:10:45.79
熱いもの触った時にたまに口に出るね
340デフォルトの名無しさん:2012/12/14(金) 15:22:52.35
必死にググりながらやってたころが懐かしいな
やることわかってるとめんどくさくててがつかねぇ
341デフォルトの名無しさん:2012/12/14(金) 18:59:49.47
C#でサクッと使える簡易キャッシュライブラリありせんか?
プロセス起動中だけでいいのでインストールなど不要なMemcachedのようなものを探しています。
342デフォルトの名無しさん:2012/12/14(金) 19:26:22.11
いまいち何を求めてるのかわからんけど
SQLiteがインメモリDBとして使えるらしいよ
ちょっと違うか
343デフォルトの名無しさん:2012/12/14(金) 19:38:34.32
MemoryCacheは試したんだよな?
344デフォルトの名無しさん:2012/12/14(金) 19:40:14.10
インメモリDBとして使えるには使えるがサクッという条件を満たしているかどうかは…
それにキャッシュの規模にもよるだろうし、簡単なものなら自作すれば…?
345デフォルトの名無しさん:2012/12/14(金) 19:57:53.22
こんなC#, C♯, C#ライブラリ無いですか?
http://toro.2ch.net/test/read.cgi/tech/1342672311/
346デフォルトの名無しさん:2012/12/14(金) 22:10:28.56
string ookisa = "640x360";
という文字列があったとして
int変数xに640、yに360を代入したいのですがどんな書き方が良いですか?
347デフォルトの名無しさん:2012/12/14(金) 22:14:29.87
条件次第じゃないの?

必ず数字x数字で区切られててほかにゴミが入らないのなら
xの位置を調べて前後を数字に変換すればいい
348デフォルトの名無しさん:2012/12/14(金) 22:15:50.09
>>346
int p = ookisa.IndexOf('x');
int x = int.Parse(ookisa.Substring(0, p));
int y = int.Parse(ookisa.Substring(p + 1, p));

たぶんこれでいけるとは思うが、
もうちょっと条件を詳しく書いてくれないと確実なことは言えない。
349デフォルトの名無しさん:2012/12/14(金) 22:18:16.05
var m = Regex.Match(ookisa, @"^(\d+)x(\d+)$");
int x,y;
if(m.Success && int.TryParse(m.Groups[1].Value, out x) && int.TryParse(m.Groups[2].Value, out y))
{
// 正常系
}

こんな感じ?
350デフォルトの名無しさん:2012/12/14(金) 22:37:52.48
レスどうもです。
>>348さんの方法でできましたので今回はこちらでいこうと思います。
(対象の文字列はあらかじめ定義した文字列なのでこれで問題なさそうです)
351348:2012/12/14(金) 22:40:55.44
ごめん、そのコード間違ってる。
int y = int.Parse(ookisa.Substring(p + 1));
に直しといて。
352デフォルトの名無しさん:2012/12/14(金) 22:43:30.89
「どんな書き方が良いですか?」なんて聞き方するんなら知ってる限りの方法くらい列挙しろウンコクズ
353デフォルトの名無しさん:2012/12/14(金) 22:50:12.24
var size = ookisa.Split('x');
var x = int.Parse(size[1]);
var y = int.Parse(size[2]);
354デフォルトの名無しさん:2012/12/14(金) 22:50:43.96
var size = ookisa.Split('x');
var x = int.Parse(size[0]);
var y = int.Parse(size[1]);
355デフォルトの名無しさん:2012/12/14(金) 22:52:37.53
文字列にミスがあったら例外吐きそうだな。
356デフォルトの名無しさん:2012/12/14(金) 22:57:03.75
>>355
その点 >>349 のやり方は回りくどいように見えて、正常系と異常系の分岐をスッキリかける点で優れていると思う。
357デフォルトの名無しさん:2012/12/14(金) 23:00:33.94
>>351
今直したところでした;
>>352
すまそん。
>>354
Splitってあったんですね。VB,NETで使ったことがあったので
それと同じようなことをと思っていろいろ試したところエラーになって???だったのですが
文字を囲むのが「"」じゃなくて「'」だったとは・・・
358デフォルトの名無しさん:2012/12/14(金) 23:09:27.77
Splitは「'」(char)だけじゃなく「"」(string)も配列で渡せばイケるはず
359デフォルトの名無しさん:2012/12/14(金) 23:16:57.84
SplitしてParseが鉄板
書式が異常だったらって?
例外投げてもらえばいいのさ
360デフォルトの名無しさん:2012/12/14(金) 23:18:31.29
想定内のエラーを例外で伝播させる奴はクソ
361デフォルトの名無しさん:2012/12/14(金) 23:20:43.16
例外で伝えなきゃどうやって伝えるんだよアホか
362デフォルトの名無しさん:2012/12/14(金) 23:24:01.78
10x15みたいな入力が何処から発生するかにもよる。
363デフォルトの名無しさん:2012/12/14(金) 23:29:35.56
質問者ですがちょっと話を広げてすみませんが、
コード内で定義済の文字列(実際はradioButtonのText)なので
書式が間違って例外が出ることはないし、出たら出ないようにradioButtonのTextを正しく
しておけば良いと思いますが、それでも例外に対応できるように書かないとダメ、というのがルールでしょうか?
364デフォルトの名無しさん:2012/12/14(金) 23:46:53.69
例外をこうしろってルールは、たぶんない。
こんな感じで例外を無闇に握りつぶすのは、避けたい。
try{
 var y = int.Parse( textBox1.Text );
}catch{
}
ユーザーからの入力などで書式ミスが想定できる場合は、事前にチェック→代入。
int.TryParse 系のメソッドなどを使って行う。
365デフォルトの名無しさん:2012/12/14(金) 23:47:36.55
>>363
その場合は自分の世界で完結してるから例外処理は別に要らない
ユーザーやサーバー等の管理下に無いものが異常値を渡す可能性は考慮すべき
366デフォルトの名無しさん:2012/12/15(土) 00:00:13.14
>>363
例外が起きないことをプログラマが保証できるなら例外に対応する必要はない。
そういうケースだと、文字列を解析するより、RadioButtonのTagにSizeオブジェクトでも
入れといた方が簡単じゃないかと思う。
367デフォルトの名無しさん:2012/12/15(土) 05:56:33.83
むしろ意味のあるフィールドとしてSizeをもって
RadioButtonのテキストをSizeから生成すべきでは
デザイナでは見えなくなるけど。。
368デフォルトの名無しさん:2012/12/15(土) 05:58:22.51
みんなTryParseは使わないの?
369デフォルトの名無しさん:2012/12/15(土) 07:53:28.60
findしちゃう
370デフォルトの名無しさん:2012/12/17(月) 02:22:43.36
>>368
みんな1.1で知識止まってるからそんな難しいのわかんないの
371デフォルトの名無しさん:2012/12/17(月) 02:55:22.16
だからtrycatchするお
372デフォルトの名無しさん:2012/12/17(月) 10:56:45.06
DataGridViewComboBoxCellをComboboxのSelectedIndexと同じ機能を持たせるにはどうしたらいいのですか?
DataGridViewComboBoxCellのValue値がコロコロ変わるので、SelectedIndexのようにドロップリストのどの項目を選択したかを知りたいです。
373デフォルトの名無しさん:2012/12/17(月) 11:04:55.81
キーのないテーブルでレコードを特定するには、みたいな話?
Tag何か入れといたら?
374デフォルトの名無しさん:2012/12/17(月) 17:14:35.98
GNU/UNIX C開発の世界から、いきなりVS C#の世界に放り込まれたのですが、
ウィザードでhelloなプログラムを作ったのですが、bin/ obj/ Properties/ とかのフォルダができて
利用ライブラリはどこに置けばいいのか、というレベルの所でハマってます。
share/ も lib/ も include/ もないのですね…

UNIX野郎が、VS C#のプロジェクト開発を理解するためのカンニングペーパーみたいな
ものってないでしょうか?
375デフォルトの名無しさん:2012/12/17(月) 17:35:56.75
そもそも利用ライブラリって何を指すのよ、と
dllならexeの横に転がしておけばよい
ていうかbin/Releaseの下にある奴一式をそのまま持って行けばよい(単純なものなら)
376デフォルトの名無しさん:2012/12/17(月) 18:17:27.31
MSの開発環境を最初に触って驚くのがファイル爆発。
何のファイルがどうなのかさっぱりわからん。

個人的には、検索かけてふるいにかけるしか無いと思うけど、
C#の場合検索すると@ITの記事が結構いいと思う。あとドボンと未確認か。
とにかく、コード書いて慣れるのが一番。newとGCになれるんだ。
その後、Cではやりづらい黒魔術とかも有るよ。リフレクションとかね。
377374:2012/12/17(月) 19:21:13.42
ありがとうございます。
開発環境に標準添付されないライブラリは、サードパーティのを使うことになるのですが
それらを突っ込むサーチパスやビルドパスはどうなっているのやらと…

rubyなら、lib/ruby/site_ruby/ みたいな場所に突っ込みますけど、
ファイルヒエラルキーに関する資料がどこかにあればと
378デフォルトの名無しさん:2012/12/17(月) 19:23:30.53
DatatableのA列には
S
Null
E
という文字列があります。

S, Null, Null, E, S, Null, Null, Null, Null, E, S, Null, Null, Null,E, という感じに、Nullの数は可変ですが、常にSとEに挟まれています。
今、このテーブルから、SからEまでを抜き出して一つ一つ新しいテーブルに格納するには、どうしたらいいでしょうか?


A列のSからE
379378:2012/12/17(月) 19:25:23.17
さいごは消し忘れです
380デフォルトの名無しさん:2012/12/17(月) 19:31:56.84
>>377
dllなら参照に追加しとけば勝手にコピーしてくれる
プロジェクトならソリューションに追加して参照に追加(プロジェクト参照)しとけば勝手にビルドしてコピーしてくれる
381デフォルトの名無しさん:2012/12/17(月) 19:33:23.05
>>378
挟まれてるって、行単位で?
意味不明な構造だな…
382デフォルトの名無しさん:2012/12/17(月) 19:35:13.40
大方はLoadLibraryのサーチパスに従えばいい
http://msdn.microsoft.com/ja-jp/library/cc429241.aspx

なお、ユーザーライブラリ置き場は特に決まってない
383デフォルトの名無しさん:2012/12/17(月) 19:37:04.95
>>378
DataTable.Rowsを一件ずつ確認していけばいいんじゃね
ていうか他に方法もないだろうしむしろ何が分からないのか
384デフォルトの名無しさん:2012/12/17(月) 19:37:46.56
いつものスマアアアアアアアアアアアアアアアアアアアアアアアアアアアアトって奴だろ
スマホでもタッチしてろ
385378:2012/12/17(月) 19:43:57.90
>>381
ええ、かなり謎な構造なんですが、エクセルに出すので、こんな形らしいです

>>383
アルゴリズムとしては、iでループカウンターを回して、Table.Rows["A"]がEだったら・・・


そこから先が進みません
386デフォルトの名無しさん:2012/12/17(月) 19:46:44.74
でたーエクセル
エクセルホーガン氏も大喜び
387デフォルトの名無しさん:2012/12/17(月) 19:47:44.79
>>385
forループする
Sだったらそのインデックスを保存
Eだったら保存したインデックスから現在のインデックスまでの行を新しいテーブルにコピー
それ以外は無視

新しいテーブルにコピーするのが分からないってことか?
新しいテーブルってのがS-E毎に一つずつなのか全部まとめて一つなのかも分からんが
388378:2012/12/17(月) 20:43:51.65
>>387
ありがとうございました
S-Eごとに一つのテーブルを作ります
389デフォルトの名無しさん:2012/12/17(月) 21:34:28.78
すっきりしない質問とすっきりしない解決だなw
390デフォルトの名無しさん:2012/12/17(月) 21:36:04.03
SelectManyとかでクソみたいな解決策を出してもいいんだよ?
391デフォルトの名無しさん:2012/12/17(月) 21:48:49.50
解決策がすっきりしてないとは言ってないよw
質問からしてなんかモヤっとしてるし
ほんとに解決してるのか?という、もやもや感があるってこと
392378:2012/12/17(月) 23:03:10.86
解決してないというのは良いアルゴリズムが思いつかないんです。
2.0なのでvarつーかLinq使えません。

DataTable dt; ← ここにデータが入っていて、

S
null
null
E
null
null
null
null
S
null
null
null

このテーブルのA列の中身はこんな感じになってました。
これを一つのS〜Eで区切って別のテーブルに入れて、最終的にはDataTableの配列に入れたいんです。

(1)新しいDataTableを作る(dt2とします)
(2)dtを1行ずつ見ていき、dtの1行目の値が「E」になるまで、dt2.Row[i] = dt.Rows[i]を繰り返す
(3)dt2をDataTable[]の中にいれる
(4)(1)に戻る

というアルゴリズムでいいはずなんですが・・・。
393デフォルトの名無しさん:2012/12/17(月) 23:07:12.06
聞いてるだけでもdt2.Row[i]から怪しい臭いがぷんぷんする
394デフォルトの名無しさん:2012/12/17(月) 23:34:51.11
怪しいものは無視で
395デフォルトの名無しさん:2012/12/17(月) 23:36:08.98
NullReferenceで落ちるようなら、Add系の関数ないのかな。
396デフォルトの名無しさん:2012/12/17(月) 23:42:30.08
dt2の行と列ちゃんと作ってるか?

つーかやりたいことは出来てんの?
もっといい方法が無いか聞いてるのか
書いたコードが動かないのか
どっちなの?
397デフォルトの名無しさん:2012/12/17(月) 23:59:21.07
>>396
確かにdt2.Rows.Add()のほうがいいかもしれません
398デフォルトの名無しさん:2012/12/18(火) 00:01:11.01
会話が微妙に噛み合わない
399395:2012/12/18(火) 00:03:12.25
俺、オレオレ。 >>396は違う人。
400395:2012/12/18(火) 00:15:40.39
俺、オレオレ。 >>399は違う人
401デフォルトの名無しさん:2012/12/18(火) 00:15:58.82
えと話が噛み合わなくてすいません
要は、ちゃんとしたコードが作れないってことです

寝る前にstack overflowでも見て寝ます・・・
402デフォルトの名無しさん:2012/12/18(火) 00:27:53.93
DataTable dt; ← ここにデータが入っていて、
List<DataTable> dts = new List<DataTable>();
DataTable temp = null;
for (int i = 0; i < dt.Rows.Count; i++) {
  if (dt.Rows[i][0].ToString() == "S") {
    temp = new DataTable();
    temp.Columns.Add();
  }
  else if (dt.Rows[i][0].ToString() == "E") {
    dts.Add(temp);
    temp = null;
  }
  else if (temp != null) {
    DataRow r = temp.NewRow();
    r[0] = dt.Rows[i][0];
    temp.Rows.Add(r);
  }
}
DataTable[] dt2 = dts.ToArray();

コードが動かないならコード貼ったほうが早いぞ
403デフォルトの名無しさん:2012/12/18(火) 00:29:07.45
コードはこちらを使ってね
http://ideone.com/
404デフォルトの名無しさん:2012/12/18(火) 04:19:34.57
>>377
namespace Hoge
{
class Hogegegege
.
[DllImport("hogehoge.dll", EntryPoint="hogehogeee")]
public int Hogege(){}
.
.
}
405デフォルトの名無しさん:2012/12/18(火) 07:38:19.85
>>402
ありがとうございました。
とても助かりました
406デフォルトの名無しさん:2012/12/18(火) 10:55:34.03
>>377
システム全体で共有されるライブラリはGACにインストールするんだけどお勧めしない
.NETはunix系のようにPMでライブラリをシステムにインストールするというような発想ではなく
スタンドアロンアプリとして完結したものをまとめて配布するのが基本なので、
ライブラリは全部ローカルコピー推奨
407デフォルトの名無しさん:2012/12/18(火) 11:24:53.21
>>377
http://blogs.wankuma.com/jitta/archive/2006/12/29/54142.aspx
>なぜみんな、地獄を見たがるの?
408デフォルトの名無しさん:2012/12/18(火) 12:11:19.73
データ格納用クラスにprivateな配列を宣言し、そのサイズを外部から動的に決めたい場合、その配列のアクセサーだけじゃなく、その配列のサイズ決定させるpublicなメソッドが必要なんでしょうか?
409デフォルトの名無しさん:2012/12/18(火) 13:46:25.67
>>377
Unix的に言えば、静的リンクされるべきライブラリが別ファイルになっているから
同じフォルダに突っ込んでおくって感じ。
410デフォルトの名無しさん:2012/12/18(火) 13:51:06.92
publicなメソッドでも用意しとけ。
411デフォルトの名無しさん:2012/12/18(火) 17:54:08.36
初心者なんですが、文字列の中のアルファベットを数えるにはどうしたらいいでしょうか
"aAあ"ってなっていたら2を表示したいです。お願いします。
412デフォルトの名無しさん:2012/12/18(火) 18:17:09.46
IsLetterで数えるとかかなあ
413デフォルトの名無しさん:2012/12/18(火) 18:24:53.02
>>411
意地悪なことを言うようだが、まずアルファベットの定義をはっきりさせてくれ。
414デフォルトの名無しさん:2012/12/18(火) 18:33:46.16
いずれにしてもIsLetter()は使えないな。Char.IsLetter('あ') が true を返すから。

英語のA-Z,a-zの範囲でいいなら、

string s = "aあA";
int count = s.Where(c => ('A' <= c && c <= 'Z') || ('a' <= c && c <= 'z')).Count();

こんなもんで。条件はお好きなように。
415デフォルトの名無しさん:2012/12/18(火) 18:43:01.46
Where使う必要はないな CountもFunc<TSource, bool>引数に取れる
416デフォルトの名無しさん:2012/12/18(火) 18:47:28.72
>>414
できました!!!!!!ありがとうございます!!!!!!
417デフォルトの名無しさん:2012/12/18(火) 20:40:59.69
&eacute; はアルファベットかな〜
418デフォルトの名無しさん:2012/12/18(火) 20:41:30.33
&#xE9;

ぶひ
419デフォルトの名無しさん:2012/12/18(火) 21:57:28.50
【嫌儲プログラミング部】 C#でネイティブアプリの開発が可能に!ポトペタもできる!C++厨憤死www
http://engawa.2ch.net/test/read.cgi/poverty/1355832436/
420デフォルトの名無しさん:2012/12/18(火) 22:06:00.67
>>419
そのネイティブって.NETでいうマネージコードとネイティブコードの区別におけるネイティブじゃなくて
スマホ開発でよく使われる言葉で「HTMLじゃなくてOS依存」という意味だよ
その意味では.NETアプリはれっきとしたネイティブ
421デフォルトの名無しさん:2012/12/18(火) 23:01:33.69
まあそういう意味合いでもあるんだけど。
Mono.Mac に関してはほんとにネイティブコンパイルしてる。
AOT(ahead of time)コンパイルかけてる。
422デフォルトの名無しさん:2012/12/19(水) 10:08:32.29
>>417-418
こないだ2ちゃんの仕様が変わって&使えなくなった
423デフォルトの名無しさん:2012/12/19(水) 10:56:10.53
BufferedGraphicsなんて超絶すばらしいもんあったんだな
424デフォルトの名無しさん:2012/12/19(水) 11:04:37.94
WinFormsの描画はもともとダブルバッファになってるから自分でやる必要はないよ
自分でループ回してアニメーションとかするんなら意味があるかもしれないが
そもそもSystem.Drawingだと重すぎてガックガクだからどのみち使い物にならないという
425デフォルトの名無しさん:2012/12/19(水) 11:08:25.01
道具の使い方をしらん素人はそんなもんだろ
426デフォルトの名無しさん:2012/12/19(水) 11:13:47.69
Vista以降のBufferedPaintをラップしてくれるならまだ値打ちがあったんだけど
427デフォルトの名無しさん:2012/12/19(水) 11:25:04.70
System.Drawingでアニメーションやろうとして重すぎて投げ出すのはみんな通る道
428デフォルトの名無しさん:2012/12/19(水) 11:52:23.49
DrawingよりImege(Bitmap)クラスでindexed画像の読み込みの遅さどうにかしてほしいわ
429デフォルトの名無しさん:2012/12/19(水) 12:05:34.71
夢がひろがりんぐ
430デフォルトの名無しさん:2012/12/19(水) 12:35:16.33
デコード済みの画像描画するだけならぜんぜん遅くねーよ
おおかたヘッダなめただけのImageほおりこんで重いとかぬかしてんだろ
431デフォルトの名無しさん:2012/12/19(水) 12:42:51.14
デコードが重いっつってんだろウンコクズ
432デフォルトの名無しさん:2012/12/19(水) 12:49:25.42
Paintイベント内でデコードしてる馬鹿いるよな
433デフォルトの名無しさん:2012/12/19(水) 12:58:52.60
デコードって何?
434デフォルトの名無しさん:2012/12/19(水) 13:16:24.75
最速で描画する方法を教えてください><
435デフォルトの名無しさん:2012/12/19(水) 13:21:58.73
用途による
標準のクラスでただ描画するだけなら
ヘッダなめただけのImageをTextureBrushにぶち込んでFillRectangleで塗りつぶす
436デフォルトの名無しさん:2012/12/19(水) 13:29:37.67
DrawImageは遅くないよね?
437デフォルトの名無しさん:2012/12/19(水) 13:36:57.95
XNA関連に比べると転送は遅い
438デフォルトの名無しさん:2012/12/19(水) 13:37:51.91
ビューアみたいなことやろうとすると物足りないよね
439デフォルトの名無しさん:2012/12/19(水) 13:44:00.20
DrawingよりImege(Bitmap)クラスでindexed画像の読み込みの遅さどうにかしてほしいつってんだろウンコクズ
440デフォルトの名無しさん:2012/12/19(水) 13:53:45.70
XNA興味あるけど、ユーザーに余計なもんインストールさせるのは.NETだけでご馳走様だしなぁ
441 忍法帖【Lv=40,xxxPT】(4+0:5) :2012/12/19(水) 14:16:01.20
tttt
442デフォルトの名無しさん:2012/12/19(水) 14:56:22.72
>>440
SharpDXなら.netだけでおkだよー
443デフォルトの名無しさん:2012/12/19(水) 14:58:19.53
サンコスぐぐってくるぜ
444デフォルトの名無しさん:2012/12/19(水) 15:12:24.06
SharpDXを使ってるゲーム会社ってどこだw
445デフォルトの名無しさん:2012/12/19(水) 16:34:21.57
この前使ったけどすごくよかった
446デフォルトの名無しさん:2012/12/19(水) 16:43:00.08
日本語の情報がなさ過ぎて俺には無理だ
447デフォルトの名無しさん:2012/12/19(水) 17:05:44.18
C++の資料かなり使える
448デフォルトの名無しさん:2012/12/19(水) 17:23:01.91
GDI! GDI! G・D・I!
449デフォルトの名無しさん:2012/12/19(水) 17:23:25.75
>>446
どうせどこかで英語が必要になるんだから早めに習得しといた方がいい
……と思ったら英語の情報も乏しかったンゴ……
450デフォルトの名無しさん:2012/12/19(水) 17:30:58.97
GDI++はまだですか
451デフォルトの名無しさん:2012/12/19(水) 20:33:27.83
GDI#
452デフォルトの名無しさん:2012/12/19(水) 20:43:36.05
WinFormのインターフェースでDirect3Dいじれないかねぇ。
WPFはわけわかめ。
453デフォルトの名無しさん:2012/12/19(水) 21:35:52.81
DxLib使うとか?ちょっと違うか。
454デフォルトの名無しさん:2012/12/19(水) 21:50:14.60
>>453
そんなの有るんだね。調べてみるよ。
455デフォルトの名無しさん:2012/12/20(木) 00:42:47.67
BlockingCollection.AddでIsCompleteとDisposedを検知したい場合、lockで同期して例外を回避するのと、try-catchで例外を握りつぶすののどっちがいい?
456デフォルトの名無しさん:2012/12/20(木) 00:47:12.62
>>455
どう考えてもlockで同期するパターンだろう。
例外発生、ましてや握りつぶしなんてできる限り、やらないほうがいい。
457デフォルトの名無しさん:2012/12/20(木) 00:54:39.57
>>456
何となくそう思ってたんだが、フラグを使って例外発生を0または1回に抑えれてもlockの方がいいかな
BlockingCollection.Addがスレッドセーフなのにさらに同期するのはもったいない気がして…
458デフォルトの名無しさん:2012/12/20(木) 02:33:55.46
例外でいいよ
キャンセルフレームワーク使うんなら正しいやり方
459デフォルトの名無しさん:2012/12/20(木) 03:09:46.11
ロックしたらAddに入ったときにコレクションが空のときデッドロックするだろ
460459:2012/12/20(木) 03:18:03.29
訂正
Takeに入ったとき の間違い
461デフォルトの名無しさん:2012/12/20(木) 04:55:04.82
Visual C#のWebBrowserに関する質問です.
webBrowser1.Navigateでアクセスし,そのサイト内のリンクで特定文字列を含むものにアクセスしたい場合どうすればよいでしょうか.
例えば,Yahoo.co.jpにアクセスし,その中にあるすべてのリンクからauctionの文字列が含まれているリンクにアクセスするといった
感じです.特定文字列を含むリンクが複数ある場合もあると思いますが,必ず1つに絞られるものと考えてください.
462デフォルトの名無しさん:2012/12/20(木) 08:23:14.06
うぜぇ
463デフォルトの名無しさん:2012/12/20(木) 12:31:47.00
WebBrowserが質問に出てくるときは大抵初心者が無茶をやってるとき
464デフォルトの名無しさん:2012/12/20(木) 13:11:35.04
もうNGワードで
465デフォルトの名無しさん:2012/12/20(木) 21:40:04.24
自作のソフトにVBAみたいなマクロ機能をつけたいんだけど
どうやったら出来るの?
466デフォルトの名無しさん:2012/12/20(木) 21:52:36.28
インタープリタバターンを実装すればできる。
467デフォルトの名無しさん:2012/12/20(木) 22:00:52.30
VBscriptやjavascriptとかの既存言語でやりたい

自分で言語つくって構文解析してとか無理ですわ
468デフォルトの名無しさん:2012/12/20(木) 22:13:17.43
C#初心者ならともかくプログラミング初心者なんだよな
WebBrowserコントロール使うやつって
469デフォルトの名無しさん:2012/12/20(木) 22:13:48.02
IronPythonで
470デフォルトの名無しさん:2012/12/20(木) 22:22:45.10
>>467
System.CodeDOMでC#かVBのコンパイラを動かせば?
よっぽどうまくやらないとセキュリティホールになるが
471デフォルトの名無しさん:2012/12/20(木) 22:30:27.97
>>461
http://www.atmarkit.co.jp/fdotnet/dotnettips/687nondispbrowser/nondispbrowser.html
これ読んでぼちぼち頑張ってや
あ、「WebBrowser リンク」でググって一番上に出てきた奴だから、中は見てないけど役に立つ気はするで
472デフォルトの名無しさん:2012/12/20(木) 22:32:15.66
あんまり触ると逆上するから止めろ
473デフォルトの名無しさん:2012/12/20(木) 22:51:06.71
ゴキブリマンみたいに居つかれても困るしな
474デフォルトの名無しさん:2012/12/20(木) 22:53:42.13
分散並列処理フレームワークありませんか?
475デフォルトの名無しさん:2012/12/20(木) 22:55:59.41
>>474
Pythonスレにまで書きに行っただろ
何なんだテメェ
476デフォルトの名無しさん:2012/12/20(木) 22:56:16.50
>>470
なんか出来そうな感じがしてきた。
ありがとう!
477デフォルトの名無しさん:2012/12/20(木) 22:59:01.75
>>476
CodeDOMを使うのなら必ず本体とは別のAppDomainで動かさないとダメだぞ
そうしないとスクリプトが逝ったら共倒れになるし、解放できないから確実にメモリリークする
478デフォルトの名無しさん:2012/12/20(木) 23:01:46.84
>>473
お前ゴキブリみたいな人生だろ
479デフォルトの名無しさん:2012/12/20(木) 23:07:45.77
>>477
AppDomainで調べてみるよ
アドバイス、ありがとう
480デフォルトの名無しさん:2012/12/20(木) 23:08:20.20
第三者が真似するな
面白いと思ってるなら首括れ
481デフォルトの名無しさん:2012/12/20(木) 23:09:28.24
>>480
お前ゴキブリみたいな人生だろ
482デフォルトの名無しさん:2012/12/20(木) 23:11:43.19
やれやれ
(* −_−)r鹵〜<巛巛巛
483デフォルトの名無しさん:2012/12/20(木) 23:13:29.16
>>482
お前ゴキブリみたいな人生だろ
484デフォルトの名無しさん:2012/12/20(木) 23:27:30.85
よくわかったな。
485デフォルトの名無しさん:2012/12/20(木) 23:38:05.78
>>484
お前LV40だろ
486デフォルトの名無しさん:2012/12/21(金) 14:33:55.04
フォームにTableLayoutPanelを貼り付けて
TableLayoutPanel内にはラベルをDock=Fillでいくつも張り付けてるんですけど
ラベル間の境界線上でMouseMoveイベントを受け取るのはどのコントロールなんですか?
フォームとTableLayoutPanelとラベルにイベントを追加してみましたけど
いずれも境界線上では反応しません
487デフォルトの名無しさん:2012/12/21(金) 14:45:35.26
>>486
マルチポストな上、質問が意味不明。
答える必要なし。
488デフォルトの名無しさん:2012/12/21(金) 15:02:41.56
↑馬鹿
489デフォルトの名無しさん:2012/12/21(金) 15:03:41.90
>>487
何もわかっとらんのに出しゃばるなゴミ
490デフォルトの名無しさん:2012/12/21(金) 15:52:20.29
pictureboxに自分で線引いて自分で制御した方が早そうだな
491デフォルトの名無しさん:2012/12/21(金) 15:55:59.84
雑魚どもがぴーちくぱーちくうるせーんだよ
すっこんでろwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
492デフォルトの名無しさん:2012/12/21(金) 16:07:59.06
ラベルでもテーブルレイアウトでもないならフォーム自身しかないだろう
493デフォルトの名無しさん:2012/12/21(金) 22:27:58.53
動画変換ツールのffmpeg.exeというフリーソフトなのですが
コマンドラインでffmpeg.exe -i <filename.mpg> とすると
その動画ファイルのビットレートやエンコードの種類が表示されるのですが、
この文字列をC#で受け取る方法を教えて頂きたいです。
OSはWindowdXPSP3です。
494デフォルトの名無しさん:2012/12/21(金) 22:29:45.81
>>493
多分役に立つよ
例によって記事の中は確認してないけどね
http://www.atmarkit.co.jp/fdotnet/dotnettips/657redirectstdout/redirectstdout.html
495デフォルトの名無しさん:2012/12/22(土) 00:07:29.79
インデクサの添え字なし見たいなのないの?
496デフォルトの名無しさん:2012/12/22(土) 00:10:15.04
kwsk カッコってオーバーロードできないと思うけど。
497デフォルトの名無しさん:2012/12/22(土) 00:14:55.17
JavaScriptじゃないんだから
498395:2012/12/22(土) 00:34:06.00
If sender Is Button1 Then
のisがよくわからない。

Is関数ってことでいいの?
499デフォルトの名無しさん:2012/12/22(土) 00:41:06.87
関数ではなく演算子
Object.ReferenceEquals(sender, Button1) と等価
厳密な参照比較を行う演算子で、=演算子とは全然違う
500498:2012/12/22(土) 00:41:19.35
間違えました
501498:2012/12/22(土) 00:42:44.44
>>499
質問するスレを間違えましたが
ありがとうございました。
良くわかりました
502デフォルトの名無しさん:2012/12/22(土) 01:42:05.59
プロパティをvolatileにしたい場合って実体の変数にvolatile付けるしかない?
必然的に自動プロパティはvolatile不可?
503デフォルトの名無しさん:2012/12/22(土) 01:47:56.93
volatileにする必要はない
プロパティ経由のアクセスの場合メソッド呼び出しが入るので、
CLIの仕様上、必ずそこで正しく同期されることになっている
504デフォルトの名無しさん:2012/12/22(土) 01:48:59.31
はい
505デフォルトの名無しさん:2012/12/22(土) 01:58:12.68
はい
506デフォルトの名無しさん:2012/12/22(土) 01:58:44.80
はいは2回でいい
507503:2012/12/22(土) 02:15:31.47
確認したら勘違いだったわ
MethodImplOptions.Synchronizedでも付けたら
508デフォルトの名無しさん:2012/12/22(土) 02:27:43.33
>>502
Thread.VolatileRead っていう静的メソッドでも同じことできるというか、こっちの方が不要なとこまでvolatileにしないから性能いいらしい。
けども、それもref引数でフィールド渡さないといけないので、自動プロパティは無理だったはず。

>>503
ちなみに、MethodImplOptions.Synchronizedもlock(this)なコード(ダメなコード)に展開されるので今となっては非推奨。
509デフォルトの名無しさん:2012/12/22(土) 11:54:21.99
>>508
lock(this)がダメなのはデッドロックの原因につながる恐れがあるからで
自動プロパティは特に中で変わったことしてないからlock(this)しても問題ないぞ
パフォーマンスは落ちるかもしれないけどな
C#3.0以前のコンパイラはイベントの実装にMethodImplOptions.Synchronizedを使ってたが
やめたのはあくまでパフォーマンスの改善のため
510デフォルトの名無しさん:2012/12/22(土) 19:30:27.09
>>486
MarginとPaddingを0で
511デフォルトの名無しさん:2012/12/22(土) 19:34:03.72
↑馬鹿
512デフォルトの名無しさん:2012/12/22(土) 20:24:12.00
>>494
どうもです。
試してみたけどdirやipconfigの結果は取得できるのですが
ffmpegの出力は受け取れなかったのですが、この方法でffmpegの結果も受け取ることができるでしょうか?
513デフォルトの名無しさん:2012/12/22(土) 20:52:52.98
今日のヒント:

ffmpegの出力は「標準エラー出力」に出ている
詳しくはffmpegのドキュメントを読もう
514デフォルトの名無しさん:2012/12/22(土) 21:24:55.99
出来た\(^o^)/ありがとー
515デフォルトの名無しさん:2012/12/22(土) 23:30:42.06
コンソールとかの周辺知識がなさ過ぎるな
516デフォルトの名無しさん:2012/12/22(土) 23:33:21.66
ここが初心者向けで、相談室が脱初心者向けだと
思っていたがどうやら逆なようだな。
517デフォルトの名無しさん:2012/12/23(日) 04:27:42.23
コーマン・ド・ライン
518デフォルトの名無しさん:2012/12/23(日) 10:35:18.05
フォームのTopMostプロパティをtrueにして画面をタスクバーにかぶせると、かぶせた部分が隠れてしまいます。
タスクバーの上でも常に最善面に表示させる方法を教えてください
519デフォルトの名無しさん:2012/12/23(日) 11:26:45.49
520デフォルトの名無しさん:2012/12/23(日) 12:20:28.82
Panelを継承して複数の子コントロールを持つクラスを書いています
子コントロールの上に文字列を横断的に半透明で描画するにはどうすればいいですか?
OnPaintをオーバーライドしても子コントロールの下に描画されてしまいます
また、子コントロールはクリックなどもするので透明なレイヤーをかぶせるのは難しいです
521デフォルトの名無しさん:2012/12/23(日) 12:24:53.71
全子コントロールのPaintイベントで文字をかけばいいんじゃね?
522デフォルトの名無しさん:2012/12/23(日) 12:28:52.73
523デフォルトの名無しさん:2012/12/23(日) 18:42:28.88
ユリゲラーのおっぱいシティね
524デフォルトの名無しさん:2012/12/23(日) 23:59:56.99
decimalの値の12.34などを小数点以下を切り捨ててint変数に入れるにはどうすればいいですか?
525デフォルトの名無しさん:2012/12/24(月) 00:07:13.14
(int)12.34
526デフォルトの名無しさん:2012/12/24(月) 00:10:16.83
decimalと浮動小数点型は変換規則が違うので混同すると危険
527デフォルトの名無しさん:2012/12/24(月) 00:11:45.00
こんなもん一個一個聞くよりググったほうがよりどりみどりだろうが
528デフォルトの名無しさん:2012/12/24(月) 00:12:01.37
そうだっけ?
529デフォルトの名無しさん:2012/12/24(月) 00:13:35.16
decimal->intは切捨てじゃなく一番近い整数への丸めのはず
530デフォルトの名無しさん:2012/12/24(月) 00:14:01.91
>>526が言いたいだけの釣りだろ
531デフォルトの名無しさん:2012/12/24(月) 00:15:31.63
釣りじゃなきゃ答えてるわな
532デフォルトの名無しさん:2012/12/24(月) 00:22:16.18
(int)Math.Floor(12.34D)
533デフォルトの名無しさん:2012/12/24(月) 00:22:58.60
質問にあれだけキーワードそろっててググってないわけないよな
ググれば腐るほど情報出てくる内容だしまあ釣りだな
534デフォルトの名無しさん:2012/12/24(月) 00:23:09.11
ぐぐったらMath.Floorが出てきたのでこれを使ってみるっす。
535デフォルトの名無しさん:2012/12/24(月) 00:30:40.75
釣られて怒るのってどういう心境です
536デフォルトの名無しさん:2012/12/24(月) 00:33:14.12
わずか5分で5レス付くくらいだから、心中穏やかではないです。
537526:2012/12/24(月) 00:42:40.24
別に釣りの意図なんてなかったけどね
そう思いたい人のことを否定するつもりはない
538デフォルトの名無しさん:2012/12/24(月) 00:44:44.01
>>524-526の流れで何を釣ってるように見えるのか分からん
自作自演なら理解できるが
539デフォルトの名無しさん:2012/12/24(月) 00:47:37.12
質問が出る→意気揚々と答える→間違いを指摘される→釣りだろ

このスレではお決まりのパターンじゃん?
珍しくもなんともない
取り立てて不愉快がるほどのことでもないよ
540デフォルトの名無しさん:2012/12/24(月) 00:48:03.40
IDのないスレで釣りだろと釣りですを宣言する奴は負け犬
541デフォルトの名無しさん:2012/12/24(月) 01:03:27.78
>>526
確かにMSDNの「明示的な数値変換の一覧表」にそう書いてあるね。
なんか一貫性がない規則のように感じられるけど、落とし穴を作ることが意図じゃないとすれば
どういう理由があるんだろうか。
542525:2012/12/24(月) 01:07:15.96
大漁♪
543デフォルトの名無しさん:2012/12/24(月) 01:07:48.13
言語仕様は
For a conversion from decimal to an integral type, the source value is rounded towards zero to the nearest integral value,
544デフォルトの名無しさん:2012/12/24(月) 01:11:39.20
釣られ続けてたのは>>526というオチでした
545デフォルトの名無しさん:2012/12/24(月) 01:12:41.63
>>543
銀行丸めじゃなくて、負の場合も含めて五捨六入ってことかね?
546デフォルトの名無しさん:2012/12/24(月) 01:22:55.64
>>545
普通の切り捨て
http://ideone.com/JRXgmd
547デフォルトの名無しさん:2012/12/24(月) 01:30:41.75
>>546
GJ
548デフォルトの名無しさん:2012/12/24(月) 01:48:49.59
ああ、この話題ね
半端な知識しかない君たちへ
次の段階へステップアップするための面白いヒントをやろう

Convert.ToInt32()
549デフォルトの名無しさん:2012/12/24(月) 01:55:32.93
切捨てってことは結局doubleと同じ扱いってことか。
なんだそれとんだオチだな
550デフォルトの名無しさん:2012/12/24(月) 02:50:11.29
1つのアセンブリをC#とC++/CLIの両方で作ることはできますか?
551デフォルトの名無しさん:2012/12/24(月) 09:07:42.95
数値型変換でConvertなんて使ってVB土方だと思われたら恥ずかしいし…
552デフォルトの名無しさん:2012/12/24(月) 10:13:57.68
>>550
基本無理
553デフォルトの名無しさん:2012/12/24(月) 11:28:23.71
>>550
マルチモジュールアセンブリで可能
554デフォルトの名無しさん:2012/12/24(月) 17:35:11.24
こいつら使い方もわからないのになんでdecimalなんて使ってるの
これだから.Net重いだの糞だの言われるんだよなぁ
555デフォルトの名無しさん:2012/12/24(月) 17:50:17.65
キャスト後の結果ではなくキャスト前の計算の結果がry
556デフォルトの名無しさん:2012/12/24(月) 18:07:40.62
>>526>>542は今何を思っているんだろうか
そしてMSDNは10年近く何をやってたんだか
557デフォルトの名無しさん:2012/12/24(月) 18:11:25.41
アホが勝手に間違った解釈してるだけだろう
558デフォルトの名無しさん:2012/12/24(月) 18:19:45.24
http://msdn.microsoft.com/en-us/library/vstudio/yht2cx7b.aspx
>this value is rounded towards zero to the nearest integral value

http://msdn.microsoft.com/ja-jp/library/vstudio/yht2cx7b.aspx
>値は一番近い整数値に丸められます

towards zeroが消えてる
559デフォルトの名無しさん:2012/12/24(月) 18:36:52.08
本気でひどいな、その誤訳はw
560デフォルトの名無しさん:2012/12/24(月) 18:39:40.97
いまいちよく分からんのだけど結局どういうことなの?
561デフォルトの名無しさん:2012/12/24(月) 18:49:20.66
decimal→int変換は「ゼロの方向にある一番近い整数」≒「切り捨て」が正しいけど
MSDN日本語版には「一番近い整数」≒「四捨五入」と書いてあったということ

んで>>526がMSDNに騙されて、>>526に騙された人も大量発生
562デフォルトの名無しさん:2012/12/24(月) 18:53:19.14
なるほど、thx
563デフォルトの名無しさん:2012/12/24(月) 18:56:02.65
別に煽るつもりはないけど、
それを解説がないと読み取れない人がいるのもそれはそれで驚き。

スレに2分目を通せば分かる話だと思うけど
564デフォルトの名無しさん:2012/12/24(月) 19:07:22.42
すまんね、英語が苦手なもんで
565デフォルトの名無しさん:2012/12/24(月) 20:05:37.57
英語力というか、原文を翻訳通せばすむ問題ではある。
その程度のことをしないことに驚いているのではないかとエスパーしてみた。
566デフォルトの名無しさん:2012/12/24(月) 20:36:20.02
実際につかってて気づかないことに驚き
567デフォルトの名無しさん:2012/12/24(月) 20:45:49.74
どうでもいい糞コードに使い分けてるつもりになって自己満足してるんだろうなとエスパーしてみた。
568デフォルトの名無しさん:2012/12/24(月) 20:50:06.08
経験上decimal型変数の大半は小数である必要すらない
OracleのNumber型が悪いんだと思う
569デフォルトの名無しさん:2012/12/24(月) 20:58:29.13
>>526
言い訳はいいからごめんなさいは?
570デフォルトの名無しさん:2012/12/24(月) 21:37:21.66
素直にMSDNのURL貼っとけばいいものを
自分の知識のごとくドヤ顔でレスしといて間違い指摘されたらMSDNの誤訳のせいとか
生きてて恥ずかしくない?
571デフォルトの名無しさん:2012/12/24(月) 21:41:41.34
>>570
壁にでもしゃべりかけてんのか?
アンカもつけられない新参は黙ってろカス
572デフォルトの名無しさん:2012/12/24(月) 21:44:29.12
ちなみに>>543-546で間違い指摘したのと>>568は同一人物な
ソースは俺
573デフォルトの名無しさん:2012/12/24(月) 21:44:56.79
いちいち煽り馬鹿に反応する奴も頭悪いよ。
煽ってる奴がどんな奴か想像力が働けばアホらしくて反応する気にならんでしょ。
ほっとけって。
574デフォルトの名無しさん:2012/12/24(月) 22:16:15.47
↑スルーできずにいちいちレスする馬鹿
575デフォルトの名無しさん:2012/12/24(月) 23:02:49.40
馬鹿の書いた糞コードでもそれなりに動いてしてまうC#のすばらしさをアピールしてるんですよ
576デフォルトの名無しさん:2012/12/24(月) 23:13:51.43
失礼かみまみた
577デフォルトの名無しさん:2012/12/25(火) 08:58:18.33
投稿日:2012/12/24(月) 22:42:03.77 ID:6+zZOOFi
アスペじゃあるまいしその程度のことを問題に上げるのが有意義だとは思えない(キリッ
コーディングしすぎてコミュ不全になってないか?(キリリッ

おまいらコーディングし過ぎちゃダメだお;ω;
メリークリスマスな贈り物だお
578デフォルトの名無しさん:2012/12/25(火) 12:26:10.63
クリスマスはC#たんとすごすお
579デフォルトの名無しさん:2012/12/25(火) 12:49:46.04
思い浮かべてごらん・・
サンタの格好をしたヘジたん
580デフォルトの名無しさん:2012/12/25(火) 13:28:01.67
並列処理で効率よくプレゼントを配っていく
581デフォルトの名無しさん:2012/12/25(火) 16:06:10.99
思い浮かべてごらん・・
C#たんが配ったプレゼントを拾うJAVAたん
582デフォルトの名無しさん:2012/12/25(火) 16:30:32.53
GCがいっぱい><
583デフォルトの名無しさん:2012/12/25(火) 18:53:45.34
GCに巻き込まれて破棄されるJAVAたん
584デフォルトの名無しさん:2012/12/25(火) 19:09:46.68
死んでもアンマネージリソースだけは手放さないJAVAたん
585デフォルトの名無しさん:2012/12/25(火) 22:05:59.82
GCがおっぱいに見えた
586デフォルトの名無しさん:2012/12/25(火) 22:27:57.56
インストーラーを作成した時に、一緒にデータベースファイルを一つ下のディレクトリに入れたいのですが、どうすればいいのでしょうか?
インストールフォルダ\databasefolder\data.mdb
と言った構造にしたいのです。
587デフォルトの名無しさん:2012/12/25(火) 22:29:40.44
インストーラを作るんだからそのように作ればいいだろ
588デフォルトの名無しさん:2012/12/25(火) 22:31:27.82
Visual Stuidoのメニューやツールバーって、青いグラデーションになっていると思います。
同じように表示したいのですが、どうすればいいんでしょうか?
589デフォルトの名無しさん:2012/12/25(火) 22:32:39.00
>>586
インストーラーもいろいろあるからとりあえずどのインストーラーか書かないと。
590デフォルトの名無しさん:2012/12/25(火) 22:50:22.95
>>586です
あっ、、すみません。webばかり触っていたもので・・。
インストーラー作成機能がVSに付いてるのだと思っていたのですが、違うのですね。
ちなみにインストーラーを作成した方がいい理由というのはあるのでしょうか。
そこまで大きな理由がないのであれば、Releaseフォルダをそのままlzhで纏めるだけにしようかと思うのですが
591デフォルトの名無しさん:2012/12/25(火) 23:05:12.54
>>590
今時lzhはねーだろ
アンチウィルスソフト未対応の危険な圧縮形式を使うのはよしてくれ
592デフォルトの名無しさん:2012/12/25(火) 23:06:32.21
>>590
いや付いてるけどその付属のインストーラーにも3種類ぐらいあるのよ。
ProgramFiles以下にインストールしたいとかインストール時に関連付けやレジストリに
書き込みたいとかなければ、別にXCOPY方式でいいんじゃないの
593デフォルトの名無しさん:2012/12/25(火) 23:10:45.38
>>591
lzhはダメなのですか?アンチウィルスソフトがこんなメジャーな拡張子に対応していないなんて信じられません・・・
zipやrarなら大丈夫でしょうか?

>>592
特に関連付けやレジストリ等はありませんね!
XCOPYというのはコマンドのようですが、ただ、コピーするだけという意味でよろしいですか?
594デフォルトの名無しさん:2012/12/25(火) 23:15:53.43
>>593
セキュリティー以上に今時lzhなんて使うと重症の偏屈者だと思われるよw
必用なファイルを単純にコピーするだけのアプリの配布方法をXCOPY配置とか言ったりする
595デフォルトの名無しさん:2012/12/25(火) 23:21:02.41
>>594
なるほど・・・lzhがそんな扱いを受けていたなんて知りませんでした・・・。
では、zipで配布にします。ありがとうございました。
596デフォルトの名無しさん:2012/12/25(火) 23:32:24.84
>>594
XCOPY配置なんて表現、初めて聞いた。
597デフォルトの名無しさん:2012/12/25(火) 23:36:23.18
>>596
MSが結構使ってる表現だとおもうけどなあ。
ASP.NETとかSQL Serverとか
598デフォルトの名無しさん:2012/12/25(火) 23:43:10.53
MCTS試験に良く出てくる
599デフォルトの名無しさん:2012/12/25(火) 23:48:31.98
lzhって確か、もう保守されてないだろ。
脆弱性見つかっても放置されてるのが現状だろ。
600デフォルトの名無しさん:2012/12/25(火) 23:54:48.66
こんにちは

System.Windows.Forms.Control.DefaultFont プロパティ についての質問です

これはシステム既定のフォントを示しているそうですが,MS P ゴシック 9ptしか示さないのですが,なぜでしょうか.
Windows 7ですとメイリオフォント等が使われているため,これを示しているほうが正しいのではないかと思います.

また,C#で作ったフォームのフォントがすべてメイリオではないフォントで表示されているようですが,上述のような疑問と関係はありますか.
601デフォルトの名無しさん:2012/12/26(水) 00:05:31.05
該当プロパティのMSDN読め
602デフォルトの名無しさん:2012/12/26(水) 01:48:54.10
日本語をまともに読み書きできない人にメイリオ使っても意味がないからだよ
C#たん気が利くね
603デフォルトの名無しさん:2012/12/26(水) 23:51:38.46
画面上のリストボックスに、テーブルから取得してきたA列 + ": " + "B列"というデータを表示するとき、
データバインディングさせるメリットとデメリットはなんですか?
604デフォルトの名無しさん:2012/12/27(木) 09:15:36.93
>>601
返信有難う御座います.

MSDNを読みました.
システム設定に応じた値ではなく,日本語環境の場合は「MS UI Gothic、9 ポイント」固定ということなのですね.
もしシステム設定のフォントを得たい場合は,C#を利用していてもWin32APIを呼ぶのが普通なのでしょうか.
605デフォルトの名無しさん:2012/12/27(木) 14:18:25.31
開きメクラじゃいくらMSDN読んでも無駄だわな

>システム設定に応じた値ではなく,日本語環境の場合は「MS UI Gothic、9 ポイント」固定

なんてどこに書いてあるんだよタコが

Windows NT 4x、日本語バージョン → MS UI Gothic、9 ポイント
Arabic Windows → Tahoma、8 ポイント
その他のオペレーティング システムまたはカルチャ → MS Shell Dlg 論理フォント。通常は Microsoft San Serif 8 ポイント
MS Shell Dlg は、システム レジストリのフォント セットにマッピングされます。

ってあんだろうがハゲが。おまえはWindows NT 4x使ってんのかっつーの。
んでレジストリの
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes
にMS Shell Dlgの値が書いてあんだよクソハゲがぁぁぁぁぁぁぁぁ
606デフォルトの名無しさん:2012/12/27(木) 14:23:47.38
Windows NT 4x使ってました.
607デフォルトの名無しさん:2012/12/27(木) 15:51:33.74
良い人過ぎワロスw
608デフォルトの名無しさん:2012/12/27(木) 17:34:23.68
C#でwindows自体のコントロールをしたいです。
最終的にはwinapiでCの関数呼び出しに行き着くと思いますが
C#ネイティブでコントロールできる領域を知るにはどのような文献にあたるとよいでしょうか

よろしくお願いいたします
609デフォルトの名無しさん:2012/12/27(木) 18:19:27.56
Windows NT 4xって、.NET Framework動くのか
610デフォルトの名無しさん:2012/12/27(木) 18:27:08.95
実際には見もしないで、適当にでたらめ書けば、
顔真っ赤にして正しい情報を出してくれる人がいっぱいいるので
重宝してます、2ちゃんねる。
611デフォルトの名無しさん:2012/12/27(木) 22:35:00.46
複数種類のdelegateを引数にしたい場合って、object型引数しか選択肢ない?
612デフォルトの名無しさん:2012/12/27(木) 22:43:07.43
ジェネリックメソッド化かDelegate型
613デフォルトの名無しさん:2012/12/27(木) 22:52:13.24
普通に何個でも渡せるよ
もしかして配列を使う場合の話?
614デフォルトの名無しさん:2012/12/28(金) 00:43:56.52
逆にobject以外にありうると思うか?ないよ。
615デフォルトの名無しさん:2012/12/28(金) 00:45:14.29
dynamicなら引数さえ合ってればデリゲート型気にせずに呼べるよ
616デフォルトの名無しさん:2012/12/28(金) 00:51:29.99
objectで困ることがあるのか
希望する方法があるのか
617デフォルトの名無しさん:2012/12/28(金) 02:01:30.74
objectだと何でも入るから気持ち悪い…一応ArgumentExceptionは吐くようにしてるけど
Delegate型がベストかな
618デフォルトの名無しさん:2012/12/28(金) 02:44:07.35
安全を考慮するなら、公開するメソッドは対象デリゲート全部をとるオーバーロードを作って、
クラス内部でdynamicなりobjectをとるメソッドを呼ぶ方がいいな。
619デフォルトの名無しさん:2012/12/28(金) 03:07:04.94
Actionにしちゃって呼び出し側に一手間いれてもらうとか
620デフォルトの名無しさん:2012/12/28(金) 03:25:56.88
選択肢としては、まっとうな手段としては
共通の親クラスを引数にする(ジェネリック含む)
複数種類のオーバーロード作る
の二つしかないだろ
621デフォルトの名無しさん:2012/12/28(金) 03:32:50.47
そもそもなぜデリゲートをそんな形で渡す必要があるのか
使う側だって不便だろう
622デフォルトの名無しさん:2012/12/28(金) 04:51:54.48
ラムダが使えるようになって、デリゲート渡しは何でもアリアリになっちゃったからな。
623デフォルトの名無しさん:2012/12/28(金) 22:45:17.26
オブジェクトの型ってどうやって調べるの?
624デフォルトの名無しさん:2012/12/28(金) 22:46:35.71
オブジェクトの型情報を別途持てるようになってなかったっけ?
625デフォルトの名無しさん:2012/12/28(金) 23:01:18.66
特定の型かどうか調べるだけならisかas
もっと高度な情報が必要ならobject.GetType()
626デフォルトの名無しさん:2012/12/28(金) 23:01:35.31
・調べる型が固定→isかas
・調べる方が可変→GetType()==type
・それ以上→リフレクション
627デフォルトの名無しさん:2012/12/28(金) 23:03:01.05
ありがとう
628デフォルトの名無しさん:2012/12/28(金) 23:03:09.22
あとType.IsAssignableFromとか
629デフォルトの名無しさん:2012/12/28(金) 23:04:43.67
How to WinForms WindowStateChanged Event
630デフォルトの名無しさん:2012/12/28(金) 23:08:49.06
なんで時折カタコト英語が湧くのかね
631デフォルトの名無しさん:2012/12/29(土) 00:14:22.51
ほら馬鹿が反応するだろ
632デフォルトの名無しさん:2012/12/29(土) 14:45:11.26
C++で参照にしてないクラスオブジェクトの引数はコピーが作られて
呼び出すたびに使うクラス分のメモリが使われますけど
C#でrefを付けてないクラス型の引数の場合はどういう挙動になるんでしょ?
633デフォルトの名無しさん:2012/12/29(土) 14:47:32.07
参照型は明示的に複製しない限り同一インスタンス
634デフォルトの名無しさん:2012/12/29(土) 15:47:02.47
参照型と値型 引数 違い でぐぐればいいんじゃね
635デフォルトの名無しさん:2012/12/29(土) 16:39:36.28
>>605
返信有難う御座います.


勘違いをしてしまいもうしわけありません.
当方 Windows NT 6.1 を 日本語環境 を使用しております.

実際に確かめたところ,レジストリでは MS Shell Dlg の欄に MS UI Gothic と書かれておりました.

試しに MS Shell Dlg の値を変えましたが, DefaultFont には反映されないようでした.
しかし難しく思いますので,これは諦めることとします.
636デフォルトの名無しさん:2012/12/29(土) 17:12:44.91
>>635
HKEY_LOCAL_MACHINE の値の反映は再起動後というのが多いというのは知ってると思うけど
まさか再起動したんだよね?
637デフォルトの名無しさん:2012/12/30(日) 00:49:40.64
is は、その型にキャスト可能かどうか。
asは、クラスかインターフェースのみ。つまり参照型のキャストを試みて、できなかったらnullで例外は吐かない。
.GetType() または、typeof( Hoge )は、型情報、リフレクション。
参照型のキャストでキャスト例外も必要ないなら as で安定だし、若干高速。
638デフォルトの名無しさん:2012/12/30(日) 00:58:31.60
>is は、その型にキャスト可能かどうか。
これは違う。明示的な型変換があればisがfalseでもキャストできる。
インスタンスの型の継承階層にその型が含まれているかどうかだ
639デフォルトの名無しさん:2012/12/30(日) 01:53:01.43
余談だけど、COMが絡むとまたややこしいんだよな。
COMのオブジェクトは、C#コード上の継承関係とは無関係に QueryInterface に成功するなら
継承関係があると見なされ、is 演算子は true を返す。
最初面食らったわ。

[ComImport]
[Guid("4657278A-411B-11d2-839A-00C04FD918D0")]
public class DragDropHelper { }

[ComImport]
[Guid("4657278B-411B-11D2-839A-00C04FD918D0")]
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
public interface IDropTargetHelper
{
// 中身省略
}

var a = new DragDropHelper();
var b = a is IDropTargetHelper; // true
var c = a as IDropTargetHelper; // 成功
var d = (IDropTargetHelper)a; // 成功
640デフォルトの名無しさん:2012/12/30(日) 10:40:43.14
>>638
どういう事?
641デフォルトの名無しさん:2012/12/30(日) 10:56:06.96
(12.34 is int)はfalseだが(int)12.34は通るってことだろ
642デフォルトの名無しさん:2012/12/30(日) 12:49:40.32
C#4以降は暗黙の型変換と明示的な型変換とは別に代入変換なるものがあるらしいな
dynamic型を型付けされた変数に代入するときの変換は暗黙の変換とは違うとかなんとか
643デフォルトの名無しさん:2012/12/30(日) 12:58:41.39
>>641
あ、そうか
644ウンコ男:2012/12/30(日) 13:07:53.93
ネットから落としているファイルのダウンロードが終わったかどうか知るのに
なにかいい方法はないでしょうか?
今は当該ファイルにアクセスしてわざと例外を発生させて、その有無で
ダウンロードが終わったかどうか判断していますが
もっと、スマートな方法はないでしょうか?
645デフォルトの名無しさん:2012/12/30(日) 13:10:09.96
ダウンロード自体を自分でやる
C#でできるけどC#関係ないからやり方は自分で調べろ
646デフォルトの名無しさん:2012/12/30(日) 13:11:04.93
何使ってダウンロードしてるのか書かないと
FileSystemWatcherで監視したら?ぐらいしか言えない
647ウンコ男:2012/12/30(日) 13:16:27.42
Smiledownloaderを使用して、ニコ動やYoutubeの動画の
ダウンロードが終わったら、ffmegでmp3に次々変換というのをやりたいと思ってます。
648デフォルトの名無しさん:2012/12/30(日) 13:23:39.58
ロックの有無とかで分かるかもね
649デフォルトの名無しさん:2012/12/30(日) 13:31:16.15
>>647
法律川ったの知ってる?
650リリン:2012/12/30(日) 13:31:35.59 BE:157119236-PLT(45072)
    ∧_∧  ノロウイルス撒いてやんよ
   ( ・ω・)ノ>゚+。:.゚
   C□ / ゚。:.゚.:。+゚
   /  . |
   (ノ ̄∪
651デフォルトの名無しさん:2012/12/30(日) 13:34:49.58
>>650
反抗予告?通報余裕
652デフォルトの名無しさん:2012/12/30(日) 13:36:25.68
>>649
知ってます。でも法律に詳しい友達が大丈夫だって言ってました。
653デフォルトの名無しさん:2012/12/30(日) 13:42:04.62
法律家じゃなくて法律に詳しい・・・か
そんな装備で大丈夫か
654ウンコ男:2012/12/30(日) 15:59:00.18
これといった解答がなかった(誰も答えられなかった)
ということなので、最初からやっていた自分の方法が
スマートな方法だということで、これを続けたいと思います。
ありがとうございました。お騒がせしました。
655デフォルトの名無しさん:2012/12/30(日) 16:01:56.65
もう二度と来るなよ
656デフォルトの名無しさん:2013/01/01(火) 06:17:04.17
Shownイベントが発生する条件について教えてください。
Shownイベントはフォームが初めて表示されたときに発生するとありますが、
下記のコードでは2回目以降のShowDialogでShownイベントが起きません。
なにか間違いをおかしているのでしょうか?

List<Result>listResult = new List<Result>();
foreach (var item in query)
{
FrmAction frmAction = new FrmAction();
frmAction.Status = item.Status;
frmAction.ShowDialog(); //★2回目のループで、frmActionでShownイベントが起きない
listResult.Add(frmAction.Result);
frmAction.Dispose();
}
657デフォルトの名無しさん:2013/01/01(火) 07:42:53.08
どうShownをハンドルしているか分からないんですが
658デフォルトの名無しさん:2013/01/01(火) 09:01:41.05
>>657
イベントのハンドルはデザイナまかせです。
Shownイベントが起きないケースでもイベントはインスタンス時にハンドルされています。

class FrmAction : Form
{
private void InitializeComponent()
{
this.Shown += new System.EventHandler(this.FrmAction_Shown);
}
}
659デフォルトの名無しさん:2013/01/01(火) 09:15:48.54
>>658
> イベントのハンドルはデザイナまかせです。

> class FrmAction : Form
> {
> private void InitializeComponent()
> {
> this.Shown += new System.EventHandler(this.FrmAction_Shown);
> }
> }

デザイナ任せならコンストラクタには書かれないだろ

でまあ結局はここに書かれてないどこかで何かミスってるんだろう
660デフォルトの名無しさん:2013/01/01(火) 17:05:40.56
var sa = new string[] {"test", "test2", "tst"};
foreach (var s in sa.Where(_ => _.Length > 4))
{
Console.WriteLine(s);
}

こんな感じのコードを見たんですが、_(あんだーばー)ってどういう意味なんですか?
この場合はsaを意味してるみたいなんですが
661デフォルトの名無しさん:2013/01/01(火) 17:12:51.95
単なるラムダ式の仮引数
別にアンダーバーじゃなくちゃいけないわけじゃない
むしろそんな書き方するやつはあんまりいないと思う

文字列を想定するからsとか strとか使うけどまあなんでもいい
この場合sはもう使っちゃってるけど
662デフォルトの名無しさん:2013/01/01(火) 17:13:47.73
単なるラムダ式の引数名

_ => _.Length > 4

delegate(string _){ return _.Length > 4; }
663デフォルトの名無しさん:2013/01/01(火) 18:07:40.02
>>658
>Shownイベントが起きないケースでもイベントはインスタンス時にハンドルされています。
Shownイベントが起きないケースでもイベントハンドラは生成時に割り当てられています。
だよね
その事象が起きる最小限のコードを探す過程で解決すると思うよ
ここに来る前にそこまではして欲しい
664デフォルトの名無しさん:2013/01/01(火) 18:10:49.98
>>661
>>662
なるほど!記号だったので何か特別な意味があるのかと思ってしまいました
_だけの変数ってできたんですね
どうもありがとうございます!
665デフォルトの名無しさん:2013/01/01(火) 21:19:12.65
_は、見にくいし記号と間違えやすいので単独では使わないな…
ラムダ変数には、x,y,zあたりの1文字変数なら使う。
666デフォルトの名無しさん:2013/01/01(火) 21:40:58.61
アンダースコアって言えよ。
667デフォルトの名無しさん:2013/01/01(火) 21:46:46.08
Unicodeの定義ではLOW LINEな
668デフォルトの名無しさん:2013/01/01(火) 23:55:54.91
コンパイル通すのに形式的に必要なだけで、実際にはその引数使わない時にだけ _ 使うな…
669デフォルトの名無しさん:2013/01/02(水) 00:37:38.99
JIS X 0201だとアンダライン
670デフォルトの名無しさん:2013/01/02(水) 01:00:52.20
iと同義でよくoを使う。
671デフォルトの名無しさん:2013/01/02(水) 01:23:04.89
Visual C# 2010 Expless なのですが、正規表現がうまく動かず困っています

match = Regex.Match(text, "(.+) \((\d+)\)");

のようなことがやりたいのですが、\( も \d もコンパイルエラーとなり通りません。

match = Regex.Match(text, "(.+)\x28([0-9]+)\x29");

で回避したつもりだったんですが、1番目のMatchに"hogehoge("と"("まで取り込んでしまいます。

なにかおまじないというか設定が必要なのでしょうか?
672デフォルトの名無しさん:2013/01/02(水) 01:23:34.61
>>671
@
673デフォルトの名無しさん:2013/01/02(水) 01:24:26.51
@
674デフォルトの名無しさん:2013/01/02(水) 01:25:01.90
@
675デフォルトの名無しさん:2013/01/02(水) 01:25:27.65
>>671
@
676デフォルトの名無しさん:2013/01/02(水) 01:25:56.37
@
677671:2013/01/02(水) 01:28:41.05
なんてこった!

ありがとうございました_O_
678デフォルトの名無しさん:2013/01/02(水) 02:24:55.41
string u = "uma";
string s = u;

uが変更されたらsも同一の内容に自動で変わるようにするにはどうしたらいいんでしょうか
679デフォルトの名無しさん:2013/01/02(水) 02:34:28.01
>>678
クラス型でラップするとかどうだろう??
ジェネリックスで書いておくとつぶしが利くよ。
680デフォルトの名無しさん:2013/01/02(水) 02:39:39.12
>>678
StringBuilderでどう?
681デフォルトの名無しさん:2013/01/02(水) 02:50:25.36
それインスタンスが一緒だから大丈夫じゃね
逆に連動させないコピーはCopyToがいるはず
682デフォルトの名無しさん:2013/01/02(水) 02:54:49.31
何言ってんだこいつ。
683デフォルトの名無しさん:2013/01/02(水) 03:11:00.76
    private string u; // 使用しない
public string s;

public string U // u の読み書きはこっちを使う
{
get
{
return u;
}
set
{
u = s = value;
}
}
684デフォルトの名無しさん:2013/01/02(水) 03:12:32.34
寝ぼけてた。stringをただのクラスに見間違えるとかないわ。
アクセサーでやればいいんじゃね。
string _u, s;
string u{ set{ _u =value; s= value ;} get;}みたいな感じで。
685デフォルトの名無しさん:2013/01/02(水) 03:25:50.18
あなた眠いのよ…
string u{ set{ s = value; } get{ return s; } }
686デフォルトの名無しさん:2013/01/02(水) 03:50:46.29
つまんねー自演でごまかすなよカス
687デフォルトの名無しさん:2013/01/02(水) 04:12:48.77
           ____
  .ni 7      /ノ   ヽ\   壁に向かってしゃべってろゴミ
l^l | | l ,/)   / /゚ヽ  /゚ヾ\      .n
', U ! レ' / /   ⌒   ⌒  \   l^l.| | /)
/    〈 |  (____人__)  |   | U レ'//)
     ヽ\    |lr┬-l|   /  ノ    /
 /´ ̄ ̄ノ    ゙=ニ二"   \rニ     |
688デフォルトの名無しさん:2013/01/02(水) 09:42:50.56
正月早々無様な奴だな
お前ゴキブリみたいな人生だろ
689デフォルトの名無しさん:2013/01/02(水) 11:25:35.21
自己紹介乙w
690デフォルトの名無しさん:2013/01/02(水) 14:42:08.23
匿名で恥じかいたくらいで随分動揺してるな
正月くらいもちつけ
691デフォルトの名無しさん:2013/01/02(水) 14:49:47.76
           ____
  .ni 7      /ノ   ヽ\   壁に向かってしゃべってろゴミ
l^l | | l ,/)   / /゚ヽ  /゚ヾ\      .n
', U ! レ' / /   ⌒   ⌒  \   l^l.| | /)
/    〈 |  (____人__)  |   | U レ'//)
     ヽ\    |lr┬-l|   /  ノ    /
 /´ ̄ ̄ノ    ゙=ニ二"   \rニ     |
692デフォルトの名無しさん:2013/01/02(水) 14:50:26.68
おまえこそ、そのくだらないAAをちらしの裏にでも書いてろゴミ
693デフォルトの名無しさん:2013/01/02(水) 15:01:27.33
超絶敷居の低いC#すら覚えられない腐れかかった脳みそだからってイライラすんなよ
694デフォルトの名無しさん:2013/01/02(水) 15:02:49.77
IDでねえしなんとも思わないだろ
695デフォルトの名無しさん:2013/01/02(水) 15:06:32.05
678 名前:デフォルトの名無しさん[sage] 投稿日:2013/01/02(水) 02:24:55.41
string u = "uma";
string s = u;

uが変更されたらsも同一の内容に自動で変わるようにするにはどうしたらいいんでしょうか


681 名前:デフォルトの名無しさん[sage] 投稿日:2013/01/02(水) 02:50:25.36
それインスタンスが一緒だから大丈夫じゃね
逆に連動させないコピーはCopyToがいるはず
696デフォルトの名無しさん:2013/01/02(水) 15:16:29.93
678 名前:デフォルトの名無しさん[sage] 投稿日:2013/01/02(水) 02:24:55.41 ID:96QNQ03l0
string u = "turi";
string s = u;

uが変更されたらsも同一の内容に自動で変わるようにするにはどうしたらいいんでしょうか

681 名前:デフォルトの名無しさん[sage] 投稿日:2013/01/02(水) 02:50:25.36 ID:yYj7fn39P
それインスタンスが一緒だから大丈夫じゃね
逆に連動させないコピーはCopyToがいるはず

682 名前:デフォルトの名無しさん[sage] 投稿日:2013/01/02(水) 02:54:49.31 ID:yYj7fn39P
何言ってんだこいつ。

684 名前:デフォルトの名無しさん[sage] 投稿日:2013/01/02(水) 03:12:32.34 ID:yYj7fn39P
寝ぼけてた。stringをただのクラスに見間違えるとかないわ。
アクセサーでやればいいんじゃね。
string _u, s;
string u{ set{ _u =value; s= value ;} get;}みたいな感じで。

685 名前:デフォルトの名無しさん[sage] 投稿日:2013/01/02(水) 03:25:50.18 ID:yYj7fn39P
あなた眠いのよ…
string u{ set{ s = value; } get{ return s; } }
697デフォルトの名無しさん:2013/01/02(水) 15:17:08.53
なんだよこの自演は
698デフォルトの名無しさん:2013/01/02(水) 15:38:10.65
ちょ、ID何それ
699デフォルトの名無しさん:2013/01/02(水) 15:48:06.87
キャーコアイ
700デフォルトの名無しさん:2013/01/02(水) 18:31:14.17
>>695-699
           ____
  .ni 7      /ノ   ヽ\   ID偽造までして くやしいのぉ くやしいのぉ
l^l | | l ,/)   / /゚ヽ  /゚ヾ\      .n
', U ! レ' / /   ⌒   ⌒  \   l^l.| | /)
/    〈 |  (____人__)  |   | U レ'//)
     ヽ\    |lr┬-l|   /  ノ    /
 /´ ̄ ̄ノ    ゙=ニ二"   \rニ     |
701デフォルトの名無しさん:2013/01/02(水) 18:49:21.59
マンガ脳の恐怖、まで読んだ。
702デフォルトの名無しさん:2013/01/02(水) 19:08:43.33
>>695-699 ←マンガ脳
703デフォルトの名無しさん:2013/01/03(木) 02:40:09.58
コントロールの背景色を変更するときに
コントロール上に描画される線や文字などが見えにくくならないように
色を選ぶための一般的な方法はどんなのがありますか?
704デフォルトの名無しさん:2013/01/03(木) 02:44:01.04
要するに色々と背景色を設定したいので、
それに応じて見やすい前景色を勝手に選んでくれるような仕組みが欲しいです。
705デフォルトの名無しさん:2013/01/03(木) 03:52:52.56
BackColorChangedで背景色を反転させた色を取得して設定してやればいいだけだろ
706デフォルトの名無しさん:2013/01/03(木) 03:57:07.69
R ^= 0xFF;
G ^= 0xFF;
B ^= 0xFF;
707デフォルトの名無しさん:2013/01/03(木) 04:14:35.00
役にたたねー能書きはいいんだよ
コピペで動くレベルのコードで示せカス
708デフォルトの名無しさん:2013/01/03(木) 04:46:51.96
>>707
using System;
namespace ch2{
 static class Program {
  [STAThread]
  static void Main() {
   Console.WriteLine("死ねカス");
  }
}
709デフォルトの名無しさん:2013/01/03(木) 04:46:59.40
private void hoge_BackColorChanged(object sender, EventArgs e)
{
var red = hoge.BackColor.R;
var green = hoge.BackColor.G;
var blue = hoge.BackColor.B;

red ^= 0xFF;
green ^= 0xFF;
blue ^= 0xFF;

hoge.ForeColor = Color.FromArgb(red, green, blue);
}
710デフォルトの名無しさん:2013/01/03(木) 04:47:19.71
これのIDも見たいっす
711デフォルトの名無しさん:2013/01/03(木) 04:56:03.86
>>706>>709
R=0x7F,G=0x7F,B=0x7F
712デフォルトの名無しさん:2013/01/03(木) 05:08:43.37
private void hoge_BackColorChanged(object sender, EventArgs e)
{
var red = hoge.BackColor.R;
var green = hoge.BackColor.G;
var blue = hoge.BackColor.B;

red ^= 0xFF; // 0x7F?
green ^= 0xFF; // 0x7F?
blue ^= 0xFF; // 0x7F?

hoge.ForeColor = Color.FromArgb(red, green, blue);
}

private void hoge_Click(object sender, EventArgs e) // TestClick
{
Random r = new Random();
hoge.BackColor = Color.FromArgb(r.Next(0, 255), r.Next(0, 255), r.Next(0, 255));
}
713デフォルトの名無しさん:2013/01/03(木) 05:31:58.27
private void hoge_BackColorChanged(object sender, EventArgs e)
{
var red = hoge.BackColor.R;
var green = hoge.BackColor.G;
var blue = hoge.BackColor.B;

red ^= 0xFF;
green ^= 0xFF;
blue ^= 0xFF;

hoge.ForeColor = Color.FromArgb(red, green, blue);

hoge.Text = hoge.BackColor.R + " " + hoge.BackColor.G + " " + hoge.BackColor.B
+ " / " + hoge.ForeColor.R + " " + hoge.ForeColor.G + " " + hoge.ForeColor.B;
}

private void hoge_Click(object sender, EventArgs e)
{
var random = new Random();
hoge.BackColor = Color.FromArgb(random.Next(0, 255), random.Next(0, 255), random.Next(0, 255));
}
714デフォルトの名無しさん:2013/01/03(木) 05:40:31.18
>713
hoge.Text = hoge.BackColor.R + " " + hoge.BackColor.G + " " + hoge.BackColor.B
+ " / " + (255 - hoge.ForeColor.R) + " " + (255 - hoge.ForeColor.G) + " " + (255 - hoge.ForeColor.B);
715デフォルトの名無しさん:2013/01/03(木) 05:43:17.14
○ 0xFF
× 0x7F
716デフォルトの名無しさん:2013/01/03(木) 05:58:55.65
ヒント:マスクの数値の事じゃない
717デフォルトの名無しさん:2013/01/03(木) 06:02:20.14
718デフォルトの名無しさん:2013/01/03(木) 06:05:23.48
お役に立てて光栄です
719デフォルトの名無しさん:2013/01/03(木) 06:20:43.29
>>710

>>696
>678 名前:デフォルトの名無しさん[sage] 投稿日:2013/01/02(水) 02:24:55.41 ID:96QNQ03l0
>string u = "turi"; ←←←
720デフォルトの名無しさん:2013/01/03(木) 07:33:06.80
これも釣りっすか?
721デフォルトの名無しさん:2013/01/03(木) 09:06:13.43
非同期処理でThreadクラスかTask.Factoryのどっちを使うのがいいですか?
722デフォルトの名無しさん:2013/01/03(木) 10:08:41.67
>>721
常駐したりSetApartmentStateする場合はThread使うかな
723デフォルトの名無しさん:2013/01/03(木) 10:24:50.23
Task.FactoryではSTAに設定したり出来ないんですか?
724デフォルトの名無しさん:2013/01/03(木) 11:52:15.48
できないね
カスタムのTaskSchedulerを作れば不可能ではないけど
725名無し募集中。。。:2013/01/03(木) 12:27:19.21
ParameterizedThreadStart(button1_Click)はなぜだめなんでしょうか?
726デフォルトの名無しさん:2013/01/03(木) 13:26:38.94
よくもこんなレベルでry
もっと先に基本的なry
727デフォルトの名無しさん:2013/01/03(木) 13:27:56.88
これだからC#のPGもどきはry
728デフォルトの名無しさん:2013/01/03(木) 13:36:32.41
>>721
常駐系か、投げ捨てかによる。
Threadを使うには、それなりのスレッド作成コストが掛かる。
数分程度で終わるような処理(Webアクセス等)ならTaskで十分。
アプリケーション起動から終了までバックグラウンドで常駐してるようなスレッドならThread。
もしくは、STAしたいならThread。
729デフォルトの名無しさん:2013/01/03(木) 14:00:46.75
ありがとうございました。
730デフォルトの名無しさん:2013/01/03(木) 14:52:25.02
ものすごい長い行のコードを
匿名メソッドやラムダ式で書くのってどうですか?
そういうのはやっぱり独立した関数として書きますか?
会社でそういう長文ラムダとか関数の引数とかに書いたりしたら
怒られますか?
731デフォルトの名無しさん:2013/01/03(木) 14:53:33.41
会社で聞けよ
732デフォルトの名無しさん:2013/01/03(木) 15:10:17.40
amazonのAPIをC#で叩く方法について詳しいかたはいらっしゃいませんか?
APIで取得するxmlには
<FormattedPrice>\ 92,799</FormattedPrice>
しかありません。

dyson ball DC46MHCOM
参考価格: \ 92,799
価格: \ 68,902

この68,902を得る方法をここで質問してよいでしょうか?
733デフォルトの名無しさん:2013/01/03(木) 15:11:57.50
1週間働くと得られる気がする
734デフォルトの名無しさん:2013/01/03(木) 15:43:22.96
最低賃金のお前らじゃ一週間では無理
735デフォルトの名無しさん:2013/01/03(木) 16:06:01.70
ものすごく長いという時点でメソッドを分割すべきだろ。
736デフォルトの名無しさん:2013/01/03(木) 16:09:31.17
ワロタ
737デフォルトの名無しさん:2013/01/03(木) 16:34:10.62
>>734
ニートのお前じゃ死ぬまでかかっても無理
738デフォルトの名無しさん:2013/01/03(木) 16:51:03.44
効いてる効いてる()
739デフォルトの名無しさん:2013/01/03(木) 16:56:01.85
効いてる効いてる()
740デフォルトの名無しさん:2013/01/03(木) 17:15:53.38
>>728
コストコストってまぁよく言うけどさ、
高い低いって抽象的だよね
もっと具体的かつ直感的な単位ってないの?

ちなみに俺のイメージだとスレッド生成コストはnewの300倍、Sandy世代で20msぐらいかな
741デフォルトの名無しさん:2013/01/03(木) 18:18:16.70
いくらコストが高いっていってもmsオーダーの時間が掛かるわけがないw
742デフォルトの名無しさん:2013/01/03(木) 18:35:51.60
はやっ!
コスト高いってもその程度と思っておけばいいのね
743デフォルトの名無しさん:2013/01/03(木) 18:39:23.97
すいませんでした。
744デフォルトの名無しさん:2013/01/03(木) 18:45:49.88
C#tとHSPどっち学ぼうか迷ってるんですが
どっちがいいでしょうか
745デフォルトの名無しさん:2013/01/03(木) 18:52:51.39
何を作りたいんだ?
746デフォルトの名無しさん:2013/01/03(木) 19:12:36.99
言語には向き不向きがあるからこんなにたくさんの言語が夜に出回ってるんだ
747デフォルトの名無しさん:2013/01/03(木) 19:15:05.59
特に目的もなくなんとなくプログラミングしてみたいならC#だろう
ただ、目的もなくプログラミング始めるのはおすすめしないけどな
748デフォルトの名無しさん:2013/01/03(木) 21:16:22.15
Windowsストアアプリを作ってるんだが、
XMLファイルの読み込みってどうやるの?
749デフォルトの名無しさん:2013/01/03(木) 21:16:59.53
750デフォルトの名無しさん:2013/01/03(木) 21:18:28.29
ググレカス
751デフォルトの名無しさん:2013/01/03(木) 21:47:21.96
普通にSystem.Xml.Linqでいいんじゃね
752デフォルトの名無しさん:2013/01/03(木) 22:24:54.60
何も考えずにちょっとした趣味のゲーム作るならHSP
ちょっと本格的なものを作るならC#

HSPなんか覚えたところで世の中じゃ通用しないからな。
RPGツクールなんかと同じような位置付けだろうHSPって。
753デフォルトの名無しさん:2013/01/03(木) 22:29:13.27
実際にモノを作るとなるとHSPって全然簡単じゃないぞ? C#の方がよっぽど簡単だわ。
あんな低レベルなもん使えるか
754753:2013/01/03(木) 22:31:03.14
抽象化されてなくて記述の粒度が小さいって意味の低レベルな。念のため。
755デフォルトの名無しさん:2013/01/03(木) 22:37:19.76
>>754
オブジェクト指向だとかクラスライブラリの理解を抜きにして
とりあえず何か作るなら、そこらへん対して理解せずに書けるHSPのほうが面倒ではあっても、簡単かもしれない。
逆にオブジェクト指向とか理解できているならHSPは、低レベルすぎて使いにくいので難しく感じるだろう。
756デフォルトの名無しさん:2013/01/03(木) 22:43:55.43
難しいんじゃなくて面倒なだけじゃね?
757デフォルトの名無しさん:2013/01/03(木) 22:44:33.81
ほんとにプログラミング初めての人が基礎中の基礎を学ぶにはいいかもね。
ただそれを終えたらHSPで何か実用的なものを作ろうとは考えないでC系に行ったほうがいいな。
苦労して身に付くのは変な癖だけ。
758デフォルトの名無しさん:2013/01/04(金) 00:05:21.78
>>757
それなら、C#をコンソールで使った方がいいと思う。
759デフォルトの名無しさん:2013/01/04(金) 00:10:16.34
ならPythonとかRubyとかPerlとかでよくね
760デフォルトの名無しさん:2013/01/04(金) 00:28:07.56
ならこのスレでやらなくてよくね
761デフォルトの名無しさん:2013/01/04(金) 00:38:14.63
Perlとか余計、変な癖が付くだろw
762デフォルトの名無しさん:2013/01/04(金) 01:44:58.84
お前らの存在そのものが変な癖だから余計な心配スンナ
763デフォルトの名無しさん:2013/01/04(金) 02:25:56.16
その文体がな
764デフォルトの名無しさん:2013/01/04(金) 07:37:53.32
2chはシーア派だからなぁ
765デフォルトの名無しさん:2013/01/04(金) 11:44:55.90
ストアアプリってリソースの読み込みは非同期じゃなきゃいけないの?

同期的にXMLファイルを読み込みたいんだができない・・・
766デフォルトの名無しさん:2013/01/04(金) 12:04:39.69
await使えば同期と大差なく書けるんだし
767デフォルトの名無しさん:2013/01/04(金) 12:10:56.83
同期を非同期にしたいんじゃなくて、非同期を同期にしたい感じ
768デフォルトの名無しさん:2013/01/04(金) 12:25:56.61
知らんがな
769デフォルトの名無しさん:2013/01/04(金) 12:51:53.87
お前らマジで役に立たんな
770デフォルトの名無しさん:2013/01/04(金) 13:23:55.44
>同期を非同期にしたいんじゃなくて、非同期を同期にしたい感じ
これが聞きたいんだろ

>ストアアプリってリソースの読み込みは非同期じゃなきゃいけないの?
なんでこんな前振り必要なわけ?
馬鹿なりに見栄はってんの?www
771デフォルトの名無しさん:2013/01/04(金) 13:41:43.82
日ごろリアルで蔑まれてるここの方たちは色々と神経が過敏になってるんですよ
慎重に扱わないと答えてもらえませんよ
772デフォルトの名無しさん:2013/01/04(金) 14:19:42.20
非同期で開始してすぐに完了まで待てば同期と同じじゃね
773デフォルトの名無しさん:2013/01/04(金) 14:30:31.37
ストアアプリってUIスレッドをブロックしたら問答無用で死刑じゃなかったっけ?
ワーカースレッドでやるんならawait使えば同期と何も変わらんし
774デフォルトの名無しさん:2013/01/04(金) 14:35:36.79
t.wait();

何時まで経っても戻って来ません\(^o^)/オワタ


こうなるんだろ?
775デフォルトの名無しさん:2013/01/04(金) 15:53:21.88
つーかそもそも非同期ではなく同期でやって審査通るのか?
776デフォルトの名無しさん:2013/01/04(金) 16:50:12.12
MonaフォントってC#で使えんのかね
InstalledFontCollectionには出てこない・・・メモ帳だと選べるんだけどな
PrivateFontCollectionで読み込もうとしてもエラーを吐く
777デフォルトの名無しさん:2013/01/04(金) 20:26:31.93
メトロアプリで同じリソースの音を重ねて再生する方法を教えてくれ
778デフォルトの名無しさん:2013/01/04(金) 20:46:36.49
メトロはなかった
779デフォルトの名無しさん:2013/01/04(金) 22:53:15.04
VS Expressはキーボードマクロとか使えないんですか?
780デフォルトの名無しさん:2013/01/04(金) 22:57:13.98
いつものすごい人が明日解決してくれると信じて待つか、今日はダメそうだな
781デフォルトの名無しさん:2013/01/04(金) 23:30:28.55
>>780
うるせえカスきえろ
782デフォルトの名無しさん:2013/01/05(土) 00:13:52.84
答える気ないのが偉そうにするのなんで
783デフォルトの名無しさん:2013/01/05(土) 00:26:28.35
そういう方法でしか自分のアイデンティティが保てないから
784デフォルトの名無しさん:2013/01/05(土) 00:46:16.26
>>780
ボロクソいわれてんなww
785デフォルトの名無しさん:2013/01/05(土) 01:08:53.22
Fuck fuck = new Fuck;
786デフォルトの名無しさん:2013/01/05(土) 01:10:28.41
()がない、コンパイルエラー。
787デフォルトの名無しさん:2013/01/05(土) 01:23:24.48
コンストラクタの()って無駄だよな
属性の()は省略できるんだから省略できてもいいのに
788デフォルトの名無しさん:2013/01/05(土) 01:26:29.69
属性はともかく、コレクション初期化子
789788:2013/01/05(土) 01:31:07.11
すまん
コレクション初期化子やオブジェクト初期化子でも括弧は省略できるんだから
もう一貫性という意味では>>785を許さない方が不自然だと思う
特に構文上の曖昧さもないはずだし、特に分かりにくくなるとも思えないし
790デフォルトの名無しさん:2013/01/05(土) 01:43:58.80
引数ありのときとなしのときで一貫性がなくなる
791デフォルトの名無しさん:2013/01/05(土) 02:33:46.71
デリゲードとメソッド呼び出しの区別が付かなくなるとかじゃないのか?
void hoge();があったとしたら、hogeならデリゲードを指すし、
hoge()ならhogeメソッドの呼び出すを指すから、()の省略は、できないんじゃないかと。

ただ、コンストラクタに関しては、省略できても良さそうな気もするけど。
792デフォルトの名無しさん:2013/01/05(土) 02:50:21.74
メソッド呼び出しでの括弧省略は確かに曖昧になるケースがありそうだけど
newの右に必ず型がくるのは決まってるからな
今やC#にいくつかあるコンストラクタ呼び出しの構文の中で空括弧省略できないのは785だけで、逆に例外になってる
793デフォルトの名無しさん:2013/01/05(土) 02:52:26.02
どうでもいい
794デフォルトの名無しさん:2013/01/05(土) 04:50:33.25
newの右カッコを省略可能にしてしまうと
public class Hoge
{
 public void Method() { }
}
のMethodを呼ぶときに

1) new Hoge().Method();
2) new Hoge.Method();

と書ける事になってしまい、ぱっと見でメソッドを呼んでるのかインナークラスを初期化しているのかわからなくなる。
795デフォルトの名無しさん:2013/01/05(土) 06:37:36.17
カスどもが言語仕様をうんぬんしてるんじゃねーよ
黙ってコード書け黙って
796デフォルトの名無しさん:2013/01/05(土) 09:19:49.66
()省略したい奴はvbやれよ
addressofとか素敵な演算子があるぞ
797デフォルトの名無しさん:2013/01/05(土) 11:19:24.99
ifの括弧省略する奴もゆるせない
if(true)
textbox1.txt = "YAMERO";

みたいなやつ
798デフォルトの名無しさん:2013/01/05(土) 11:21:19.09
799デフォルトの名無しさん:2013/01/05(土) 11:34:57.52
新参は荒らす前にゴキブリ人生さんに挨拶しとけよ
800デフォルトの名無しさん:2013/01/05(土) 13:14:46.45
>>799
ゴキブリ人生さんこんにちはw
801デフォルトの名無しさん:2013/01/05(土) 13:40:14.82
>>797
そういうのは一般にぶら下がりって言うんだよ。
煽るつもりはないが、そんな表現も知らないようじゃ他人の書き方に文句付けるレベルじゃないんじゃないの
802デフォルトの名無しさん:2013/01/05(土) 13:46:45.38
知ってるから言ってんだろカス
803デフォルトの名無しさん:2013/01/05(土) 14:21:46.43
ニートのお前らは知らないだろうけど、
大体コーディング規約で一行でも{}付けるところが多い
804デフォルトの名無しさん:2013/01/05(土) 14:32:26.68
チームとかプロジェクトのコーディング規約に従っておけば良いだけだろ。
まさかそこらへんのググったサンプルコードとかオープンソースに文句いってんじゃないだろうな?
805デフォルトの名無しさん:2013/01/05(土) 14:34:24.21
切れ芸なのこの人?
806デフォルトの名無しさん:2013/01/05(土) 15:33:04.99
>>803
あるね
ifに後から行追加する時にバクる可能性があるとかなんとか
807デフォルトの名無しさん:2013/01/05(土) 15:38:49.48
{}書かないときは1行で書くわ。
引数のnullチェックするくらいで{}書いたり改行してられるか。
808デフォルトの名無しさん:2013/01/05(土) 15:39:49.88
1行で書くならいいだろう
>>797みたいに改行してるのに括弧付けないのが質悪い
809デフォルトの名無しさん:2013/01/05(土) 15:54:50.72
コード書くのなんて開発工程全体から見たら微々たる時間なのに{}を省略するほど時間惜しむって短気だな
810デフォルトの名無しさん:2013/01/05(土) 17:16:20.07
おれのところは仕様決定・設計・コーディング・テストが一体となってるから!
811デフォルトの名無しさん:2013/01/05(土) 17:52:42.36
+自宅警備だろ
812デフォルトの名無しさん:2013/01/05(土) 17:56:11.14
>>810
設計書がEXCELだったりします?
813デフォルトの名無しさん:2013/01/05(土) 18:14:51.79
>>812
PowerPointで作れと言われるよりはマシ
814デフォルトの名無しさん:2013/01/05(土) 22:14:37.27
>>809
横からだけど、
俺は短気っていうか、ブーリアンで処理できるので理解しやすい。と思ってるよ。
815デフォルトの名無しさん:2013/01/05(土) 22:20:53.13
>>809
ぶら下がりは別に{}を省略してるわけじゃない。
それとも君は全部の行を{}で囲むの?
816デフォルトの名無しさん:2013/01/05(土) 22:24:22.30
改行してるのに{}省略されるとifって名前の()メソッドを実行してるかのように見えるんだよ
817デフォルトの名無しさん:2013/01/05(土) 22:27:22.01
眼科いけ
818デフォルトの名無しさん:2013/01/05(土) 22:30:04.36
if($flg)
$i++;

↑$flgがtrueだったら$iインクリ

it($flg);
$i++;

↑itメソッドに$flg引数を渡して実行
その後$iをインクリ

わかりづらいだろ
819デフォルトの名無しさん:2013/01/05(土) 22:38:23.10
意図的だから間違えても問題ない
820デフォルトの名無しさん:2013/01/05(土) 22:53:19.35
なんの言語だよ
C#スレだぞ
821デフォルトの名無しさん:2013/01/05(土) 23:13:08.15
>>816
だから省略じゃないってば...
822デフォルトの名無しさん:2013/01/05(土) 23:25:14.74
でもC#の一般的な改行とインデントって一貫性がないよな
if (cond)
{
 body;
}
文法的にはブロックはステートメントに相当するので、これが括弧無しなら本来
if (cond)
body;
になるのが自然なはず
if (cond)
 body;
つまりこれは括弧を省略してると考えないとおかしい
823デフォルトの名無しさん:2013/01/05(土) 23:36:24.66
if (cond)
 body;

は気持ち悪いけど、

if (cond) body;

は普通に使うよね?
824デフォルトの名無しさん:2013/01/05(土) 23:37:26.00
俺は使わないけど下のほうなら許せる
825デフォルトの名無しさん:2013/01/05(土) 23:59:46.57
if (cond)
{
 body;
}
の形式でやってるといちいち長くなるから>>823の上にしたくなるのもわかるけどな
if (cond) {
 body;
}
このスタイルなら絶対括弧書くけど
826デフォルトの名無しさん:2013/01/06(日) 00:00:00.88
またこの流れかよ、いい加減にしろ
827デフォルトの名無しさん:2013/01/06(日) 02:23:35.25
ホントにLinuxのソースコードって糞だよな
誰か文句付けて来いよ
ttp://lxr.linux.no/linux+v3.7.1/kernel/debug/kdb/kdb_bp.c
828デフォルトの名無しさん:2013/01/06(日) 04:02:26.18
C#の人たちってUNIX C言語とか全然経験無いのかな?
MSの言語だからしょうが無いのかもしれないけど
世界が狭すぎ何じゃね?C言語で書かれた有名なソースコード
沢山読んでたら
if(expression)
   statement;
なんていくらでも出てくるだろう?
if(expression) statement;
なんて制御構造が分かり難いから普通は避けるだろうに。

いや、初心者スレだから{}は省略するなってのは良いと思うけど
大人のコーディングにそれを当てはめるのは恥ずかしすぎだぞ
829デフォルトの名無しさん:2013/01/06(日) 05:27:14.45
>C#の人たちってUNIX C言語とか全然経験無いのかな?

キモいウザい出てけ
830デフォルトの名無しさん:2013/01/06(日) 05:48:13.90
>>828
郷に入っては郷に従えだよ
ifのコードスニペットはBSDスタイルだよ
831デフォルトの名無しさん:2013/01/06(日) 06:38:39.94
大人のコーディングWWWWWWWWWWWWWWWWWWWWWWWWW
832デフォルトの名無しさん:2013/01/06(日) 06:45:22.66
>>828
大人のコーディングとやらの狭い世界で語ってろよw
833デフォルトの名無しさん:2013/01/06(日) 06:54:41.07
if (>>828 == Masturbation) return;
else return;
834デフォルトの名無しさん:2013/01/06(日) 08:31:21.27
一貫性のない書き方を大人のコーディングって言うんですね
835デフォルトの名無しさん:2013/01/06(日) 09:21:46.93
大人のコーディング、頂きました
836デフォルトの名無しさん:2013/01/06(日) 10:31:50.75
お と な の コ ー デ ィ ン グ wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
837デフォルトの名無しさん:2013/01/06(日) 10:52:13.46
いいからお前らはポケモン見てろ
838デフォルトの名無しさん:2013/01/06(日) 11:46:26.19
>>828
それらが書かれた時期にもよるんだろ。
最近ではそう言った書き方が敬遠される傾向にあるから、新規に書く場合はそれに倣ってるだけだよ。
コーディング規約に逆らっても意味ないどころか、書き直しになるし。

新人除けば、C# やってる人でそれしかやったことないのってあんまりいないと思う。
839デフォルトの名無しさん:2013/01/06(日) 11:50:15.12
馬鹿
「一貫性があって良い!」
for( ;;){
 if(a == 1)
 {
   break;
 }
 if(b == 1)
 {
   break;
 }

一般人
「ウゼー」
840デフォルトの名無しさん:2013/01/06(日) 12:03:44.37
>for( ;;){
これも
for( ;;)
{
こうだろ
本人が見やすい方でいいじゃない
841デフォルトの名無しさん:2013/01/06(日) 12:07:16.72
VS使ってないなら知らんがVS使ってるならフォーマット機能あるんだから
多少のことは、どうでもいいけどな。クラス変数とかグローバル変数が aaa とかふざけた名前とかでなければどうでもいいだろ。
842デフォルトの名無しさん:2013/01/06(日) 12:29:46.30
なぜ年寄りはswitch文が嫌いなのか
843デフォルトの名無しさん:2013/01/06(日) 12:32:49.59
switch文はなにかがおかしいよな
最適化のためって理屈ついてるけど別にifelse連発でも最適化は出来るし
なんか感じ良さそうに見えるからみんな使うけど実際使うとあんまり便利でもない
844デフォルトの名無しさん:2013/01/06(日) 12:35:30.18
ジャンプテーブル最適化があるだろ
そりゃ頑張って解析すればifelseでもできないはずはないけど少なくともcscはやってない
845デフォルトの名無しさん:2013/01/06(日) 12:36:15.89
switch文は長くなりがちだからな。
中にダラダラ書かずに簡潔にまとめられれば別にいいけど。
846デフォルトの名無しさん:2013/01/06(日) 12:49:30.12
COBOL云々の話が出てこないあたり、
やっぱりニートや低学歴が多いのか最近は
847デフォルトの名無しさん:2013/01/06(日) 12:53:28.29
まずおまえはスレタイを100回ほど読み直したほうがいい。
848デフォルトの名無しさん:2013/01/06(日) 13:07:48.44
>>846がニートと低学歴という言葉にコンプレックス持っててまわりが見えてないおっさんだということはわかった
849デフォルトの名無しさん:2013/01/06(日) 13:32:18.12
switchはstringとかでも使えればな
850デフォルトの名無しさん:2013/01/06(日) 13:34:43.41
>>849
C#誕生当初から使えるぞ
Javaでも使えるようになった
851デフォルトの名無しさん:2013/01/06(日) 13:38:24.70
大人のコーディングなめんなよ
852デフォルトの名無しさん:2013/01/06(日) 14:35:12.57
お前らとswitchは使いようってよくいうだろ
853デフォルトの名無しさん:2013/01/06(日) 14:40:22.33
>>825
エディタが上を強要してくるから困る

>>839
俺は break; とかは一行で書くけど { } を付ける派だな
if (a == 1) { break; }
854デフォルトの名無しさん:2013/01/06(日) 14:45:01.54
{ }をつけて一行で書くのが一番収まりがいいよ
かっこつけろ派からも一行で書け派からも文句が出ないし
855デフォルトの名無しさん:2013/01/06(日) 14:45:09.00
VSってifのスタイル切り替えれなかったっけ?
856デフォルトの名無しさん:2013/01/06(日) 14:47:33.43
ぎっしり詰められても見にくいんだよな
857デフォルトの名無しさん:2013/01/06(日) 14:49:36.00
{ }付けてまで一行に納めるぐらいなら改行したほうが良いはず
858デフォルトの名無しさん:2013/01/06(日) 14:52:20.06
VSにかぎらずたいていのIDEでコードフォーマットの設定はできます
859デフォルトの名無しさん:2013/01/06(日) 14:54:22.44
なんでや・・・
860デフォルトの名無しさん:2013/01/06(日) 15:07:15.31
VSのK&Rスタイルサポートって微妙に不完全でおかしくなることがあるんだよな
デフォルト一択
861デフォルトの名無しさん:2013/01/06(日) 15:09:08.46
>>858
xcodeの悪口はもっと言え
862デフォルトの名無しさん:2013/01/06(日) 15:53:13.36
if の {} は平気で省略するのに for や whle のは省略できない。ふしぎ!
863デフォルトの名無しさん:2013/01/06(日) 15:57:52.34
ループの本体が一行なんてめったにないから
たまに一行のときがあっても省略に抵抗を感じるのはごく自然なことだと思います
864デフォルトの名無しさん:2013/01/06(日) 16:22:29.16
for (var i = 0; i < 1; ++i) --i;
while (true) new Form().Show();
865デフォルトの名無しさん:2013/01/06(日) 16:25:29.72
if (true) if (true) if (true) if (true) if (true) if (true) if (true) if (true) { }
866デフォルトの名無しさん:2013/01/06(日) 16:31:42.75
foreach (var item in items) items.Add(item);
867デフォルトの名無しさん:2013/01/06(日) 16:33:39.86
何が面白いのかねえ
868デフォルトの名無しさん:2013/01/06(日) 16:34:24.95
プログラミングジョークはめったに伝わらないな
869デフォルトの名無しさん:2013/01/06(日) 16:37:50.86
何か言わなきゃ気がすまない、精神不安定な馬鹿が反応するのが面白い。
870デフォルトの名無しさん:2013/01/06(日) 17:07:32.18
PCから出てる音を録音するにはどうしたらいいでしょうか?
ヒントください
871デフォルトの名無しさん:2013/01/06(日) 17:09:53.79
音声のINとOUTをケーブルで繋ぐ
872デフォルトの名無しさん:2013/01/06(日) 17:10:48.76
ググる
873デフォルトの名無しさん:2013/01/06(日) 17:11:02.22
そんな方法しか知らないのですか?
874デフォルトの名無しさん:2013/01/06(日) 17:11:04.44
switch使うぐらいならロジックを工夫してswitchを
使わなくても読みやすいコードにするわな。
875デフォルトの名無しさん:2013/01/06(日) 17:52:24.58
普通に使うだろswitch
876デフォルトの名無しさん:2013/01/06(日) 18:00:01.19
switchを避けろ(替わりに多態を使え)って話は初心者向けのOOPの本の定番ネタだけど、
正直あれは羹に懲りて膾を吹く感があり過ぎるね。
877デフォルトの名無しさん:2013/01/06(日) 18:01:45.28
・・・にこりて・・・をふく・・・
878デフォルトの名無しさん:2013/01/06(日) 18:07:39.84
「羹に懲りて膾を吹く」
この諺は初めて知った。少し得した気分だ。
879デフォルトの名無しさん:2013/01/06(日) 18:12:14.10
そんな下らないこと書くと「ド低能」って煽られて損した気分になるよ?
880デフォルトの名無しさん:2013/01/06(日) 18:13:45.25
割と有名なのだから、得意げに外でいうなよ
881デフォルトの名無しさん:2013/01/06(日) 18:16:16.49
初心者にアドバイスするなら
多態を避けろ
switchも避けろ
ifを使え
だな

if(obj is TypeA){}
else if(obj is TypeB){}...

っていうのと
obj.VirtualMethod(...)

っていうのじゃ参照の方向が逆だから非常にわかりにくくなる
TypeAやTypeBへの参照がなくても呼べるのはいいが
逆に言えば何を呼び出してるかさっぱりわからないコードになるから
意味が取りにくくなるので必要がなければ避けるべき形

つまりTypeAやTypeBを外部の誰かが作って入れるようなライブラリを作るケース以外では
避けるべき形
882デフォルトの名無しさん:2013/01/06(日) 18:21:15.79
「実はポリモーフィズムってしっくりこないんです!」
883デフォルトの名無しさん:2013/01/06(日) 18:32:49.63
一言に集約すれば「教条主義を避けろ」だな。
884デフォルトの名無しさん:2013/01/06(日) 18:35:12.53
うはw多態を避ける?マジすか!
全くついて行けないぜ!
>>881最後のところはプラグインモデルみたいなものかと思うけどその上が意味不明
885デフォルトの名無しさん:2013/01/06(日) 18:50:40.50
自分の書き方以外で書かれると気持ち悪いんだろ?
で、その書き方っていうのは、プログラム初めて最初に触ったIDEの標準のフォーマットなんだろ?
886デフォルトの名無しさん:2013/01/06(日) 18:57:29.11
>>884
obj.VirtualMethod(...)は

TypeAやTypeBへの参照がなくても呼べるのはいいけど
(Virtualなので)何を呼び出してるかさっぱりわからないコードになるから
意味が取りにくくなるので必要がなければ避けるべき形

つまりアセンブリ間の参照関係で言うと

アセンブリ → TypeAやTypeBがあるアセンブリ

こう参照していればよかったのが

アセンブリを使う側 → アセンブリ(VirtualMethodを持つベースクラス or インターフェースだけ定義)
    ↓→  TypeAやBが定義されたアセンブリ →↑

こういう関係性になってややこしいことになるわけよね
TypeAやBとライブラリのアセンブリの関係を見ると逆になっていて
ライブラリからはTypeAやBが見えなくなっている
ライブラリのメソッドだけ見ても何をするのかわからなくなってる

使う側はTypeAやBのアセンブリからオブジェクトを作ってライブラリのアセンブリに入れてやらなきゃいけない
そうしないと外部から処理を入れるプラグイン的なことが出来ないから仕方ないんだけど
分かりにくいから出来れば避けたい形
887デフォルトの名無しさん:2013/01/06(日) 19:07:29.00
へえ〜、凄いねえ〜
でも派生型の実装の意味を知ろうって発想自体がOOP的に腐ってるんだよ〜
888デフォルトの名無しさん:2013/01/06(日) 19:25:19.11
派生型の実装が分かっていたほうがコードは見通しが良くなるから
派生させて隠蔽しようっていう発想はそもそも腐ってるんだよ
本気でそうしたほうがいいと思ってるんだったらオブジェクト指向に毒されてコードをまともに書けなくなってる
889デフォルトの名無しさん:2013/01/06(日) 19:32:48.63
>>888の主義主張はどうでもいいんだが、なんでOOP言語のスレで言うのかねえ
890デフォルトの名無しさん:2013/01/06(日) 19:39:36.15
C#は関数型とのハイブリッド言語でしょ

関数型だとTypeA、TypeBみたいにパターンマッチングするのは基本の書き方だからね
C#はオブジェクト指向言語じゃないんだから優れた方を使えばいいんだよ
891デフォルトの名無しさん:2013/01/06(日) 19:44:38.20
>C# は、シンプルかつ強力で、タイプ セーフのオブジェクト指向言語です。

http://msdn.microsoft.com/ja-jp/library/vstudio/kx37x362.aspx
892デフォルトの名無しさん:2013/01/06(日) 19:46:40.94
>>890
さよなら
893デフォルトの名無しさん:2013/01/06(日) 19:51:36.80
C#が関数型言語の機能を取り込んだのなんか常識じゃない
無知からくるまぬけな言いがかりでしかない
894デフォルトの名無しさん:2013/01/06(日) 19:58:30.78
もしかして:第一級関数
895デフォルトの名無しさん:2013/01/06(日) 20:05:35.54
ある程度の処理の規模になってくるとChain of Responsibility パターン
なんかを使うのかもしれんけどね。
896デフォルトの名無しさん:2013/01/06(日) 20:28:26.20
多態も使えないクズが居座ってんのか
897デフォルトの名無しさん:2013/01/06(日) 20:31:57.17
switchで書くも、後々、&&とか||を使いたくなって
ifにしてしまうことは、まれにある。
まあ、列挙体なんかは、VSならswでスニペット用意されてるし、楽だと思う。

多態性だがポリモだか知らないが初心者に教える必要もないと思う。
特に入門段階で「どういうときに使うの?w」とか抜かしているような奴に説明するのは無理だしな。
898884:2013/01/06(日) 20:33:51.14
>>886
意味分かったありがとう
899デフォルトの名無しさん:2013/01/06(日) 20:34:26.08
まあ多態無しで組めるようになってからの方が
多態の価値が分かるかもというのはあるね
900デフォルトの名無しさん:2013/01/06(日) 20:51:25.19
>>886
デリゲートも使わないの?
901デフォルトの名無しさん:2013/01/06(日) 21:23:38.29
多態は処理追いやすいけど
デリゲートは処理追いにくいよね
そりゃ使う時は使うけど
902デフォルトの名無しさん:2013/01/06(日) 21:47:00.28
多態が処理追いやすいわけないがな
あんな無駄にクラス増やして処理をとっちらからせるだけのもの
ラムダで直接書くのが一番直感的
903デフォルトの名無しさん:2013/01/06(日) 21:49:27.31
高階関数は多態そのものだろ
Javaみたいにインラインでクラス書いて渡すのは最低最悪のビチクソなのは間違いないが
904デフォルトの名無しさん:2013/01/06(日) 21:50:23.41
>>900
処理の挿入が必要なライブラリ書くときにデリゲートつかうよ
挿入される処理がいくつかセットになってるときはインターフェースを使う
多態はそのときぐらいしか使わんなデリゲートはもっと使うけど
905デフォルトの名無しさん:2013/01/06(日) 21:53:32.58
多態はオブジェクト指向用語であって
高階関数もシコシコインターフェースと実装クラスでやるオワコンスタイルを表すものだろ
906デフォルトの名無しさん:2013/01/06(日) 21:58:36.61
なにそのオレオレ定義
907デフォルトの名無しさん:2013/01/06(日) 22:08:11.50
多態の処理追えないとか
どんだけ素人だよ
908デフォルトの名無しさん:2013/01/06(日) 22:18:41.68
>>907
一番自然で追いやすいのはまっすぐ記述されてること
そこから離れるほどにわかりにくく追いにくくなるの
インターフェースと実装クラスの分離なんかソースファイルまで別れる最悪の記述方式になってることは明らかでしょ
オブジェクト指向を金科玉条のように信仰してると盲目になっちゃうから分からんかもしれんがね
909デフォルトの名無しさん:2013/01/06(日) 22:20:54.65
このアホ臭い釣りはいつまで続くの?
910デフォルトの名無しさん:2013/01/06(日) 23:38:53.47
おまえが相手を続ける限り。
911デフォルトの名無しさん:2013/01/06(日) 23:54:10.48
>>908
.NET 4.5からのawait/asyncなんかは、そういう意図もあるよな。
非同期の処理を同期と同じように書けるのは、良いと思う。
912デフォルトの名無しさん:2013/01/07(月) 00:12:17.37
>>908
お前は何でもかんでも中まで追おうとするからアホなんや
913デフォルトの名無しさん:2013/01/07(月) 00:16:33.53
virtualじゃ中まで追わなきゃ何をするか分かんないでしょ
何をするかメソッド名に書いてあれば中を見なくても分かるわけ
はやいとこオブジェクト指向の洗脳から抜けなさいよ相手するのめんどくさいから
914デフォルトの名無しさん:2013/01/07(月) 00:28:42.10
いや別に君に相手して欲しいと頼んだわけじゃないし、
出来ればどっか逝ってくれればありがたいとさえ思う。
915デフォルトの名無しさん:2013/01/07(月) 00:31:49.48
virtualじゃなくても中まで追わなきゃ何をするか分かんないよ
916デフォルトの名無しさん:2013/01/07(月) 00:35:43.74
分かるように名前をつけるのが腕やがな
名前だけじゃ足りなくてもsummaryコメントまで見たらもう完全にわからないとアウトだわね
917デフォルトの名無しさん:2013/01/07(月) 00:36:16.30
ソロ開発しかしたことないんだろ
それか口だけでhello world止まりか
918デフォルトの名無しさん:2013/01/07(月) 00:39:35.04
なんか核ボタンに飴が出ますって書いてあったら押すタイプの奴がいるな
919デフォルトの名無しさん:2013/01/07(月) 01:04:55.69
オブジェクト指向で挫折したんだろ
察してやれ
920デフォルトの名無しさん:2013/01/07(月) 01:13:40.18
ITドカタの間ではオブジェクト指向教は根深いんだよなあ
クチで言い負かされても理屈ゼロの悪口ボソボソ言い出して省みるところがない
そんなもの信じてるからITドカタなのにそうまで否定出来ないものかねその宗教を
921デフォルトの名無しさん:2013/01/07(月) 01:15:03.33
おっ
ブーメラン投げ始めたぞ
922デフォルトの名無しさん:2013/01/07(月) 02:03:21.32
>>919
まさにそんな感じ
チーム開発でひとりだけ>>917のような事されると困る
923デフォルトの名無しさん:2013/01/07(月) 07:09:39.17
宗教は自分で考えなくていいから楽だよ
924デフォルトの名無しさん:2013/01/07(月) 07:15:00.91
ご高説を垂れる前に多態の静的な分析法を覚えた方がよろしいのでは
925デフォルトの名無しさん:2013/01/07(月) 07:53:04.57
>>920
お前が自宅警備員時代に培った技術でなんとかITドカタで就職できたものの、そこでボロ糞に苛められた経緯があり、
そのときの会社で使っていた言語がオブジェクト指向だったてとこまでは理解できた。
926デフォルトの名無しさん:2013/01/07(月) 07:54:21.03
オブジェクト指向ってしっくりこないんです!
927デフォルトの名無しさん:2013/01/07(月) 09:41:12.35
プロパテ
928デフォルトの名無しさん:2013/01/07(月) 09:41:46.49
プロパ
929デフォルトの名無しさん:2013/01/07(月) 09:42:28.50
あぁん
930デフォルトの名無しさん:2013/01/07(月) 11:00:31.71
ListViewで質問です。明細表示していた場合
1アイテム内で改行することはできますか?
931デフォルトの名無しさん:2013/01/07(月) 11:12:06.88
改行したテキストぶち込んでみれば?
932デフォルトの名無しさん:2013/01/07(月) 11:19:43.72
ぶちこんだところ改行されません。
933デフォルトの名無しさん:2013/01/07(月) 11:24:14.09
行の幅が変わりません。

行の幅を変えても表示されません。

OwnerDrawだとちらついて使い物になりません。

DoubleBufferedを有効にすると遅すぎて使い物になりません。

VirtualMode...
934デフォルトの名無しさん:2013/01/07(月) 11:35:30.06
WPFならコードなしでできるね
935デフォルトの名無しさん:2013/01/07(月) 11:42:19.01
簡単にできそうで実装されていないのはそれなりに理由があるんだろうね
とくにデフォルトでダブルバッファが無効になってるコントロールは曲者
TabControlやListViewはいじりだしたらきりがない

DataGridViewじゃだめなん?
936デフォルトの名無しさん:2013/01/07(月) 11:57:08.59
ListViewはDetailだけじゃないからなあ
937デフォルトの名無しさん:2013/01/07(月) 13:23:08.04
ListViewのdetailを使ってファイラーを作りたいと思います2列のリストを作りました。
1列目はフォルダとファイルの名前、2列名はファイルの種類を入れてます。
http://dobon.net/vb/dotnet/control/lvitemsort.htmlで紹介されているコードを使ってヘッダーをクリックするとソートできるようにしました
Windowsの標準のファイラー(Explorer)の表示を詳細にしてヘッダーの名前の部分をクリックすると
フォルダとファイルが分かれてソートする動作にするにはどのようにするのでしょうか?
938デフォルトの名無しさん:2013/01/07(月) 13:32:36.94
Tagかどっかに情報を持っておく
大小比較する際にまずその二つがそれぞれフォルダかファイルか判断して
フォルダとファイルの比較だったらファイル名とかにかかわらず-1か1を返す
939デフォルトの名無しさん:2013/01/07(月) 15:05:07.42
前から迷ってた、ファイラーを作ってみた。
思ったより少ないソースで基本は出来た。

エクスプローラのコンテキストメニューどーすんだっと思ってたけど
Andreas Johanssonさんありがとう

しかし、C#だと、打つコード量すくねー
940デフォルトの名無しさん:2013/01/07(月) 18:58:01.12
C#というか設計の質問になってしまうんだが、論理エラー系のログファイルって発生したら逐一テキストベースで吐くべき?処理が一通り終わるまで溜め込んでXmlで吐くっておかしい?
941デフォルトの名無しさん:2013/01/07(月) 19:08:12.05
すぐ吐かないとダメでしょう
エラーなんだから溜め込んでから吐くまでの間コントロールできてるとは限らないし
942デフォルトの名無しさん:2013/01/07(月) 19:17:41.96
溜め込んでる間に強制終了されたら、肝心なログが見れないでしょ?
943デフォルトの名無しさん:2013/01/07(月) 19:41:09.11
終了時の動作を保証できるなら溜めた方がパフォーマンスが良くなる
944デフォルトの名無しさん:2013/01/07(月) 20:01:26.51
言語は優秀なのに糞アプリであふれてる理由がわかったわ
945デフォルトの名無しさん:2013/01/07(月) 20:43:51.71
C#使ってて感じるのが、クラスライブラリがいまいちなんだよなぁ
ちょくちょく感じるのが、かゆいところに手が届かないというか、
Win32APIつかうとか、自分で該当クラスを作ればいいんだろうけど…

今感じているのが、コモンダイアログで、ダイアログ内のコントロールに
フォーカスが移せなくて困ってる。
FolderBrouserDialogを開いた直後のフォーカスが、ツリービューでなくて、
ボタンにあるんだけど、これなんとかなんないの?

他に、最近気づいたのが、正規表現で改行の仕様部分がいまいちとか。
$がなんで\rの前で無くて\nの前とか、オプションで選択出来ればいいんだけど、それも出来ない。
他の人どーしてんだろうかと、不思議に思うんだけど。
946デフォルトの名無しさん:2013/01/07(月) 20:51:32.44
>>945
諦めてライブラリの仕様に従うか、自分用にライブラリを作るかどちらかだろうな。
結局、1から自分用に作った方が使いやすい時もあるし。
細かいところなら我慢するのもアリだろうし。
947デフォルトの名無しさん:2013/01/07(月) 21:04:58.92
ファイラーの話からず〜っと思ってたけど
かゆいところまで手の届く便利な純正ライブラリ用意してくれてるのに何で使わないのかね
すべてのライブラリ把握したような口ぶりだから当然知ってるんだろうとは思うけど
948デフォルトの名無しさん:2013/01/07(月) 21:21:40.52
そのかゆいところに手に届くすばらしいライブラリを紹介してくれよ。
949デフォルトの名無しさん:2013/01/07(月) 21:23:10.64
>>947
>かゆいところまで手の届く便利な純正ライブラリ用意してくれてるのに何で使わないのかね
>すべてのライブラリ把握したような口ぶりだから当然知ってるんだろうとは思うけど
知らない。つーかおせーて。多分、嘘だろうと思うけど。

最も、ファイルとかディレクトリとかコピーするのにRobocopy使ったもの
用意したんだけど、移動でめげた。
よく調べてみたら、VisualBasicのFileSystemに使い勝手のよさそうなのがあって、
さしあたってそれ使った(将来的には置き換えると思うけど)。
950デフォルトの名無しさん:2013/01/07(月) 21:25:39.89
いや〜コモンダイアログを標準ライブラリだと思ってるみたいだし
951デフォルトの名無しさん:2013/01/07(月) 23:59:00.03
結局ないんカイ

蛇足で悪いんだけど、VistaでRoboCopy使用下で、
不思議な現象(仕様?)があった。

1.ドライブ直下(ルートディレクトリ)のファイルを別のディレクトリにコピーすると、
  コピー先のディレクトリの属性が、隠し属性と、システム属性がつく
2.ルート下のディレクトリを指定する場合には、最後に\が必要、
  かつダブルクォーテーションを外す必要があった。

ルート下での使用はあんまり無いと思うけど、、特に1は気をつけた方がいい。
知らない間に、エクスプローラから、ディレクトリが見えなくなるw
952デフォルトの名無しさん:2013/01/08(火) 00:21:09.36
質問に対するレスまで臭くなっちゃ初心者スレとしては終わりやな
953デフォルトの名無しさん:2013/01/08(火) 07:09:36.12
OSの縛り受けるけどあるよ
954デフォルトの名無しさん:2013/01/08(火) 07:44:12.85
エクスプローラなんて貼るだけでフォームに埋め込めるし
エクスプローラ固有の特殊なフォルダなんかもレジストリから簡単に取得、設定できて
エクスプローラの状態に合わせたイベントも一通り用意されてる

こんなのはさわり程度でできる
955デフォルトの名無しさん:2013/01/08(火) 09:13:03.51
エクスプローラコントロールがあるの?
956デフォルトの名無しさん:2013/01/08(火) 09:25:57.71
これのことじゃねーの?
http://archive.msdn.microsoft.com/WindowsAPICodePack

まあ純正っちゃ純正

あとファイルの移動ってのは考えてるほど簡単じゃないんだよね
Optimized Move ってのがあるし非同期に完了するし
957デフォルトの名無しさん:2013/01/08(火) 09:34:25.04
それ日本語の情報少なすぎてめんどくせ
958デフォルトの名無しさん:2013/01/08(火) 10:27:44.56
ファイラーを作る大抵の理由は、そのアプリに必要な情報を絞り込んで表示させたいわけだから、エクスプローラ貼ったところで意味がないという。
DirectXのほうは興味あるけどわけわかめ。
959デフォルトの名無しさん:2013/01/08(火) 11:18:28.21
コーモンダイアログ
960デフォルトの名無しさん:2013/01/08(火) 12:44:05.53
ところで、おまえら的にはF#はどーなんだ?
一応、勉強だけは始めようと思うんだが。
961デフォルトの名無しさん:2013/01/08(火) 12:49:04.24
まだ幼女だしなぁ、
おっぱい膨らんできたら考えてみる。
962デフォルトの名無しさん:2013/01/08(火) 13:08:59.13
IDE機能と情報源が生えそろってきたら考える
963デフォルトの名無しさん:2013/01/08(火) 13:17:41.02
WPFタンみたいに障害もちだったら無駄になるしなぁ
964デフォルトの名無しさん:2013/01/08(火) 13:31:54.46
便利になったら覚える
965937:2013/01/08(火) 13:35:15.33
938さんに教えて頂いたTagを使ってフォルダとファイルが比較しているか調べるようにしてみたのですが
ヘッダーを押すと処理はしているようなんですが、ソートができなくなりました。
おまけにヘッダーを2回押さないとリストの内容が変わらなくなってしまいました
どうか先輩方コードを見ていただけないでしょうか?
デザイナーでlistviewを貼り付けただけでVC#の右下のプロパティー画面はいじくってないです
プロパティの変更などは全部コードに書いてあります。
http://ideone.com/qb5HaM
966デフォルトの名無しさん:2013/01/08(火) 13:39:55.35
なげえ
967デフォルトの名無しさん:2013/01/08(火) 13:56:52.36
Tagに入れるのはObjectだしbool入れてたってObjectの比較しちゃだめだよ
試しに
bool itemxFolder = (bool)itemx.Tag;
bool itemyFolder = (bool)itemy.Tag;
とかやってそれ比較してみ。

つーかデバッガの使い方覚えようぜ。
968939:2013/01/08(火) 14:10:42.84
なんだ、先輩がいたんだw

俺よりよっぽどきれいなソースかいてらw
見てあげたいけど、出かけるから無理(週末まで戻らない)

その件とは直接関係ないけど、ListViewにItem追加するたびにSortするだろうから、
大量にItem追加する際には、Sort止めないと、えらい時間かかるよ
たとえば、System32がカレントディレクトリになった時とか
969デフォルトの名無しさん:2013/01/08(火) 14:47:43.22
BeginUpdateとEndUpdateも入れといたほうがいい
970デフォルトの名無しさん:2013/01/08(火) 15:25:32.78
コントロールをドラッグで移動させようとして下記サイトを参考にしているのですが、時々元の位置に戻ったりX軸やY軸だけ動いたりします。
何か対策はありますでしょうか?
http://youryella.wankuma.com/Library/Extensions/Control/MouseMove.aspx
971デフォルトの名無しさん:2013/01/08(火) 15:29:01.26
>>968
社内でやりとりしろよwww
972970:2013/01/08(火) 15:41:43.02
すいません、自分のミスでした。
973デフォルトの名無しさん:2013/01/08(火) 15:42:24.10
>>970
一行一行何をやっているのかしっかり理解した上で、自分のコードに合わせて書き換えればいいと思います。
974デフォルトの名無しさん:2013/01/08(火) 16:03:38.66
もともと、質問者がどこでミスしてるか教えてくれって質問のはずなのに
>>972 の書き方ってことは
自分はミスしてないと思って聞きにきたのかw
975デフォルトの名無しさん:2013/01/08(火) 16:36:28.37
this.Invalidate()についてなのですが
一部の領域を無効にしようとすると
this.Invalidate(new Rectangle(50,50,100,100));
という具合にすると思いますが、
これを複数のRectangleで指定したいのですが
難しいでしょうか?
976デフォルトの名無しさん:2013/01/08(火) 16:46:11.38
複数回呼びだしゃ良いよ
一回じゃないと嫌ならInvalidate(Region)使う
977デフォルトの名無しさん:2013/01/08(火) 16:47:01.78
複数回呼べばいいだろう
978デフォルトの名無しさん:2013/01/08(火) 16:59:19.18
複数回呼ぶと複数回WM_PAINTが送信されてしまうみたいで。
リージョンは、離れた二つのRectangleなどの場合に
リージョンにできなくて難しいです。
979デフォルトの名無しさん:2013/01/08(火) 17:00:26.48
>>978
>複数回呼ぶと複数回WM_PAINTが送信されてしまうみたいで。

ねーよ。
間にUpdate呼んでるんじゃねーの?
980デフォルトの名無しさん:2013/01/08(火) 17:03:03.57
あとつながって無くてもできるだろ?
想像だけでできないと思い込んでるんじゃないの?
981デフォルトの名無しさん:2013/01/08(火) 17:22:17.17
パスからリージョン作成でできました。ありがとうございました。
982デフォルトの名無しさん:2013/01/08(火) 17:27:46.97
お前ら完全になめられてんな(w
983デフォルトの名無しさん:2013/01/08(火) 17:36:19.04
ろくすっぽ調べもせずに断言しちゃうところがね 初心者から見てもね
お前の頭にはクラスの仕様が全部詰まってるのかってね
984デフォルトの名無しさん:2013/01/08(火) 17:44:00.84
パスからリージョン作成でできましたんですが
これ重いですね。軽くできないものでしょうか?
985デフォルトの名無しさん:2013/01/08(火) 17:46:50.30
カビの生えた引き出しから出されたもの渡されてもね
986デフォルトの名無しさん:2013/01/08(火) 17:47:59.70
軽くなりました。ありがとうございました。
987デフォルトの名無しさん:2013/01/08(火) 17:49:40.43
国へ帰れ
988デフォルトの名無しさん:2013/01/08(火) 18:06:41.13
>>983
何のこと言ってるのかわからんけど、知らないなら引っ込んでくれないかな。
989デフォルトの名無しさん:2013/01/08(火) 18:07:44.28
あと調べもせずとか書いてるけど、こっちはコード書いて動かしてから
答えてるんだけどな。
990デフォルトの名無しさん:2013/01/08(火) 18:39:58.45
C#スレを荒らしてるのは誰なんだ
JAVA厨か?
991デフォルトの名無しさん:2013/01/08(火) 19:05:33.98
>>990
992デフォルトの名無しさん:2013/01/08(火) 19:06:14.71
糞スレ埋め
993デフォルトの名無しさん:2013/01/08(火) 19:08:07.53
>>980
次スレさっさと建てろや
994デフォルトの名無しさん:2013/01/08(火) 19:15:24.02
995デフォルトの名無しさん:2013/01/08(火) 19:16:00.20
んこ
996デフォルトの名無しさん:2013/01/08(火) 19:38:06.61
うめ
997デフォルトの名無しさん:2013/01/08(火) 19:47:46.61
998デフォルトの名無しさん:2013/01/08(火) 19:55:14.10
999デフォルトの名無しさん:2013/01/08(火) 19:56:14.01
1000デフォルトの名無しさん:2013/01/08(火) 19:56:52.92
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。