>>1 次スレ立てるときはID表示にチェック入れてくれ
もう WinForms にお別れしよう
そしてQtへ
QyotoとMonoの出番だな
CからC#に移行、疑問 Q1 #includeはどうなったusingでおk? Q2 hやcppは? csに統一された? Q3 hがないということは、ライブラリ(lib)はないの?
13 :
デフォルトの名無しさん :2011/03/20(日) 21:13:32.16
A1 yes A2 yesっていうかhとcppってC++だろ。それにあんなわけ方は糞仕様だ A3 no 同じくusingでクラスライブラリ(dll)で取り込む
dll自身がC++のヘッダ相当の情報(メタデータ)を持ってる
移行前の下調べ段階だなw
usingは単に名前空間の省略を可能にするだけ 参照にdll追加しないと
usingはC++にもあるじゃねえか
19 :
デフォルトの名無しさん :2011/03/20(日) 21:55:27.13
>>17 Cだってリンカーでリンクしないといけないのは同じ
Cならコンパイル自体は通るだろ .NETは参照元をコンパイルする段階で参照先のdllが必要
おすすめのレイアウトのコントロールある? Qtのレイアウトに慣れるとデフォについてる奴は使いづらい 無料で
はいはいWPFWPF
24 :
デフォルトの名無しさん :2011/03/20(日) 22:12:46.53
VirtualizingStackPanelとか答えればいいわけ?
25 :
デフォルトの名無しさん :2011/03/20(日) 22:15:18.88
>>23 Anchor設定しろ
このレベルの質問乱射するなら初心者スレ行け
>>23 まさかAnchorプロパティやDockプロパティも知らずに偉そうなこと言ってるわけじゃないよね(´・ω・`)
馬鹿すぎて泣けるからそろそろ相手すんの止めろ。
もっさりだからダメ(キリッ 恥ずかしい奴だ。
29 :
デフォルトの名無しさん :2011/03/20(日) 22:18:20.03
wpfをもっさりと言い切る奴って・・・
>>25 初心者スレで知ったかして煽られて叩き出された子だから行き場がないのよん
もうこねぇよヽ(`Д´)ノウワァァァンと言って、姉妹スレ荒らしに行くような自意識過剰君
>>25 どのコントロールのAnchor?
こんな調子でも使えるQTってよっぽど簡単なGUIツールキットなんだな 興味出てきたw
>>32 どのコントロールっていうかフォームの拡大した際に
自分の思うように追従させたいコントロールすべてだよ
36 :
デフォルトの名無しさん :2011/03/20(日) 22:23:17.49
これも例の「答え合わせ」って奴なのか?
前のスレの「StreamReaderは糞、FileStreamは神」にはワラタ
AnchorやDockを知らない→面倒くさいけどResizeイベントでリサイズしちゃおう ↓ 2chで暴れる どっちが賢いのかね
どちらも同程度の馬鹿かと思います。 しいて言えば自己完結するぶん右の方がいいかな。
41 :
デフォルトの名無しさん :2011/03/20(日) 22:31:41.59
「Resizeをフックすれば何となるとは思いますが、もっと良い方法はないでしょうか?」って聞くのがベストじゃないかな
AnchorをTop, Bottom, Left, Rightにしてもダメじゃねーか
想像通りのクソコードで安心した
>>38 AnchorやDockを知らない→WindowSizeを固定
せいかい
45 :
デフォルトの名無しさん :2011/03/20(日) 22:36:22.88
DockをFillにしても変化なし
>>44 fixedは時代遅れ
47 :
デフォルトの名無しさん :2011/03/20(日) 22:40:02.43
>>46 糞みたいなPanelを全部消せ
あとお前も消えろ
そんなに自分で考えたり調べたり工夫したりするのが嫌ならやめればいいのに
もうなにがなにやらw
51 :
デフォルトの名無しさん :2011/03/20(日) 22:55:46.42
>>49 >全部レイアウトにぶち込むのがデフォなのだがC#では違うのか
Label配下にButton突っ込めたりするよ
52 :
デフォルトの名無しさん :2011/03/20(日) 22:55:54.64
え、これ%指定のテーブルレイアウト使ってるの? 上の行は高さ固定でいいだろ
ふらっとスレ行けよ
質問するのが目的じゃなくて構って欲しいんだろ
相手してる馬鹿どもも死ねよ
DPI違う環境で誰かが使う予定なのか? 何円払ってお使いいただくのか気になる
C#の本を読んでて「パフォーマンスヒット」って言葉がでてきたんですが、これがどういう状況なのかがわかりません。 グーグル先生に聞いてもこの単語を使っている人はいてもこの単語の意味を説明してる人はいませんでした。 わかる人がいましたら教えていただけないでしょうか。
資源の引き当て どのくらいのパフォーマンスが割り当てられますの意味
>>59 ありがとうございます!すっきりしました。
144は何を突然発狂してるんだ?
くだすれに引っ込んでろ
Formの略は、frmでおk?
普通にformでいい。 'o'一文字減らすのに何の意味があると言うのだ
kbnディスってんの?
香川テレビがどうしたって?
@"Te/st.txt"; ↑ 文字列の前についてる@って何? C++のUnicode L"文字列"みたいなもの?
つのだ☆ひろ
>>69 それのあとはすべて文字列とみなすってことだ。
文字を囲んでいるダブルクオーテーションを除いてな
つまり
@"\n"="\\n" みたいな
ちょっと質問と言うか疑問 Control.BeginInvoke()の説明に「EndInvoke()を呼び出さなければならない」みたいな記述がないんだけど呼び出さなくていいのかな コールバックの指定も出来ないようだし、呼び出し必須と言われてもちょっと困るけど
呼び出さなくてOK 逆にEndInvokeを呼び出すと、スレッドの終了待ちが競合して デッドロックするコードになることがある
また適当なこと言って
あ、Control.BeginInvokeか なら不要
適当だと・・・・・ あまり元MSDNmagazine定期購読者を舐めないほうがいい・・・・・
ドヤッって聞こえるわ 耳掃除してくる
最近はMSDNを見ないのが流行なのかな
81 :
74 :2011/03/22(火) 16:34:28.64
>>75 なるほどTHX.
例外はどうなるのってMSDNよく見たらバンドルされてない例外扱いで上まで行っちゃうのね
82 :
デフォルトの名無しさん :2011/03/22(火) 20:12:55.00
例外がバンドルされてるソフトなんて使いたくないわ
何言ってるんだと思ったら「バ」かよw
今買うともれなく例外が
85 :
144 :2011/03/23(水) 02:39:39.99
ちんこ
stringにクリアないの? 今は string = "" やってるけど違和感がある
一度作成した文字列は永遠に変更できない。 だから変数に別の文字列の参照を代入するしかないのでそれで正しい。
88 :
デフォルトの名無しさん :2011/03/23(水) 20:57:45.97
str = null;だろうけど、ローカル変数へのnull代入はよほどの長期実行でもない限り逆効果だと聞く
""はどうせインターンされてるはずだからGC目的ならnull代入と同じ
null代入って意味ないの?
意味がある場合もあるが、使い終わったら必ずnullを代入するというようなことは無意味 メモリの使用量が問題になっていて、対象の変数が不要になったオブジェクトへの参照を 長時間持ち続けていることが原因になっていることが明らかになったら考えること
92 :
デフォルトの名無しさん :2011/03/23(水) 21:11:53.01
>>90 参照を切り離すだけだね
stringは参照だし
intなどのように変数の中身がクリアするわけじゃない
null代入すれば変数の中身はクリアされるよ intと同じ 変数の中身が参照か数値かの違い
>>91 そういうのってVisualStudioに機能があったりするの?
>>94 CLR Profiler
あと91補足
GCによってパフォーマンスが落ちないようにするためには使い捨てのオブジェクトはなるべくすぐに使い捨てて
第0世代のGCによって回収されるようにするのが重要。
生存期間が長いほど世代が昇格してしまう可能性は高くなるので、
メモリ消費量だけでなくGCに取られる時間を減らす意味でも、生存時間の長い変数に
nullを代入するのは有効な場合がある。
でも何度も言うがほとんど無意味。99.9%無意味。
null 代入するくらいならスコープを分けて変数自体を無効にしちゃった方がいいよ。
それはどうだろう { var x = new 巨大なオブジェクト(); x.なんか処理(); // x = null; を入れるならココ } GCの動作間隔に比べて無視できないくらい長い時間がかかる処理(); これだとコンパイル後のILは{ }あってもなくても同じになるよ もちろんコメントアウトを外すとちゃんとldnullが入る
varって何? 何でも対応した変数って認識でおk?
99 :
デフォルトの名無しさん :2011/03/23(水) 22:39:07.28
型推論 初期化の式と同じ型になる
var num = new int; こうすればintってこと?
とりあえず書いてみろよ。 varの上にマウスカーソルのせれば、それが答えだ。
System.Int32 ってでた intの正体はInt32
コナンの正体は新一
>第0世代のGCによって回収されるようにするのが重要。 そんなに重要か? 性能の問題が出てからそこだけ見直せばいいだろ。 それよりコードの行数を減らしてスッキリさせる方が重要。
スッキリする様に書いてれば普通はスコープが狭くなって回収されやすくなるから大丈夫
>>105 わざとじゃないよ
そっちから追い出されただけ
108 :
95 :2011/03/23(水) 23:22:30.93
>>106 そりゃそうだ。だから無意味だって言ってるじゃん。
GCのパフォーマンスを上げたかったら重要ってこと
CやC++だとこのへんに気を使わないといけないんだよね。大変そうだ
>>107 コードの長さと処理時間の長さは別問題だよ
呼び出し階層の上の方だとコードは短くても入ってから抜けるまでの時間が
長いスコープというのはやっぱりある
GCも進化していくからGCの為の汎用最適化コードなんて無意味だよ
上の人も言ってるけどパフォーマンスに問題が出てからチューニングすればいい話
>>109 C++の開発効率の悪さは異常
shared_ptrの循環参照問題で数時間無駄になったりとか今思い出してもうんざりする
初心者が気にする3大要素 ・メモリ ・暗号化 ・スマート
パフォーマンスを過剰に気にする初心者は一回自分のプログラムでプロファイル取ってみればいいと思う 「ほとんど無意味」の意味がわかる
VS2010でバックの時 全部のcsの先頭に using System.Diagnostics; 自動で付けるにはどうすればおk?
grep
>>114 ソースのどこでもいいんで Debug って打って、Ctrl + . 押してみ。
throw new Exception("Error"); ↓投げても 'System.NullReferenceException' の初回例外が test.dll で発生しました。 出力ウィンドウにこの情報しかない 何行目のどのcsか教えてくれないと、修正できないだろが ブレークポイントで一行ずつ探ししかないのか?
そもそもException投げるべきじゃないしNullRefが起こる状態で放置しちゃ駄目
VSならスタックトレースが表示されるはず どうしてもダメだったら、自分でキャッチしてTrace.WriteLine(exception)するしかないかもね
「デバッグ」→「例外」で例外ウィンドウが出るから、スロー時に中断させればいい
WPFにすればいいじゃん
listViewのアイテムの保存はどうすの? appsetting使えねーぞ
仕方ないから自分でCSVFileStreamクラスを作った なんで標準装備じゃないんだ?
CSVだからさ
利用者がいないもん用意しても仕方ないじゃん?
130 :
デフォルトの名無しさん :2011/03/24(木) 20:20:43.43
CSVにbyte[]を書きこむ需要&規則が分からん TextWriterにCSV向け拡張メソッドを用意するぐらいで我慢しとけ
>>130 WriterとReaderは糞なんだよ
FileStreamは神
俺が作ったcsvクラスほしいか?
ここでは要らん CodePlexにでも投稿しておけ
カワイソスw
まだ144さん頑張ってるみたいだね
136 :
デフォルトの名無しさん :2011/03/24(木) 21:23:16.62
>>132 はいらんけどCSVFileStreamとやらはぜひ見ていたい
それがCSVFileStreamなんだけどね
138 :
144 :2011/03/24(木) 21:49:58.79
くだらないな
おいらは4096bytes読むたびに続行するかこっちをちら見するFileStreamなら作ったよ
System.IO.Path.GetFileNameWithoutExtension ↓ Path.GetFileNameWithoutExtension みたいに省略できないの? using System.IO;使ってるのにな
141 :
デフォルトの名無しさん :2011/03/25(金) 07:07:50.52
普通はできる 出来ないとしたらSystem.Windows.Shapesとか別の名前空間のPathクラスを参照しているか、 Pathプロパティが存在するのが原因じゃねえの?
Systemってなんでクラスじゃないんですか?
みんな!俺がこのレス乞食の相手をしている間に逃げろ!!
返答してるアホは死ね
かー!参った できたCSVクラスは、文字列にカンマがあると区切りと認識してしまい正常に読み込めないわ
147 :
デフォルトの名無しさん :2011/03/25(金) 16:43:12.82
そんなのはブログでも作ってそっちに書け
俺は今、A Fast CSV Readerという新たな力を手に入れた もう何も怖くない
RFC4180すら満たさないゴミコードは紛らわしいのでCSVを名乗らないでね
相手すんなっつってんだろ#で刺すぞ
CSVなんてほとんどの場合形式が決まりきってるんだから正規表現でも十分なくらい 汎用的なCSVパーサーなんかいらん
ふらっとでやれw
こりゃこっちが初心者用になるのは時間の問題だな
×初心者用 ○キチガイ用
こっちが隔離板だったか
スレのまちがい
158 :
福盛俊明 :2011/03/26(土) 03:20:48.95
アハ〜♪”
FormClosed Formclosing どう使い分ければおk? 終了処理はclosed?
閉じられた時と閉じられる時だろ、大丈夫かよお前
英語ダメな子って悲惨
キャンセルする気が無いのならどっちに書いても変わらんちん
>>161 > 自分はclosedのほうがいいと思うのだが
なんで?
設定の保存は是非LINQで!
linqは糞 where selectとか見知らぬ構文が出てきた 複雑すぎる、やっぱCSV最強
CSVもLINQで処理するだろ常識的に考えて。
なんでCSVとLINQが比較ができるのかと。 あと、クエリ記法より拡張メソッドの方がいい気が
ネタだよ
拡張メソッドでjoin書いてみろよ
普通に拡張メソッドでJoin書くよ。
string[] src = { "abc", "cdef" }; string[] join = { "bdef", "bcdef" }; var result = src.Join(join, n => n[0], m => m[1], (n, m) => new { S = n, J = m }); はい
書いてみろよ(ドヤッ
クエリ記法と拡張メソッドなんてほとんど同じじゃん けんかすんなよw
彼がなぜそんなに得意気だったのかは不明である。
女陰
ふらっと逝け
sexect
ふらっとには戻らないと大見得切ってしまったので無理です
C#のアレに挟まって死んじゃえ!
被災地で余震と放射能に怯えながらも自分を保とうと必死に書き込んでいる姿を想像すればスルーできるはず
放射線で死ぬときは時間をかけてゆっくり体が壊れていくからなぁ 今はいいけど症状が始まってからが地獄
糞#www
J#のことはもう許せって
J#はいらない子
ListViewItemの派生クラスListViewItemExを作成し、ListViewにぶち込む SelectedItemsで選択しているアイテムを取得しダウンキャスしようとすると、キャスト例外発生 ListViewItemEx item = (ListViewItemEx)listView1.SelectedItems[0] なんでや
>>186 その場所でそのオブジェクトの型を見てみれば?
内部でクローンしているのかもしれない
あとListViewItemでオブジェクトを保持する場合はTagプロパティを使うのが常道
ついでにいえばDataGridViewのほうが覚えることが多いけど慣れれば遥かに簡単
そして今のはやりはWPF
DataGidのColumnClickイベントすら拾えないWPFなんかポイズン
いやWPFでしょ
LINQいいよね〜
>>1889 んなバカなと思ってちょっと調べてやったぞ。
TargetTypeがDataGridColumnHeaderのStyleを作成して、
EventSetterでイベントを設定し、DataGridColumnのHeaderStyleに指定する。
らしい。
確かにくどいわw
自演乙
>>192 WPFめんどくさそうだな
ほんとに次の時代の主流になるの?
もう5年経ってるし、移行なんかしないでしょ。
WPFは終わコン
始まってもいないのに酷いわ
DataGridViewは見た目が
今時組み込みOSでさえもWPFで実装されているぞ
コケたWP7の話はどうでもいいです
いろんなサイトからコピペして、Waveデータを再生する簡単なサンプルを作ったのですが、
音が鳴る時もあるのですが、何度か試していると、音が鳴らずに強制終了するようになります。
どこが悪いのでしょうか?よろしくお願いします!
ソース
ttp://ideone.com/mBM1y
>>202 イベントハンドラの使い方が間違ってると思う
見てないけど
204 :
202 :2011/03/28(月) 10:19:40.07
>>203 コールバックのことでしょうか?
今は 0 を渡しているのですが、ちゃんとイベントを受け取るようにした方が良いですかね?
206 :
デフォルトの名無しさん :2011/03/28(月) 15:12:40.10
Form1にlabel1を貼り付けました。
それはTwitterに書いてください
208 :
202 :2011/03/28(月) 17:40:16.40
>>205 今後Waveの編集をして再生をしたかったため、上記方法をとっておりました。
209 :
デフォルトの名無しさん :2011/03/28(月) 18:03:38.92
unsafeコードを書いたことないので動かせないので想像だけど >何度か試していると、音が鳴らずに強制終了するようになります。 こういう場合は大体メモリ管理の問題とかで落ちてることが多いよね
210 :
202 :2011/03/28(月) 18:31:48.42
>>209 そうですね、ただそれがどこなのか。。。
と言う状況でしたが、プラットフォームを x86 にビルドしたところ、問題なく動くようになりました。
私のPCはVistaの64bitですが、x64にしてビルドをすると強制終了します。
これはビルド時のプラットフォームに関わらず、32bit版の winmm.dll が常に読み込まれていると言うことですかね。
とりあえず、ビルド時のプラットフォームによって、IntPtr のサイズが変わるのが原因だと思ってます。
ありがとうございました。
>>210 APIの定義間違えてるんじゃない?
引数のlphWaveOutはintじゃなくてIntPtrだとおもう
32bitのときは問題にならないけど、64bitだとまったく別の値を示してしまう
212 :
202 :2011/03/28(月) 21:05:42.58
>>211 waveOutOpen の時は IntPtr にしてまして、
それ以降の waveOutWrite とかは、ハンドルを渡しているので int にしてあります。
出来れば無料で便利なタブコントロールってありますか? デザインがある程度変えられるやつで閉じるボタンがあって入れ替えが可能なやつ
ハンドル渡すのもIntPtrだろ
215 :
202 :2011/03/28(月) 21:10:51.03
>>211 すみません。変数名が紛らわしかったですね。
試行錯誤でいろんな値をつっこんでいたもので。
あとよくありがちなのは構造体のパッキングが64bitだと違ったりするし この場合どうなのか知らんけど
Environment.GetCommandLineArgs(()が、 name="akebono tarou" みたいなargの時にも二重引用符を削除してしまうんだけど、 ("name=akebono tarou" になってしまう) なんで、こんな馬鹿な仕様なの?
仕様 name="""akebono tarou"""
統計的結果が来たぞー
>>210 >プラットフォームによって、IntPtr のサイズが変わるのが原因
正しいコーディングをしないから落ちてるだけだ。
お前みたいなアホは一生プログラム書くな。
222 :
202 :2011/03/28(月) 23:43:45.83
>>216 サンプルであまり見かけていなかったのですが、パッキングなんてのもあるんですね。
参考になります。ありがとうございました。
223 :
221 :2011/03/29(火) 00:07:26.86
>>210 LayoutKind指定してるんだから既にパッキング指定してるのと同等だろ。
MSDNの関数説明が間違ってるから、
最新のWindows SDK 7.1のmmsystem.hを見て正しい宣言に書き直せ。
waveOutOpenの第四引数はUIntPtrが正しい。
命令口調クンって馬鹿だな、まで読んだ。
>>212 なぜint?HWAVEOUTはポインタ型だよ
typedef HWAVEOUT FAR *LPHWAVEOUT;
226 :
202 :2011/03/29(火) 01:24:37.68
>>223 >LayoutKind指定してるんだから既にパッキング指定してるのと同等だろ。
どう言う意味で同等と言っているかわかりませんが、
LayoutKind.Sequential は、定義された順番が変わらないようにするためのもので、
パッキングとは異なります。
>waveOutOpenの第四引数はUIntPtrが正しい。
今回は0を渡してまして、
私が問題としている強制終了の原因にはならなそうなので、今は無視しています。
>お前みたいなアホは一生プログラム書くな。
それなら、もっと参考になる指摘なり助言をしてください。
結局あなたから得るものは何もありませんでした。
>>224 不愉快な思いをさせてしまい申し訳ございません。。。
>>225 waveOutOpen以降のwaveOutWriteなどでは、
HWAVEOUTを直接渡すようになっているため、intにしてあります。
なんで誰も
>>13 に突っ込まないんだよ
includeとusingが同じなわけないだろw
え?めんどかったから
LINQで100倍は差がつく
>>226 不快だと思ったレスは流しなさい。
>HWAVEOUTを直接渡すようになっているため、intにしてあります。
直接渡しても間接でもポインタはポインタだからIntPtrだよ?
>>229 市ね。あっちこっち荒らしてんじゃねーよ。
統計的結果で速度も100倍
ハンドルの受け渡しが分かりにくいならpinvoke.netでも参考にした方がいいんじゃなかろうか。
>>225 言ってる事は正しいがそれHWAVEOUTの定義じゃないぞw
HWAVEOUTの定義はこっちね DECLARE_HANDLE(HWAVEOUT)
それはLINQで書くとどうなるの?
もうええっちゅうねんw
239 :
202 :2011/03/29(火) 02:21:42.53
>>230 失礼しました。
IntPtrの件、理解できました。ありがとうございます。
今はintでアドレスを渡していたので、たまたま動いているだけでした。
>>234 ありがとうございます。
そのサイト、大変参考になりました。
ついにプルトニウムが…
ごめん仙台スレと間違えた
LINQと100倍はふらっとスレに隔離してコンクリート流し込んどこう
早く100倍のコード書けやw
ファイル一覧フィルタ付き取得に、LINQ使ったら簡単じゃねーか LINQはCSVを超えたわー =>ってポインタ->と間違えそうだわ やっぱ糞だわー
.net4でファイル列挙がやっとましになったからな これまでが糞過ぎた
Chartで積み上げ面グラフ(StackedArea)を使いたいのですが X軸の下ラベルが一定の個数を超えると省略されてしまいます。 すべて表示させる事は出来るでしょうか?
LINQは3日使わないと構文忘れる・・・
それはクエリ構文やね
250 :
デフォルトの名無しさん :2011/03/31(木) 00:25:45.66
定期あげ
電子書籍に使われるXMDF(.zbf)のファイルを読み込み、書名や著者名を取得する方法はありますか?
法的に無理 シャープと契約してライセンス料払って仕様書貰え
ファイルからデータ抜くとどんな法に照らして違法なのよ。 それはない。
仕様書は非公開 ライセンシーには守秘義務 だからリバースエンジニアリングするか違法な手段で仕様書を入手するしかない
255 :
251 :2011/03/31(木) 22:20:58.41
無理ですか・・・ レスありがとうございました
) ( ,, ) ) ゙ミ;;;;;,_ ( ミ;;;;;;;;、;:..,,.,,,,, i;i;i;i; '',',;^′..ヽ ゙ゞy、、;:..、) } .¨.、,_,,、_,,r_,ノ′ /;:;":;.:;";i; '',',;;;_~;;;′.ヽ ゙{y、、;:...:,:.:.、;:..:,:.:. ._ 、} ".¨ー=v ''‐ .:v、,,、_,r_,ノ′ /;i;i; '',',;;;_~⌒¨;;;;;;;;ヾ.ミ゙´゙^′..ヽ ゙{y、、;:...:,:.:.、;、;:.:,:.:. ._ .、) 、} ".¨ー=v ''‐ .:v、冫_._ .、,_,,、_,,r_,ノ′ /i;i; '',',;;;_~υ⌒¨;;;;;;;;ヾ.ミ゙´゙^′.ソ.ヽ ゙{y、、;:..ゞ.:,:.:.、;:.ミ.:,:.:. ._υ゚o,,'.、) 、} ヾ,,..;::;;;::,;,::;):;:;:; .:v、冫_._ .、,_,,、_,,r_,ノ′
マンガ脳のコピペ君、まで読んだ。
foreachでremoveしたらバグったぞ STLから何も進化してねーのかよ
つふらっと
>>258 え・・・
それってやっちゃまずいんじゃないの?
YES
それは進化とは言わないような。
みんな初心者に触るのやめようよ!
javaのforeachはどうなの?
Javaはforinな 中身はおなじ
そりゃ「foreachの中でコレクションを変更しても問題ないようにすること」という仕様にして 列挙する前にいったんコピーすることを強制することもできただろうけど 糞遅くなるぞ
267 :
デフォルトの名無しさん :2011/04/02(土) 12:01:30.86
foreachでリスト操作したら例外 ↓ forに変更 ↓ 連続2要素を選択すると2個目が削除できない ↓ 逆順に変更 ここまでテンプレ
てか、そういう処理って大概、LINQ 使って、 list.Where(x => !条件); で事足りるような気もするんだが。
統計的結果がどうたらで使えない
_,,.. -─ '' "´ ̄ ̄二;ー 、.,l`7ーァ / L _______________ 〈\__,.'´ ⌒ヽヽ. i/∠._ / I 全 ´ `' く,__,!へ.,__ゝ__,.--、_ __i、.,_ノ ,ハ ト、_」 ヽ. N く ハ、.,___/ ,ゝ、.,__,!へへ.,__,,.イ_7ニ__ン」、_ i Q : 行 ハ リ そ //´ / Y_ノ | 話. 気 っ イ ン ん |' / ,' / / i /'| i ', |. | な を ち ラ ク な | i i i 」___i ハ | |_|_」ニ、.i | | ん 抜 ゃ ル. が. に | | .| | _」=-‐r !_」 'i r| !」__」 ノ だ. く い. 地 好. | | .|__レi'「 .!、_,り `'´,,7 | / か と な 方. き |', └‐ | .| ,,, ' ! | ヽ. ら す さ で. .な |ヘ .| ,ハ. /´ ̄i ハ | |. ぐ い. も. ら. ,.>、''"´!イ i`>.、._!___,ン,.イ | | //ヽ、.,_______ . ! ! / Y>.、| ハ `ヽ、__,! |. | ! ト、._ ´ / /ヽ、ヘ! '; !_,,. --‐'─,ァ !/」 _____________,,..イ ,ィ´ ハ !_,.r''7 、 ヾ!T´ヽ、イ<] | _,.‐'" / / 、 ヽ,ン' !ヘ / ハ! ヽ.
マンガ脳の恐怖、まで読んだ。
LINQはスレ違い。 いい加減にしてほしい
273 :
デフォルトの名無しさん :2011/04/02(土) 16:25:44.23
いまPictureBoxを継承して独自のコンポーネントを作ろうしているのですが、 x64でビルドしてフォームに貼り付けようとしても、なぜか貼り付けられません。 Any CPUでビルドすると貼り付けられましたが、そのままx64にしてデザインな起動すると、 「タイプ 'WindowsFormsApplication1.Class1' が見つかりません。」と言うエラーが発生して、デザイナが表示されません。 PictureBoxはx64では使えないと言うことでしょうか?
日本語として成立してない文章って読むとなんか腹が立ってくるな
できる。以上
276 :
273 :2011/04/02(土) 16:47:18.96
結局わからないってことね。以上
277 :
デフォルトの名無しさん :2011/04/02(土) 16:52:37.95
x64でもPictureBox使えるにきまってんだろ、そういう製品なんだから それでも使えないと思うんならConnectに書いてこい 貴様のWindowsFormsApplication1で起きている問題も推測がつくが、終了しているらしいので特に書かない
278 :
275 :2011/04/02(土) 16:55:08.88
言っておくが、AnyCPUならともかくx64ターゲットだと 32ビットのVisual C#はデザイナーで読み込めないぞ。 x64のDLLはコードで貼り付ける。
279 :
273 :2011/04/02(土) 17:24:43.27
何故x64限定? ついでに今時WinFormはどうかと思う
俺もそう思うが客先もそうだとは限らない
x64での動作が指定されたとしてもAnyCPU禁止となる 理由がわからないし、調整力が足りないだけじゃないの
x68コンパイルは地雷だらけ。
どこからx68が出てきたんだよ
x86DLLぐらいエミュレートして読んでくれないと。 MSは手を抜きすぎ。
いい加減にx86は死滅しろよ
アホス
ならおまえが過去のライブラリをx64に移植してくれ。
289 :
デフォルトの名無しさん :2011/04/03(日) 21:49:28.19
LINQいいよね〜
コンソールへの文字出力についての質問です。 場所(行、列)をしていして好きな場所に文字を出力することは出来るのでしょうか? それはwriteへの引数で指定で実現かのうなのでしょうか。 もしよろしければ参考になるURLなどおしえいただけますでしょうか・・・。 よろしくおねがいします。
>>292 どもです、Cursor系で位置を設定できそうなのでテストしてみます。
ありがとうございました。
public void Start() { string a = "うんことれびあーん"; var task2 = Task.Factory.StartNew(() => { Thread.Sleep(1000); MessageBox.Show(a); }); return; } なんでローカル変数aにアクセスしてもいいんだ? これ危ない?
そういう機能なので全く問題ない クロージャ でググれ 実際にはaはローカル変数じゃなくて自動生成された隠しクラスのメンバになって そのインスタンスがヒープに作られてクロージャに関連付けられる
>>294 GC搭載だから、どっから参照されてれば破棄されることは無いんじゃね?
a自体がヒープにあるのかも試練し。
コンパイラが頑張ってこんな感じのコードを生成する class Hoge { public string a; public void Hage() { 匿名メソッドの中身; } } public void Start() { var hoge = new Hoge(); hoge.a = "うんことれびあーん"; var task2 = Task.Factory.StartNew(new Action(hoge.Hage)); return; }
>>297 Startのローカル変数と思って書いても
匿名メソッドで参照されると匿名メソッドのメンバとして登録されるってこと?
class MainForm : Form
{
public string a;
public void Start()
{
var task2 = Task.Factory.StartNew(() =>
{
MessageBox.Show(a);
});
}
}
こう書いた場合も、aが匿名メソッドのメンバになるの?
>>298 その場合は、匿名メソッド(というかラムダ式)は
MainFormクラスのインスタンスメソッドになる
ちなみにインスタンスフィールドも参照しない場合はstaticメソッドになる
XmlTextReaderで、テキスト中の文字参照を展開して読み出すにはどうすればいいんでしょうか?
どうするもなにも勝手に展開されるはずだが 実は実体参照の話とか?
他に同じ変数に書き込みを行う可能性のあるスレッドがあって かつその変数の幅が32ビットを超えるならlockが必要
>>302 lockが必用になる場面を網羅的に覚えるよりも、そもそもなぜlockが必用になるのかを
ちゃんと理解するほうがずっと簡単だし応用が利く。
>>297 本当?おれはそう言う自動生成はされないと思うけど。
a の値は、匿名メソッドの中で展開されずに、実行時に参照される。
つまり、匿名メソッドが実行されるまでの間に、a を書き換えると、匿名メソッドの動きも変わる。
試してなくて申し訳ないけど、以下の場合、メッセージボックスには、2回とも「てすと」と出るはず。
出なかったら、あーそーなの?ごめんなさいってことで。
string a = "うんことれびあーん";
var task2 = Task.Factory.StartNew(() =>
{
Thread.Sleep(1000);
MessageBox.Show(a);
});
a = "てすと";
var task3 = Task.Factory.StartNew(() =>
{
Thread.Sleep(1000);
MessageBox.Show(a);
});
なんかもやもやするわ〜
>>305 >>297 で合ってるよ
var hoge = new Hoge();
hoge.a = "うんことれびあーん";
var task2 = Task.Factory.StartNew(new Action(hoge.Hage1));
var task3 = Task.Factory.StartNew(new Action(hoge.Hage2));
return;
こうなる
308 :
307 :2011/04/05(火) 23:31:38.97
訂正 var hoge = new Hoge(); hoge.a = "うんことれびあーん"; var task2 = Task.Factory.StartNew(new Action(hoge.Hage1)); hoge.a = "てすと"; var task3 = Task.Factory.StartNew(new Action(hoge.Hage2)); return; 2回とも"てすと"になるのは当然でしょ?
いい加減2chだからって無理してウンコだチンコだアホなこと書くのって 止めたらどうだろう。 かっこ悪いと思うんだがな。 もう2011年だし、2ch含めてwebなんてただの日常だろ。 そんなこと書かざるをえないほど抑圧されたつまらない実生活送ってるのかなとか 要らんこと詮索しちゃうよ。
え?リアルに小学生なんじゃないの?
312 :
デフォルトの名無しさん :2011/04/05(火) 23:46:09.31
最近の小学生はラムダ式も習うのか…
気にしたこともなかったが、気になる人は気になるものなんだろうな。
LINQいいよね〜
C#のラムダといえばよく出てくるこれだな。i と j で結果が違う。 using System; using System.Linq; using System.Collections.Generic; class Test { static void Main() { List<Action> actionList = new List<Action>(); for(int i = 0; i < 10; ++i) { int j = i; actionList.Add( () => Console.WriteLine("i={0}, j={1}",i, j) ); } foreach (Action f in actionList) f(); } }
rubyとかだとループ変数のiがブロックの引数だからスコープがブロック内だけど forのiのスコープはループ全体だから一見直感的じゃない挙動になる 純粋にforの仕様のせいなのにそれをクロージャの実装の問題だと思い込んで C#のクロージャはクロージャじゃないとか抜かしてるブログとかあるけど C系の言語でレキシカルクロージャを正しく実装したらそうなるってだけ
エクステントの問題だろ
319 :
デフォルトの名無しさん :2011/04/06(水) 15:42:56.79
どちらかというと.netの質問と呼ぶべきですが・・・。 C#のフォームアプリで使える、PDFのプレビュー・印刷を行えるコンポーネントはあるでしょうか? 無制限配布ライセンスを締結できるなら有料でかまいません。 今はブラウザ経由でAdobe Readerを呼び出してますが、IEとAdobe Readerの二つの環境に依存しているので、ポロポロと環境がらみの障害が出てきてます。 もし可能ならば、表示や印刷も全てコンポーネントに含んだ形で配布を行いたいのです。 ちなみに表示させるPDFを作るのは、純正のAdobe Acrobat 9とiTextSharpでやっています。 一応、アンテナハウスの「自在眼11 SDK」というモノが条件を満たしそうですが、他に選択肢があればアドバイスをいただけますか? 以上、よろしくお願いします。
>>319 グレープシティーが販売しているやつだとだめなん?
>>315 コピーするか参照にするかは言語設計上の重要なポイントだが、
C++0xは利用者に判断を任せた。らしいといえばらしい。
// for vc++2010
#include <iostream>
#include <vector>
#include <algorithm>
#include <functional>
int main() {
std::vector<std::function<void()>> v, r;
for (int i=0; i<10; i++) {
v.push_back( [i] { std::cout << "v = " << i << std::endl; });
r.push_back( [&i] { std::cout << "r = " << i << std::endl; });
}
std::for_each(v.begin(), v.end(), [] (std::function<void()> f) { f(); });
std::for_each(r.begin(), r.end(), [] (std::function<void()> f) { f(); });
}
322 :
319 :2011/04/06(水) 19:50:26.61
>>320 LEADTOOLSですね。ご紹介ありがとうございます。
再配布無制限なら、まぁこの価格は高くはないでしょう。ReadとWriteのライセンスが分かれているのがちょっとイヤですが、
>>319 のとおり、PDFを作る方は既に目処が付いていますからね。
トライアル版はImaging Pro Suite(のトライアル版)に含まれているらしいですが・・・。
これって「Imaging Pro Suiteを買って更にプラグインのライセンス買わないと再配布禁止」とか言わないですよね?
まぁ、両方買ってもそんなに高いモノではありませんが、どうもグレープシティの商品には、こと値段に関しては疑い深くなってしまいます(苦笑)
324 :
319 :2011/04/06(水) 20:12:25.44
>>323 おっと、落ち際にお返事が。
……コロッコロ変わるんですよ、コマンドラインオプション。
しかも、同じオプションで意味が変わったりもするし。
まぁ、もともとサポート外なのであまり贅沢はいえませんけどね。
動画のアクセス回数を調べたいのですが C#でできますか? できるならやり方教えてください
とあるゲーム(おそらくVC++、DirectX)の起動ランチャを作ろうと思いProcess.Startで起動させたのですが、 起動自体はするもののゲーム側が画像などのリソースを読み込めずに強制終了する、という現象が発生して悩んでます Process.Startの引数に直接ファイルパス、またProcessStartInfoを作成してUseShellExecuteをfalseに設定してもダメでした これはゲーム側の問題なんでしょうか? ゲーム自体はインストールCDのオートランアプリケーションから起動することが出来るので別アプリケーションから起動できない、という事はないと思うんですが…
作業フォルダ設定しても動かないの?
>>327 作業フォルダ設定したら動きました、ありがとうございます!
ズコー
>>325 >動画のアクセス回数
webページへのアクセス回数ってこと?
そういや.NETアプリでも作業フォルダの指定って有効なんだろうか
WindowsにもNTFSにもそんな無駄な機能はないよね。
Interop.WMPLib.dllのIWMPMedia.getItemInfo("UserPlayCount")かな
え、メディアプレーヤー通して再生しないと反応しないとか言わない?これ
336 :
325 :2011/04/06(水) 23:50:54.71
うーん、ちょっとみなさんズレてますね 俺が考えたのは、定期的にアクセス日時を取得して 変化があったものをカウントしていくって方法なんだが もっとスマートな方法ないの? もちろんビューアーに依存しない形でね
アクセス日時の更新って切れるからなあ
>>336 WMP以外のプレイヤーのAPIも調べて再生回数を合計すれば?
NTFSのLastAccessTimeは最悪1時間周期でしか更新されんぞ。 あとVista以降でデフォルトOFF。
まあそんな機能は用意されていないのでスマートには無理なんじゃないかなぁ CreateFileをフックとか無茶だよなぁ
その辺の話まで行くとスレ違いになっちゃう
343 :
325 :2011/04/07(木) 02:53:21.42
どうやらこの掲示板を買いかぶり過ぎてた。ちょっと失望。 ま、いっか、英語の掲示板あたってみるよ ありがとねん
344 :
325 :2011/04/07(木) 03:48:21.47
成りすましするなアホ
ビューアー依存はやだけどファイルシステム依存はいいのか
c#って今後流行る見込みある?
現在進行形だけど
登場してから10年近くだっけ? 言語としてはまあまあの方じゃね? Flashの代わりもできるようになったし サーバーサイドも書けるし
LINUX、APATCH、DB(何か)、C#でWEBアプリかけるようになってるんだっけ? つかたぶんMONOプロジェクトの派生物で動作させることになるから、 まだC#のコンパイルできるバージョンが2.0とかなのかね。 プラットフォームの.NETバージョンもそんなにたかくないんだろうね。
C++とC#の違いを簡単に頼む
++
>>354 C#側の話。
・GC搭載
・Linq搭載
・MONOが面白い。
・GUI標準装備。
・マルチメディア機能も初歩ながら標準装備
C++側の話
・マシンネーティブ。
・スクリプト系に多い機能を次の拡張でたくさん取り込む。
・関数が単体で定義できる。
・テンプレート最強伝説
などなど、異論は認める。
実行時のボタンをユーザーがドラッグ移動できるようにしたいんだけど 結構面倒なコード書かないと無理ですか?
OnMouseMoveをオーバライドして座標=マウスPOSって感じにすれば動かない?
うんまあ、普通はマウスポインタの移動分ドラッグの対象も移動させるんですけどね
{1,2,3,4} {3,4,5,6、7}} こんな感じで多次元配列で要素が可変のデータを扱う場合 どういうクラスを使うのがいいですか?
ジャグ配列じゃだめなの?
DictionaryにList突っ込むかDictionaryの入れ子とか
ジャグ配列今見ましたが、行の方は最初に指定しないといけないみたいでだめでした 行も列も可変で要素は自作クラスを保持したいのです
可変ってのは後で要素を追加したり削除したりがあるってことでいいんだよな List<List<T>>でいいんじゃね
Dictionaryは確か順不同でしたよね? リストに表示したいので順不同だと扱いにくそう? キーでソートすればいける? 今ListにListを入れ子にしようと思っているんだけど これで問題ないですか? もっとスマートなやり方があったら教えてください
list<list>でおk
C++にあったvectorがねーぞ 劣化かこれ
>>367 List<T>でもそれなりに使えるんだから、そっち使えばよろし。インデックサもあるよ。
List<T>をlinked listと勘違いしてるだけだと思われ
list<list>でやろうとしたけど サブアイテムの要素を取得したりいろいろやろうとすると ListViewのような構造にしたほうがいいんじゃないかって思えてきた 例えば何列目の最後の行の座標が知りたいときに 最後のインデックスを調べたうえで List[idxY].List[idxX].Location などとするのって結構面倒というか・・・ List[].LastCorumnLocation みたいにできたほうがいいですよね?
ほねっこ食べて〜
今回は関係ないけど多次元配列を目の敵にしてる奴って何なの?
行列で挫折した数学できないゆとり。
目の敵も糞も、普通はまずそんなものに出番はない>多次元配列。
>>373 がもし頻繁に使ってるのなら、それはたぶん多次元配列が目の敵にされてるというより
あんたが馬鹿にされてるんだよw
もっとアホみたいに単純な別の方法で書けってね。
>>374 そう言ってる本人が一番それに近そうだねw
行列は普通ただの2次元配列だ。
>>371 IList<T>実装して、LastCorumnLocationプロパティ定義すればいい。
インデクサの添え字は複数指定できるってのも覚えとくと役立つかも
public int this[int x, int y]
{
set{this.array[x][y] = value;}
get{return this.array[x][y];}
}
>>373-375 今回は関係ないな
>行列は普通ただの2次元配列だ。 図星だったか。
>行列は普通ただの2次元配列だ。 これは・・・
コレクションが現在の所持数を保持してないとおもってるのかなー。
>>376 すげーインデクサか
目から鱗でした
ありがとうございます
List<List<T>> L L.Count()//保持してる行数 L[0].Count()//ゼロ行目の保持数 L[X][Y]=Z//要素へのアクセス。 これだけだと思うんだけど不満?
>>379 保持していると思ってますよ
ただ、そこから計算して結果を返すなんてときに
毎回式を書くよりそういうプロパティがあったほうがいいと思ったので
他にもいろいろ普通のコレクションじゃできないことをやりたいと思ってますので
プロパティを使わないで簡潔に書けますか?
あるなら教えてください
おっと解決したか。
384 :
379 :2011/04/07(木) 22:49:23.22
>>382 尻尾がそろってない配列なんだから、結局尻尾の計算はすぐやるか後でやるかぐらいしか変わらん。
尻尾自体は、
if(List.Count() != 0){
return List[List.Count()-1];
}
で求まる。
利便性を求めてるなら、ご自由に。
っていうか、もう解決したのか。
>>381 それだけならそれでいいんですが
何をしようとしているのかというとボタンコントロールをフォームに複数配置しようと思ってます
一行目に新しくボタンを追加したい場合
一番最後のボタンの後ろに配置します。
その場所を求めるのに
最後のボタンの座標とサイズから新しいボタンの座標を割り出します
これを毎回計算していては面倒なので
NewColumnButtonLocationなどのプロパティを作って取得できたら簡単じゃないですか
>>384 if(List.Count() != 0){
return List[List.Count()-1];
}
こういうのを利用する側のform1などにずらずらっと書いていくのは見苦しくないですか?
List[1].LastButtonLocation
と一行の方がわかりやすくないですか?
>L.Count()//保持してる行数
>L[0].Count()//ゼロ行目の保持数
>L[X][Y]=Z//要素へのアクセス。
実際これだけじゃだめですよね?
列や行の要素がない場合のチェックもしなくちゃいけない
利用する側のform1でこれを毎回書くのですか?
ちょと非効率的だと思います
そういうメソッド作ればいいだけじゃないの?
だったら行をクラスにしてそのインスタンスをコレクションに入れて でそのクラスに新しいボタンの座標を割り出すインスタンスメソッドを定義しろ
命令口調クンって馬鹿だな、まで読んだ。
>>385-386 個人的には、foreach大好き人間だから、ズラッと書く前にループにできないか考えるな。
でも、まー、そういう用途もあることは失念してた。すまない。
了見の狭い解答で申し訳ない。
>>387 GetNewButtonLocation()みたいな?
なぜメソッド?
プロパティですよねこういうのは普通
>>388 コレクションを継承したクラスじゃだめなんですか?
なぜわざわざクラス作ってコレクションを内包しなくちゃいけないのですか?
自力でプログラムを書く能力がなさそうな人にいくらヒントを与えても無駄だな 誰かさくっとコード書いてやれよ。LINQでな!
一番いいLinqを頼む
Corumnとか書いたり、わざわざ拡張メソッドのIEnumerable.Count()を使ったり いくら質問者が気に入らないからってそんな微妙な嫌がらせしなくても
>>391 >コレクションを継承したクラスじゃだめなんですか?
その方が余計に面倒だから
要素が追加されたり削除されたりしたときに処理を行いたいことは多い
自分のクラスならAddButton/RemoveButtonのようなメソッドを定義するだけだが
Collection<T>とかから継承してると気にすること多くてめんどくさい
クラスライブラリのパブリックメンバとして公開するならコレクションはちゃんとコレクションを継承するべきだけど
ちょっとした実装でそんなことするのは余計なコードを増やして保守性を下げるだけ
正直、そこはどっちでもいいと思うけど.... ゴチャゴチャしても今の手抜きを優先すれば継承。 手間をかけてもスッキリがよければコンポジション。 っていうか、何の話をしてるんだっけ?
使い捨てのクラスでいいじゃん。 再利用しようと思うな。
>>396 listviewのような構造で作ろうと思ったが混乱してきたわ
やっぱり自作クラスのボタンマネージャーの中にlist<list>を宣言して利用する
まだ再利用(笑)とか夢見がちな少女みたいな奴がいんのか
再利用とか関係なくコレクション継承するのはわかりにくいし扱いにくいよ カプセル化する気がないなら継承よりコレクションをプロパティに持ったクラスの方が楽だと思う
XElementで <p> <div>テキスト1</div> テキスト2 <div>テキスト3</div> </p> 上記のようなXHTMLを読み込ませたのですが、 テキスト2を取得するにはどうしたらいいのでしょうか? ツリー構造が p div div となっていて、テキスト2へアクセス出来なくて困ってます よろしくお願いします
すいません、自己解決しました ツリー構造をelement.Elements()で見ていましたが element.Nodes()で確認するとXTextが入っていました
iniファイル久々に見てワロタwwww
>>404 消えんな、何をするソフトなのか説明してから消えろ
ダウンロード開始がdisableされて進まないんだけど
var ser = new XmlSerializer(typeof(Hoge));//型 'Hoge' を反映中にエラーが発生しました。 var fs = new FileStream("test.xml", FileMode.Create); ser.Serialize(fs, _hoge); fs.Close(); HogeクラスはList<T>をプロパティとして持っているだけです 何がだめなのか想像できますか?
411 :
デフォルトの名無しさん :2011/04/08(金) 17:36:49.23
Tに何いれてんだよ
>>410 Hogeクラスに引数なしのコンストラクタがないからだと思う
あーーわかった、いや、なぜかはわからないが 引数無しのコンストラクタも作っておかないといけないんだな
あとコンストラクタはパブリックじゃないと駄目なので注意しておいて
テレパススレw
ふらっとスレがあんな状況なので仕方ないな
あの荒らしているバカどもは何が目的なんだ?
そのせいでこのスレにアホの子が来るようになってしまった
ふらっとがコピペ爆撃でもされてるのかと思ったら平常進行じゃん
どごがやねん。
いつも荒れてるじゃん
人気が出れば変な人が集まってくるのは当たり前。 一々相手しなければいいのに
ふらっとはキャッチーな基地外がしばしば現れるから仕方ない
それおまえだろ。
すまん、誤爆した。けどなんでレスされたんだ?
精神病なので許してやってください。
見えない敵と戦って楽しいのかねぇ
ちょっとふらっとの方援護たのむ テキストボックスの出力用法が分かってもらえないみたいなんだ あいつらはパスを手打ちさせるつもりなのかと
お帰りください
流石に馬鹿過ぎて援護できんわw
動的に作成したコントロールのコンテクストメニューについてなのですが どのコントロールのコンテクストメニューかどうかはどうやって判別すればいいですか?
質問の状況がわからないが parent みればいんじゃね、とエスパーしてみる
435 :
デフォルトの名無しさん :2011/04/09(土) 08:44:06.10
コンテクストメニューを動的に作成するときにNameに 識別子みたいな情報を付加するかTag(あったっけ?)に 識別用の情報をいれておけば? 最初の階層は上から順に 0000 1000 2000 3000 4000 とかやってさ 1000のサブメニューは 1100 1200 1300 1400
>>430 今までどうやってテキストボックスに文字表示してた?
それと同じ方法しかないぞ。
自動でダイアログ開いて選択内容を反映する機能なんかない。
俺はsenderに一票
parentはおやコン
>>437 そりゃそれを元にコンテクストメニューにキャストしてから
NameもしくはTagをみるんだよ
>>439 俺に解説せんでいいよ
あとコンテキストメニューを動的生成したとは一言も書いてない上、
中間にString等を挟むのも上策とは言い難いからドヤ顔で書く必要もないよ
stingも何もTagに大元のコントロール直接ぶち込んどけばいいだろJK
ContextMenuStripならSourceControlってプロパティなかったっけ
よくある2chブラウザのようなものを作ろうと思っています タブコントロールで複数のスレを開くような設計をしようと思っているのですが タブコントロールをユーザーコントロールにすれば form1に長々とコードを書かなくていいのですっきりしそうなんですが 間違ってないですか? userControlTab.Add("C#, C♯, C#相談室 Part65"); こんな感じでやるとusercontrolTabがページを新たに追加して そこにwebBrowserを作成し、スレの内容を表示するといった感じです
>>443 そもそもform1に長々とコードを書くのは間違い
MVCでググれ
445 :
443 :2011/04/09(土) 18:29:47.72
>>444 今ままでデータの書き換えとそれによるVIEWの変化を
Form1で同じ個所に書いていて不快感がずっとあったのですが
MVCというのをやれば解消されそうです
446 :
443 :2011/04/09(土) 19:25:12.95
MVCいろいろ調べたが大規模なものを作る場合はこれでいいかもしれないが ちょっとしたもの作るのに大げさな気がした 下準備がとにかく面倒 こういうの自動生成してくれるものないの?
自動生成って気軽に言ってくれるなw
ちょっとしたものならform1に長々とコードを書けYO
449 :
443 :2011/04/09(土) 19:52:30.43
MVCするほどでもないが form1に長々書くのは嫌だからユーザーコントロール作って VC部分を分割しようってことなんだがだめなのか?
まあそんなに焦らず少しずつ学んで逝けよ
絵を描くときのあなたは王様です 個人のプログラミングしているときもあなたは王様です
まあ設計時は美しいクラスを書こうとはするけど だんだん最適化してったり機能が増えると汚くなるわ〜 MVCのViewに忠実なタブコントロール作ったとしても 真の目的(2chブラウザの開発)のために他のロジックがコントロールに入り込んでくるのは 仕方ないし当然よね〜
>>449 それでよかよ
まずはTabControlを継承するところから始めて
そのうち不満ならスクラッチから作ったらよかよ
別クラスに処理を書いてFormのイベントにつっこんでやればいいじゃないか。 これなら簡単、かつFormもすっきり
俺はクラスを作りたいんじゃない、アプリを作りたいんだ スパゲッティだろうがうんこトグロだろうが、動けばいいのさ
今までの話はなんだったんだよw
457 :
443 :2011/04/09(土) 20:20:21.52
別クラスに処理ってどこまでの処理? 例えば、ユーザーがボタン追加をクリック public void AddButton_Click() { ボタンリストにボタンのデータを追加 ボタンリストのデータを元にviewにボタンを追加 } form1でこういうことをやっているんだけどさ もうごちゃごちゃになってくるんだよ
応用力ってどうすれば教えられるんだろうか
459 :
443 :2011/04/09(土) 20:29:08.18
たくさんの実例
上の方でも出てるけどsenderとかparent この辺調べてみたらよいよ
>>457 匿名メソッド使って、別クラスでその処理を書く感じ
462 :
443 :2011/04/09(土) 20:40:57.54
コントロールをpublicにしなきゃいけない時点で間違ってる
単体テストの都合もあるし基本はpublicかなぁ ガチガチに作っても、融通効かなくなるだけだし、 ライブラリ作者じゃないんだから、適当でいいと思うんだが
言っちゃ悪いけどそんなの参考にしたらダメグラマの道まっしぐらw formのボタンを公開するんじゃなくて、Controllerのメソッドを公開しろって。
コントロールはグローバルでおk つか、なんでもかんでもグローバルでおk
>>466 いくらなんでもそれはないだろw
>>462 View側に引数でメソッド受けとるメソッド書いてそこで登録する
これだけ公開したらいいよ
低レベルすぎ…と思ったらはてなか、仕方ないな
469 :
443 :2011/04/09(土) 21:05:27.48
>>463 ダメって意見じゃなくて、代案よろしく
>>464 そうか
>>465 デリゲート?
>>467 デリゲート?
適当に書くけど
> _view.ClearButton.Click += new EventHandler(ClearButton_Click);
じゃなくて
ButtonClickデリゲートを作って
View.ButtonClick+=new EventHandler(ClearButton_Click);
という感じで書けってこと?
なんか違う
c++にget setなかったけ?
あープロパティか そっちで出来るならそっちでもよし
プロパティでもコントロール晒すのは良くない どうやって実装変更するんだよw publicフィールドと変わらんわ
474 :
443 :2011/04/09(土) 21:47:00.76
結局正解はなんですか? 否定だけじゃなくて実例あげてください
そもそも、開発したコードを、保守し続けるのかどうかもポイントかな。 一生懸命芸術的なコードを書いても、1年後見たときに、意味がわからなかったら意味がない。 そう言う意味では、ガリガリ書いた方が、単純でわかりやすい。 はいはい。どうせ私はテスターですよ。
>>473 なんか勘違いしとるような気がするな
>>474 view側に
public EventHandler clearButtonClic
{
set { this.button1.Click += value; }
}
こんな感じのプロパティ作って
controller側で
_view.btnclic = new EventHandler(ClearButton_Click);
試してないけどたぶん動く
どうやらこの掲示板を買いかぶり過ぎてた。ちょっと失望。 ま、いっか、英語の掲示板あたってみるよ ありがとねん
>>476 addとremove(イベントアクセサ)使え
あとsetオンリーのプロパティはMSの規約違反
>イベントアクセサ こんなんあったんだな、知らなかった 勉強になったよ。ありがとう
すげぇデジャヴ
ラムーにそんなタイトルの歌があったような
最終的にこういうことかえ View側 public event EventHandler ClearButtonClick { add { this._clearButton.Click += value; } remove { this._clearButton.Click -= value; } } Controller側 this._view.ClearButtonClick += this.ClearButton_Click;
プロパティなんて無駄にコード増えて、遅くなって、面倒なだけで、メリットなし。 数千もプロパティ作るとか考えただけでもうんざりする。
結局正解はなんですか? 否定だけじゃなくて実例あげてください
まず画面なしで操作できるクラスを作成する それができたら表示する部分を作る って手順で書けば嫌でも分離できるだろ
488 :
144 :2011/04/09(土) 22:22:26.34
おちんちん
ふらっとでやれ
>>484 だから、ViewであるFormのコントロールを外部に公開するなんて論外。
そうではなく、Formを制御するクラスの側のメソッドをFormから見えるようにするんだよ。
その上で、コントロール、例えばButtonならButtonのイベントハンドラは
Buttonの所有者であるFormのコードに書いて、その中から必要に応じて「Formを制御するクラス」
のメソッドを呼び出すようにする。
>>485 なんじゃこりゃ
Viewを抽象化するとかマジで意味不明過ぎるだろw
もとの質問者はいなくて 煽りだけが残ったヨカン
494 :
443 :2011/04/09(土) 22:30:37.01
>>482 うーん、なんかしっくりこないね
そもそもクリックってのがどうもおかしい気がする
>>482 だとコントローラークラスがクリックボタン作れよって強制しているように見える
だとしたら、ボタンを公開するのと同じじゃないか?って思うんだよね
View.ListClear+=this.Clear
のほうがいいかなと、例えばボタンだけじゃなくてメニューからもクリアできるとするなら
その分だけ何個もイベント作らないとだめだし、かなり面倒な気がする
あと、
>>462 のサイトでは
void ClearButton_Click(object sender, EventArgs e)
{
_model.Items = new List<Book>();
}
こんな感じでモデルのデータを直接削除しているんだよね・・・これもなんかおかしくない?
ここもデリゲート使った方がいいと思うんだが
あとさ、MVCの説明を他のサイトで見ると、Mの変化をVに通知して、VがMのデータを取得して反映という風に
MとVだけでやりとりしているんだよ。これってWPFのMVVMもそんな感じだったと思う
でも、このサイトのはCを中継しているんだよね、つまり、MとVの状況を把握する必要が出てきて
いろいろ書き足していくと面倒になってくるんじゃないかって思うんだ
>>492 IナントカViewインターフェイスがビューの抽象というよりは
Presenterをビューの抽象(+Controller)と捉えるべきなんだよ
IナントカViewはビューとPresenterの間を繋ぐのに使われてるだけ
そこにインターフェイス使わずにバインディング使うとMVVMになる
MVCで一番問題になんのはControllerだかんな
497 :
443 :2011/04/09(土) 22:37:35.17
>>494 のまとめ
何が言いたいかというと
あのサイトの人がやっていることは
formの partialクラスを作ってコードを書いているだけのような気がするわけよw
手間かけてイベントハンドラの部分だけを他のクラスで書いただけって感じ
WPFの方が楽かなと思うが、Command作ったり、動的なコントロールを作る作業が面倒なんだなこれが
>>494 プロパティやらメソッドの名前は例を踏襲しただけでしょ
名前は好きにしたらいいよ
正解だけ聞いて分かるもんなの? 手順を踏まないと小学生に微積分教えるようなもんだと思うが。
いいかげんMFCの設計が最強だということに気づけよ。 WPFは失敗したんだよ。
501 :
443 :2011/04/09(土) 22:39:14.96
MVCの場合イベントハンドらはVに書くべきか それともCに書くべきかどっちが正解?
>>501 Vに書いてCのメソッドを呼ぶ
意味無いと思うなら意味無いんだろう。web向けのパターンだし。
イベントハンドラ「も」Cだろ
この人って本とか読まず2chだけで勉強すると宣言した人だっけ?
505 :
443 :2011/04/09(土) 22:42:00.58
>>502 ああそうか、そういうことか
よーし、できそうな気がしてきた
ありがとう
>>495 言わんとする事はわかるけどなんか妙な感じ
ViewとPresenterは1対1なんだからもうちょいやり方があるだろうと思う
あと、これにModelがからんだらどーなんのよ
2重定義に近い形をイメージしちまうからすんげー面倒そうなんだが…
>WPFの方が楽かなと思うが、Command作ったり 定義済みコマンドで済むから自前のCommandなんか書かねえよ。 知ったかぶり〜。
>>506 VとPはn対1だよ
>もう 1 つは、同じプレゼンターが、同じアプリケーションの異なるビューを操作できることです。
510 :
443 :2011/04/09(土) 22:52:10.17
MVCの例がもっとほしいな それぞれどこまでするのかがよくわからない 特にCが一体どういうことをするのかがわからない ただ、コマンドの受け渡しをしているだけのような気がする Cで書いていいコードはどこまでなのかがわからない てか、今のところMVCで楽になったと思わないw
そりゃちょっとしたもの向けじゃないからな ゴキブリ殺すのに戦車持ち出してるようなものだよ
>>509 もともとMVCなんて曖昧なものだからイベントハンドラをControllerに移したら
MVCだというのも間違いではないけど、それだとControllerがViewに近すぎる
senderからコントロール取り出せるし、ビューの差し替えも難しい
MからVの依存を切り離すのが役目なんだから CとVがくっついてようがMとCがくっついてようが問題ない
514 :
443 :2011/04/09(土) 23:04:41.22
ふーん、まあとりあえずMVCで作ってみるか
ゴキブリ殺すのに戦車持ち出して全然楽じゃないと怒る消費者
>>513 だったら何で分けるの?という話
それこそ
>>497 の言ってるようにpartialと変わらん
WebアプリでMVCが有効なのだってVとCが物理的に分離されてるからなわけで
517 :
443 :2011/04/09(土) 23:09:30.55
ああ、あとちょっと初歩的なんだけど 名前の付け方なんだけど @clearButton AButtonClear だとどっちがいいの? インテリセンスだと@にした場合関係ないものまで表示されるから Aの方が楽なんだけど プロのプログラマーさん教えてください
だったら何で分けるのって? 潔癖症患者がViewがInputを含んでいるせいでControllerをきれいに分離できないムキィイイイイイイイって言い出したから カッコイイ名前をつけてやったのがMVPなんだよ
PACでいいよ
コントローラークラスがないとMVCじゃないとでも言い出す気なのだろうか?
>>477 自分のレスがコピペされてるとちょっと嬉しい☆
523 :
デフォルトの名無しさん :2011/04/09(土) 23:41:47.21
>>521 それだとMVCのCはどこへいってしまうんだい?
だから何のために分けるのかと WinFormsであえてVとCを分けることにpartial以上の意味があるとしたら、 MVPみたいにしてイベントハンドラを抽象化できるくらいしかないじゃん
結局正解はなんですか? 否定だけじゃなくて実例あげてください
何のためって、それは端的にその方が分かりやすいから。 他にもある(例えば、Viewが別のものと交換可能になるなど)がそれが主要な動機。
527 :
443 :2011/04/09(土) 23:55:20.11
>>524 分ける理由はフィルター以外に無さそうですね
例えば、partialだと直接操作する必要のないメソッドやコントロールも見れるわけで
それがごちゃごちゃ混乱する理由でもあったりする
529 :
443 :2011/04/09(土) 23:57:25.98
ここはすいとんできないのかな?
>>525 はふらっとにいる障害者だと思うが
●あるひとはこいつをすいとんしちゃってよ
そんなことで混乱するような状況がクラス分けただけで解決するか? むしろViewのインターフェイスが複雑になって余計にややこしくなる気が それにあんまり複雑になるならCommandパターンとか使ったほうがよくね? ああ、それも広義にはMVCと言えないこともないか
Viewに複雑なインターフェイスなんてありませんw Viewは他の何かに依存してもいいけど依存されるのはダメ。
MVCやMVPならControllerやPresenterがViewに依存するよ MVPの場合はインターフェイス経由だけど
結局正解はなんですか? 否定だけじゃなくて実例あげてください
ルーピー参上!まで読んだ。
ズーキーパーの悪口はやめろ!
池沼と煽りはだまってC#の#焼いて食ってろ
塩ですか?タレですか?
541 :
● :2011/04/10(日) 11:03:18.99
>>529 suitonしてもいいけど両成敗するからね
スレ立てとか!ninjaしてないレスにもsuiton出来るのか
プログラマなのにそんなことも知らないのか? てか調べられないのか?
スレに関係ねえw
ルーピーズ
>>546 それは仮想メソッドの注意点であって一般的な使い方を解説した物ではないだろう
仮想メソッド
まるで成長していない・・・
せやな
>>546 とにかくコンストラクタから仮想関数を呼ぶのは避けたほうがいいと覚えとけばいい。
複数あるコンストラクタで共通の処理をまとめたいということなら別の方法がある。
ちなみにメンバーフィールドの初期化順序がC#とJavaで違うので比べると面白い。
C#
スーパークラスのフィールドの初期化
サブクラスのフィールドの初期化
スーパークラスのコンストラクタ
サブクラスのコンストラクタ
Java
スーパークラスのフィールドの初期化
スーパークラスのコンストラクタ
サブクラスのフィールドの初期化
サブクラスのコンストラクタ
面白いか?
public修飾子最高ワールドワイドウェブ
WindowsPhoneが流行ればXNAも流行ってC#も流行るかなと思ったんだがどうだろ
お前もstaticにしてやるよ。
>WindowsPhoneが流行れば ジョークがうめぇなあ
なんでこのスレはJavaやC++の話をしているですか?
C#さんのことをもっと深く理解して愛するため
ちょっとお前らふらっとの方援護頼む 全力でおkだ
C#たんの萌え絵を頼む
大体C++やらJAVAをひと通りいじってからC#来る輩が多いからだと思うよ
私Windows Mobile信者だけどWindows Phone 7のWM全否定戦略は気が狂ってると思うの
WM_DESTROY
MSの戦略は気が狂ってないもののほうが少ないよね
だがそれがいい
きがくるっとる
interfaceとabstractのクラスってどういうときにどっちを使えばいいの?
>>568 あるクラスを作るときのメモ帳みたいなもの
interface 新たに作る小規模なクラス abstract 大部分が同じ機能で一部違いを出したい
全部インターフェイスでもいいよ 同じような実装が出てくるならそのインターフェイスを実装した抽象クラスを作る ただし、インターフェイスは後でメンバを追加できないので クラスライブラリで公開されるようなもので後で変更する可能性があるなら抽象クラスの方がいい
interface とabstruct のclassの違いは分かったが、 今度は仮想メソッドと抽象メソッドの違いというか どういった使い分けをするのかがこんがらがってきた 誰か解説お願いします
使い分けもクソもないよ 抽象メソッドは実装を含まない 仮想メソッドは実装を含みオーバーライド可能なもの
>>573 仮想メソッド こんなのがあったらいいな〜って感じ
抽象メソッド こういう雰囲気のが作りたいな〜って感じ
ふらっといけよ なんで参考者も読んでない奴に構うの?
ふらっとより相談室の方が慈悲深いから
優越感を得るため
ふらっとで煽ってる奴が相談室だとしれっとしてるんだよな。 何が面白いのか全く分からないけど。
ふらっとの話はするな
お前みたいに文句しか言わない奴より 答え教えて誰かの助けになったほうが有意義だろ お前典型的な低学歴クソ日本人思考だな はいはい中国人韓国人
ふらっとに隔離しようと思ってもそうはいかん、そうはさせん
そうでしたっけ、ウフフ
こいつらC#スレ荒らしたいだけなんだよ 多分厨房が多いRuby信者か リストラされた暇人だな
あー強制IDになんねえかなあ
てか、どんどんすいとんしようぜ
厨房とか言っちゃう奴の大半が低学歴な件
お前ら自分で盛り上げることもできないのか? 自分でネタも考えられないの? ふらっとであばれてればいいじゃないか なんでこっちくるんだよ もう完全に病気だな 質問者煽るのが楽しくて仕方がないんだろ? どうしようもない人生送ってそうだな
一度に3つも質問スンナよ
最近はすいとん荒らしもひどいからなw
ほらwもうレスしたくてたまらないほど中毒なんだろ お前の人生目に見えるようだわ 精神異常者に何言っても無駄だな あとは好きにしろ
有料●じゃないとsuitonできなくなったから_ つかsuitonしたって2分したら書き込めるんだで 意味ねーよ
まあ真面目な話、本当に困ってる場合はあえて2chで質問する理由はもう何もないな。 ここで下手に質問しちゃうと、まともに回答返ってこなくても他で聞きにくくなっちゃうし。 日本のweb社会の嫌なところだけど、他の掲示板には荒らしこそ少ないけど、 なぜかマルチポストだけムキになって監視してる変な奴は必ずどこでもいるからな。 特にdobon氏のところとかw 何だろうなあの人の家のゴミ出し監視してる更年期のオバハンみたいな奴。
海外掲示板崇拝者が現れたのはここ最近だな
荒らしとストーカーは暇な奴しかできない
深夜に書き込みしている奴はどんな生活しているのかと
睡眠3時間なんてふつうにいるから。
睡眠不足になるぐらい荒らしているのか ごくろうなこった
その無知なレス。おまえかふらっと荒らししてるのは。
またお前かって言うだけの
>>602 何が無知?俺は荒らしている暇人に言っているんだがな
で、お前は2ちゃんに何時間かぶりついて何してるの?
>>603 ふらっとに帰れ
>>604 いや、おまえのレスに言ったんじゃないんだが。
おまえは瞬間湯沸器かよ。
睡眠3時間だから何? 2ちゃん荒らしていいとでも? 仕事の能率が悪いんだろw 2ちゃん荒らしている暇があったら仕事しろ
デジャヴが始まる伊予かん
暇だから2ちゃん荒らしているんですよ 暇だけど3時間しか寝てません 暇だ暇だ
睡眠3時間ってどんな会社よw
ふらっと帰れよカスども 何が目的だ C#で嫌な思い出もしたのか? 日本からプログラマ無くそうというささやかな行為か? 若くて成長著しい人に対する嫉妬か? 人生終わった人間だろ
ゆとり妬んでるのは例のおっさんだろう
睡眠3時間で深夜も2chしてますって意味じゃなくて、 どんな生活してるのかって言うから、 短眠な人もいて深夜起きてる人もふつうにいますよって意味でレスしただけ。 そんなに熱くなることないだろ。
逆だな。ゆとりが使えなくて不満がたまってんだろ。 英語できません、数学できませんとか、ゆとりは大学で何してたんだって話だ。
ゆとりって言っちゃうのも低学歴だけだけどな
裏を返せば使えないゆとりしか入ってこないような会社にお勤めなんですね ぷくく
薮蛇ワロス
大学で情報処理の授業のときほとんどプログラミングできない奴ばっかりでびっくりしたわ レベルが低すぎて授業受ける気しなかったな
>>616 かわいそうなお前
そうやってなんとか優位に立とうとしているんだな
でも無駄だよ見透かされているから
お前の人生終わってるな
あーかわいそ
そんな必死こかなくていいですよ はいはいわろすわろす
>>619 1行目から優位に立とうとして滑ってますねお兄さん
>>616 そうなのです。
仕事を貰うために天下りを受け入れてから、使えるゆとりなんか入ってきやしません。
すべてコネばかり。そもそも本当に使えるゆとりなんているのか疑問ですが。
昔は、新卒で、一種やソフ開、ネスペを取得した新人がちらほらいたものですが、
今は皆無です。
>>620 そうやって必死にレス返さないと耐えられないんだねこの中毒患者w
お前みたいに2ちゃん荒らしているような根暗な人間は
どの会社でもお荷物
てか、雇ってももらえないだろうなw
It is [fura] and can the return is [ga] how many ..fuck-shit.. purpose. Were unpleasant memories done by C#? Is it a small act of saying when ..programmer.. eliminating it from Japan? It is young, and is does it write and the envy of growth to ..saying.. [nin]? Man [daro] that ends life
機械翻訳ww
自動化できないんですかってゆとりがすぐ言うんだが。 自動化するのが俺達の仕事だってのに。
>>622 そんなの当たり前だろ
今まで閉鎖的にやってきたツケが返ってきたんだよ
同じ事が2chでも行われている
質問者がこないということは、回答者も育たないということだからな
そうやって廃れていけばいいよ
俺は趣味でやってるだけだから、その業界がどうなろうと関係ないがなw
趣味でこれは凄いな プログラミングは性格を歪めるね
>>626 やっぱりお前荒らしだったなw
せいぜい人生の貴重な時間を2ちゃんで無駄に使ってくれ
そうやってお前が落ちぶれていくのが俺の幸せだからw
単芝ちゃん興奮しすぎだろ
お前ら専門卒?それとも底辺大学卒?
ID無くとも分かる奴は分かるなwww
>>630 今日、総合スーパーに行ったんだ。
でも何も欲しいものがないんだ。
お金と時間があっても人生そんなもんだ。
ほら、早く学歴を書けよ。
さて、俺は彼女と食事に行ってくるから お前ら童貞ハゲおやじはせいぜい2ちゃんにかぶりついてろwww
訳) 猫に餌やって寝るわ
今の大学の偏差値見たら恥ずかしくて書けない。 多くの大学が昔と比べて偏差値が5〜10ぐらい下がっててへこむ。
今日も街に警報がなる。 最近とみに増えた中国系海賊による襲撃だ。 私は銃を手に自分が襲われるのではないかと不安になる。 彼らの今回の目的はなんだろうか?
こういう流れだと質問する人もこないな そしてさらに荒れて過疎っていく
電波工業高等専門学校
ルーピー賞!
東大中退
配布するときdllだらけ ILMergeでは、成功せず いい方法ないか?
マルチモジュールアセンブリにしたら"アセンブリは"一つになるよ かわりにnetmoduleファイルだらけになるけど
dllだらけで何が問題だと思うんだろう.... 別に煽ってるわけじゃなくて純粋に疑問
.net4.0からはCOM interopアセンブリが埋め込めるようになって助かる
確かにプログラミング始めたばかりのころは俺も なんでもexe一つにまとめた方がカッコいいと思ってた気がする。 いつのまにか全く気にしなくなったな。余計に面倒だし。
相互運用型の埋め込みだっけか 無条件で埋め込めるわけじゃないのが玉に傷
本体のexe探すの大変だろ 17から1個の本体さがすのめんどすぎ
業務開発だと百個単位のアセンブリが1フォルダに同居してるのが普通だからなあ
>>650 何のためのアイコンだと思ってるの?
っていうか、それはさすがにエクスプローラの使い方覚えた方がいいんじゃ...
せめてサブフォルダに保管できればいいんだけどな
(((((( ;゚Д゚)))))GACGACブルブル
インストーラ作るの面倒
たるいッス
>>648 むしろ逆にリソースだけのDLLとかむやみに分割して「モジュール感」を出すのがカッコイイと思ってた
どうやるの
>>652 デフォルトで拡張子を表示させないMSが悪い。
プロジェクトのプロパティに参照パスってありますよね
>>661 そのレベルの人対象なら、デプロイメント時に隠しファイル属性つけちゃえば
何も問題ないじゃん。
昔、DLL地獄といのうがあってだな。
DLL地獄は共有されるDLLの問題だろ プライベート配置なら全く関係ない話
SxS地獄に名前が変わっただけです。
個人でも複数アプリ開発すると発生するんだが。
SxS地獄は先祖返りが多発するんだよな。 古いDLLも生きてるから、何度でも蘇える。
バージョン打てよ
コンソールアプリのことで質問です。 コンソールアプリでマウスを利用したいのですが可能でしょうか? クリックされたボタンとマウスの現在座標をドット、または行列で取得できたらよいのですが・・・。
PInvokeすればできるんじゃね "コンソールアプリ マウス"でぐぐった最初のやつにだいたいのやり方あったけど
コンソールウィンドウのHWNDを取得しちゃえば何とでも
>>671-673 レスありがとうございます。
ウィンドウのハンドルを使う以外なさそうですね。
もうちょっとしらべてみます。
Zlibのcompress()関数に相当するコードは.netの組み込みクラスだと何を使えばいいんです?
Zlib知らんけどGZipStreamとか?
zlib知らねえとかマジかよ 相談室レベル落ちたな
>>677 知らんというか使った事が無いてことじゃない?
まぁそう噛みつくなよ
普通、統合アーカイバ使うんじゃねーの。
普通アーカイバもコンプレッサーも自前でかくでしょ。
いや自分で圧縮したファイルだったらそうなんだけど、 Zlibで圧縮されたどこぞのゲームのアーカイブファイルを展開するコードをC#で書きたかったんですよ。 System.IO.Compressionは互換性に問題があるみたいなので大人しくZlib.netを使うことにしました。
あんまりWin畑だと関係のねえ話だな
.NetはGZip持ってたのか。しらなかた。
今後C#が流行るのか疑問な件
GZいpStreamとDeflateStreamはどっちがどっちだったか良く忘れる
持ってなかったらAccept-Encodingでgzipやcompress書けないだろ
gzipとdeflateの違いを分かりやすく
どっちがRFC1950でどっちがRFC1951だっけ???
GZいpが1952、Deflateは1951+1950
>>684 安心しろ
お前らで流行ってないかも知れんが
案件は結構ある てことは将来の保守もある
つうか最近はJavaで炎上したプロジェクトをASP.NETでやり直す
てのがちょこちょこある
何故わざわざJAVAからASP.NETにしたいのかは理解できないが・・・・
ちょっとまてそのASP.NETはVBかもしれんぞ。
VB6をVB.NETにするのは分からんでもないが 新規のASPでVB.NETを選ぶ理由ががが
まぁC#でもVBでも速度同じだしなぁ… まぁ慣れてる方でやればいいんじゃない? ただVB.NET使うと変数きる時に型から入力しちゃったり文末にセミコロン入れちゃったり まぁ文法体が思いだすまで少しめんどくさいよね
694 :
デフォルトの名無しさん :2011/04/13(水) 18:39:14.08
LINQいいよね〜
()=>が開放されるのは ()=>のクラスが開放される時でおk
突然何を言い出すんだ 何かと交信してるのか
usignはDisposeを呼び出すだけで結果的にCloseが呼ばれるけどそれは本来の用途ではない ふらっとではusing使っててもCloseは呼んだ方がいいということが分からないようだ よかったら支援してくれ、お前らの力が必要だ
応援してる。 using使っててもCloseは呼んだ方がいいよ。
今まで一度でも支援してもらったことあんの?
誤字が増える病気ってあるよね、確か…
ふらっとも見てきたけど、議論の内容よりそっちが気になるわw
list<box> for(~~~ list[i].x = 100; 変数ではないため、〜略〜 の戻り値を変更できません。 なんでや
boxってなに?
box型が構造体なんでしょ ありがちなエラーだね
ふらっとの
>>212 が一番まともなこと言ってるよね
なんでふらっとのクズ虫どもが沸いてんだよ
>>707 はっはっは〜。アクセス権無いのに変更できるわけがないじゃないか。
値型は値として振る舞ってるからな・・・
値になるとかC++より劣化してるじゃねーか
何のためにstructにしてんだ?
C++出身だから値のパッキングには構造体と決めてかかってるんじゃないかな
>>711 自分でわざわざ構造体にしておいてそれはないわw
何がしたいわけ?
C#では一般的にどうするんだ
必要がなければクラスにする
class box { pub int x {setget} pub int y{getset} } こうか?
>>719 こうか public class box
どこのアクセス権限のことだ?
いや、アクセス権じゃなくて値型だからでしょ?
そっちじゃねえよwメンバのほうだ
リフレクションを使えばいいんだよ
classにすると速度遅いイメージがあるのだが 変わらん?
アホな質問する前に少しはググレよtonight!
ゲーム作ってるとかでなければ常にクラスでいいよmidnight
メンバ合計6byte以上あったらclassの方が良いよとかMSDNに書いてなかった?
クラスだろうが構造体だろうが、そこらへんの速度差気にしてる時点でC#ってどうよ?って思い、 クラス作ってしまってる。
そんな疑問が出てくるレベルなら絶対にクラスの方がずっと速い
ふらっとの方応援頼む
>>730 ループとか再帰の深いところで細々と new しまくると目に見えて速度落ちるよ。
ちゃんとやればネイティブとそん色ないような速度出る場面で、10分の1とかなることもある。
それがボトルネックであることを祈る
再帰はともかくループ内でnewしまくるとかリファクタリングの対象だろ
え、ループ内でnewなんて普通にするじゃん?
速度が必要な場合は糞遅いからしない。
まあ、実際の最適化はプロファイラーに掛けてみてからとは思うけど、 大体は、ループ内のnewはメソッドのパフォーマンス落とす (という結果がプロファイラーにもろに現れる)。
ループ内newが必要な場面で構造体にしたらもっと遅くなるJean
741 :
デフォルトの名無しさん :2011/04/14(木) 07:20:29.76
>>740 クラスだと、ループ一回ごとに新しくヒープからとってきて前回のループでとってきた
メモリは捨てられて、構造体だとスタック上にとられたメモリを使いまわすから
構造体のほうが速そうってイメージだけど。
最近想像でものを言って失敗した人がいたっけな
スタックとヒープの速度差知らない馬鹿っているの?
745 :
デフォルトの名無しさん :2011/04/14(木) 10:31:42.43
>>743 無知のレッテル貼りはふらっとに帰れよw
>>744 それってループ内のnewが問題なではなくnewの問題ジャン
誰のこととは言ってないんだけど何か痛いところでもあるの?
748 :
デフォルトの名無しさん :2011/04/14(木) 10:44:33.18
真昼間に5分でレス返す程度の心の傷です
ふらっとでやれ
>>743 実験したら構造体のほうが速かったよ > ループの中のnew
>>740 と
>>742 なら742のほうがもっともらしいけど、なぜか
想像で物を言うなとかあおられるのは742のほうな。
ま、実測しないとわからないってのはその通り。
てか数が決まってるならキャッシュ作るとかかね。 インスタンスを保持しなくて良いならループの外で作っておいて再利用かな。
スピードを気にする部分はCで作ればいいだけだし・・・
いまどきCで作るならマクロアセンブラで書いたほうが自由奔放にできていろいろらくだよなー。 Cで書くならC++使いたいし。
>>742 この程度の検討も付かずにC#でコードを書いてる人が
Cでコードを書いたってそんなにパフォーマンスよくなるとは
思えない。
C最適化しにくいって言うしね
まあ、早くなるのは、Cで書いた上で、MMXとかSSE命令に最適化してくれるコンパイラーを使った場合ね。 MMX化されやすいコードの書き方とかに慣れてる必要あり。
unsafeって実務では非推奨的な扱いなの? 学生の俺に教えてくれ
unsafe、そもそも必要に思う場面がないからなぁ。 実務だと規約的に禁止してるところも多そう。
>>759 unsafe, linq, ジェネリックは禁止です。
クラスやインターフェース、enumも作成するときには届出をしないといけないので
だれも使いません。
コレクションクラスも使用すると白い目で見られるので、なるだけ
配列で済まします。
なんでC#使ってるの?
RDBMSを単なる直列化に使うような感じ
unsafeはまず使わないが他は使う。
>>761 こういう職場にコードを普通に書ける新人がはいってくると
ベテランは「素人が中途半端にかじってるとダメだ。
なにも知らない新人のほうがクセがなくて教えやすい」とか
言い出す法則。
自分の庭に引っ張ってこようとするとそうだろうね。
90%のメンバにstaticつけてる俺の上司みたいだな
いいんじゃないの その新人も遠からず辞めちゃうでしょ 居ても意味無いからって
全部にstaticを付ければ流行の関数型言語みたいになる
>>767 みたいなコード書く奴はほとんど戻り値を使わない
関数ではなく「サブルーチン」と呼ぶ
ならねーよw ラムダ式とか、高階関数禁止なんだろ、どうせw
実務じゃなくてもunsafeなんか好き好んで使うものじゃないだろ 部分信頼やSilverlightなどでは弾かれるし
メソッドはreturn thisとするんですね
Basicインタプリタから抜け出せない上司
漢ならExcelで書かれた仕様に沿ってエラーコードをintで返せ
>>774 VB6をやってた連中って、VB.NETとC#は大差ないよとか言うとびっくりするもんな。
最近enumの存在を教えてあげたら喜んで使ってる 正直なところ後悔してる
嬉々と歓談中のところ水を差すようなこと言って悪いけど、 俺の経験上、ダメな奴の話を嬉しげに語る奴は、そいつ自身もたいがい無能だ。 デキる奴はダメな奴になんか関心向けないしねそもそも。 ダメな奴に関心が向くのは、たぶん自分よりダメな奴がいると思わないと不安だからだろうな。
そのダメな奴らにわざわざ噛み付くお前もな
言ってどうにかなるうちは本人に言えばいいからねえ。
仕事のできない同僚はともかく、訳の分からん寝言のような規約を押し付けてくるユーザー企業はどうしようもないし
>>778 もうすこし見聞を広げたほうがいい。
すごいスキルのある人でも、駄目なやつの話をしてる。
ま、そういう環境に甘んじるのは能力がないからなのでごもっとも ご高説ありがとうよ
ダメなヤツの話をしてるのに噛み付いてくるやつのほうが なんか変なコンプあるんじゃないかって気がする。
このスレにゆとりゆとりうるさい奴がいるけどあれも大概だな。 お前だって昔は若造だったのに。
うちは[Attribute]が禁止だぞ
Javaで言ったらアノテーション こんなもの禁止してどうする
STAThread付けられないからCOM interop不可 シリアライザ使用不可 なかなかの縛りプレイだな
なんか「C#文法を逸脱しているため、ただのクラスと属性付きのクラスを判別できない」らしい
var禁止><
ちょっと何言ってるかわからない。
>>790 寿命の長いやつは俺もやだなー。
その次の行くらいにサクッと使って寿命とかならわかりやすいんだが。
793 :
デフォルトの名無しさん :2011/04/14(木) 23:37:19.67
「C++のように言語を独自拡張することなく、C#の言語仕様内で フレームワークやライブラリや組織内の独自の仕様を課すことができる」みたいな標榜だっけ
マーカーインターフェースと大差ないけど
そういやリフレクション禁止してる規約を見たことが無い
>>790 varが導入されたころ、プログラム系のブログとかで乱用すると分かりにくく
なるからなるだけ使わないとか言ってる人よくいたな。
varで分かりにくくなるなら、変数宣言のない動的型の言語とか、
型推論使いまくりの関数型とかどうなるんだって感じだ。
>>797 最近の潮流が関数型言語に傾いてるのもあって
今はわりとvarは受け入れられている気がする
初期に拒否反応がでたのは、まあしょうがないのかな、と。
varにしてもしなくても、分かりやすい変数名を付けたいものだな
dynamicも最初は拒否されてたしな
右辺の型がその行を見るだけで明確に分かるときにvarを使わないのは馬鹿げてるけど、 逆に言えばそれ以外の場合でvarを使うのは乱用だと思うけどな。 冗長性が減るのは良いことだが、無駄に長いことの害は明示的でないことの害より小さいので、 メンバーの全員が可読性を犠牲にしてまでvarを使うことはないと信頼できないなら 禁止はまあ有りかなともおもう。
>>799 そうだな、変数名の頭に型名を付ければvarでもわかりやすい
>>802 それ本末転倒すぎだろ。
もちろんネタだよね?
書くときは楽だけど、次の日に読むと結局何の型か把握するのに 時間がかかって効率悪い気がしてきた。
linqはどうなんだろう。例えばこんなの var query = from item in items select f(item); fがちゃんとした関数名ならありなのかな
そもそもvarはLINQのためのなんたらかんたら
>>805 気にするのはqueryやitemじゃなくてfなのかw
だってfの戻り値のコレクションですし
VS2010のヘルプくそすぎワロタ
VS2008のヘルプなら良いのか?w
varだとわかり悪いとかなー。 何を代入してるのか位はVSなら直ぐわかるでしょ。 あとvarで寿命が長いのはいやとか書いてる人が居たけど、 それはメソッドのせっけいみすだよなー。
あんまvar使わないなぁ… 最初使いまくってたけどあとでメンテする時に判りづらくなった いまはせいぜいLinqの時とかにしてる 普段の変数切るのも 使える時はvar使うの?
813 :
デフォルトの名無しさん :2011/04/15(金) 11:25:16.02
そもそもパッと見てどこでその変数が宣言されてるのかわからないような長大なメソッドなら 変数宣言にvarが使われてようが型指定されてようが可読性なんか変わらん
そんなの人によると思うのだが 俺は使わん 匿名型の時だけだ
共用のクラスライブラリ作る時はvarは使わないけど、 自分しか見ないようなアプリケーション自体のコードは躊躇い無く使いまくるな。
perlと同じで使い捨てなら構わんが、 ずっと保守する必要のあるものはvarは使わない。
817 :
デフォルトの名無しさん :2011/04/15(金) 12:03:38.45
どっちでもいいよ わかりやすい名前を付けることやスコープを不必要に大きくしないことの方がずっと大事
使い捨てのコードに分かりやすい名前をつけるとかおまえらどんだけ暇なんだよ。 aから順番に変数名使うだろ。
それはないわ
ですよねー
821 :
デフォルトの名無しさん :2011/04/15(金) 12:09:23.88
だったら「varはわかりやすい変数名を助長するから好ましい」という主張も一理あるわけだ
ネットでハンガリアン派を見なくなるまですごい時間がかかったし var否定派もいなくなるまですごい時間がかかると思う。 現場だといまだにハンガリアン派がいるから、var否定派も 現場レベルだと永久に残りそう。
ハンガリアン記法はもともと変数の種別を表すものでタイプを表すものじゃなかったんですけどね 正しいハンガリアン記法はちゃんと役に立つよ
>>822 CやC++で仕事してるとハンガリアンをまだみかけるわ。
あとやたら短い変数名のやつもな。
そんなに外国人労働者が多いんだー
半分は英語か中国語だな。韓国の人は英語だったな。外資の話だけど。
ローマ字変数使おうぜ
そんなスレあったのかw
var 使うぐらいなら objectの方がいいだろ
それはない、型が失われるだろうがwww
それはない、インスタンスが記憶喪失するわけないだろw
C++0xでもautoどんどん使うし
varを動的型とかバリアントみたいに勘違いしてる人、けっこう多いね。
DBからBLOB型(画像)を取り込んでサムネイル表示させたいです。 DB問い合わせ部分を別スレッドにしてExecuteReaderで順次画像を取得し、 取得が完了した順にサムネイルを表示していきたいです。 ListView.LargeListにImageListを格納しても次のデータを受信するとまた 再描画されてしまいます。再描画されず順次表示するにはどのような方法 があるのでしょうか? よろしくお願いいたします。
BDにバイナリデータつっこんでんのかw IOだいじょうぶなのかよwww
BDは初耳だな ギロッポンでナオンとシーメーみたいな
ははは、苦しゅうないw DBとよみかえてくれや。
BLOBに過剰反応し過ぎ
まあブロブといえば映画もあったしね!
.netのListViewの実装は素敵だから アイテム一つのちょっとしたプロパティ触ると全部再描画してくれる親切設計 再描画ならまだしも、ウィンドウハンドル再作成までしてくれたりする
俺の腹がぶろぶ・・・
うーん、、、ということは画像の配置を楽にしたいからListView使おうと 思っていたけど、FlowLayoutPanel使うようにするのがいいのかなぁ?
ブラウザ最強
Flow Table DataGridView どれでもいいじゃん 折り返しとかサイズに応じてやってくれるから俺はフローレイアウトにPictureBox突っ込んだりして使ってる
>>846 さんの言うようにスプリッターで可変に動かすので
フローレイアウトがよいかなっと考えております。
フローレイアウト上にピクチャーをnewしていけばいいのかなぁ
848 :
デフォルトの名無しさん :2011/04/15(金) 17:54:40.28
Win32API使って自前でレンダリングしろ
HttpListenerはなんで管理者権限が必要なんだよ・・・
残念だが当然
クライアントの認証のこと?
どうやれば継承できますか
親に気に入られればいいよ
sealedされてしまいました
ああ…次はObsoleteだ…
Formで作っています (データグリッドビュー).Rows[0].Visible = false; でエラーになるので何故かと思ったら、 どうもフォーカスがある行を非表示に出来ないみたいで、 手作業で他の行をクリックしてから実行したら出来ました しかし、ここを勿論自動化させたいと思うので、 フォーカス(のある行)をコードで変更させたいのですが これが判りません
858 :
857 :2011/04/16(土) 08:32:45.41
あ、単にフォーカスを移動させるだけなのは解決しました 行を指定してフォーカス持ってくことは出来るんですかね
C#のdynamicキーワードってC++のテンプレートの扱いと同じという考え方であってる? メンバ名が一致している型ならなんでもつっこめるということだよね?
全然ちげえ
まじで?詳細plz
まあ、同名のメンバー持ってさえいればOKって意味ではtemplateと一緒。 じゃあ、メンバーを持ってないってのをエラーとして検出できるタイミングはというと、 C++のtemplate … コンパイル時 C#のdynamic … 実行時 で違う。
System.Timers.Timerの精度ってどの程度? ぐぐってもでてこない 検証コードもほしい
結局のところWindowsのタイマー精度じゃね?
>Windowsのタイマー ベースとなる関数があるの、何ってやつ?
厳密に言えば自分で自分の精度(正確に言えば確度)は測れないだろうね。 っていうか、どのみちマルチタスクOSでタイマーの精度だけ高くても通常は 何の意味もないよね。 余程の長い時間の測定でもしない限り、タイムスライスのムラの方がタイマの誤差より大きいから
タイムスライスの順番待ちがデフォで20msくらいだったか
timeBeginPeriod でググってみよう
timeEndPeriod でシコってみよう
C#ユーザーの低能化が進んでるな
ゆとりだからな。
違うねこれはふらっとの侵略
タイマの精度ってどう測定するの? 一応、基準が必要だからStopwach(QueryPerformanceCounter)が正しいという仮定で ソースが思いつかん
どうせwindowsのタイマーだから数十ミリ秒だろ。精度。
普通の測定器と同じ方法で。
>>876 だろって何質問してんだ?
勘で答える奴はいらないんだが
Stopwach(QueryPerformanceCounter) ワロタwwww
>>880 じゃあ証明してみろw
できるならな
逃げるなよタコ
くだらない質問はふらっとで聞けよ
>>881 「だろ」が質問じゃないって言われたらこんどは断定だって思ったのか。
ほんと頭わるー。
>>884 なんだできないのか
だったら答えるな
目障りだ
勘で答える奴はいらね ここをクイズ番組とでも思ってるんじゃないのw
-----ここまで俺の自演-----
勘でもぜんぜんOK。 そんなに答えがしりたけりゃ自分で骨折って調べろ。
証明まだー?
質問でも断定でもないw だったらこのスレ来るなアホ
おいおいカス同士なかよくしろよ
カスキター!
いつもの無知が暴れてるのか。ふらっとに帰れ。 あらゆる測定機器には必ず測定誤差がある。 そしてその誤差、精度を求める方法は確立されていて、 その手法はおまえが全否定している統計だ、バカモノ。
い あ そ そ
>>894 統計を全否定?
図星つかれて頭おかしくなっちゃった?
897 :
デフォルトの名無しさん :2011/04/18(月) 04:01:25.51
統計的結果w
898 :
デフォルトの名無しさん :2011/04/18(月) 04:04:29.00
やっぱり、あの無知の逆ギレレッテル貼り君か。
また統計的結果ってオチかよw
量子力学の話?
>>898 そんなことどうでもいいから
早く証明しろよカスくん
あぁ、このスレまで穢れてしまった。 おぉ、勇者よ。この荒ぶる物を静めたまえ。ソーメン。
おっさんつまんねーぞ
統計的結果も知らない無知が粋がるなよ
飽きた寝る
統計的結果に例外に100倍に…つくづく自分の常識で語るのがお好きなようだ
またお前か
あらゆる分野で普通に使われる科学の基本手続きである統計的結果を知らない人間にこのスレに書き込む資格はないよ
そうさ、俺だ
string test = @"c:\aa\bb\ccc\abc.txt"; などと書けますが、この@の機能はなんと呼ぶ機能なのでしょうか?
「アット、サイデリア」 です。
逐語的リテラル文字列
915 :
デフォルトの名無しさん :2011/04/18(月) 18:23:33.47
917 :
デフォルトの名無しさん :2011/04/18(月) 18:58:41.70
保守
保守
名前だけが知りたいんかいw
名前知らないから検索もできないというのはよくある。
C# 5.0 が来るのはいつ頃ですか?
過去からの類推だと、2012年。
JavaSE8が出るのとどっちが早いかな
924 :
デフォルトの名無しさん :2011/04/18(月) 21:06:52.02
むしろJDK7と同じくらいじゃね using相当の機能とか文字列switchとか型推論とか もうJavaは何がしたいのか
Java迷走しすぎな上にOracleになっちまったしな
でも、Oracle Fusionの方が組み合わせではまることなくありがたがられることもあり、 Oracle 自身も増収増益してるという。
あれよく独禁法みたいなのに引っ掛からなかったよな
Javaはそろそろ.NET2.0に追いついたのか?
新しいjavaのtryのところで変数を宣言できるやつ、C#にも欲しいな。
930 :
デフォルトの名無しさん :2011/04/18(月) 22:19:04.87
あれはまんまusingのパクリなんだが
例外のマルチキャッチは逆輸入して欲しい usingステートメントは複数並べて書けるのだから…
LINQいいよね〜
りんきゅちゃんハァハァ
難読化とかアフォかと思ってたけど、一度気になりだしたら気になって仕方ない 誰も俺のコードなんて気にしないだろうけど、俺は気になって仕方ない お前らにプッとか笑われるかと思うと難読化せずにはいられない で、安いのはどれ?
そうだね、僕もそう思うよ
コーディングのクセが強すぎて既に難読w
カジュアルハック対策には識別子を書き換えるぐらいで充分。 買わなくても無料のやつやオープンソースのやつがあるから好きなの使うといい。 ふらっとじゃないんだから後は自分で吟味して決めてくれ。
>>938 お前典型的な自己満足大好きな下流の人間だな
ふらっとでやれよ池沼
>>939 ここはふらっとじゃない
誰にでも噛みつくキチガイは黙ってろよ
ソーメン。
ふらっとも何もC#使いの時点でw
ですよね
自演乙
ここまで俺一人のレジェンドスレッド
Reflectorしたら全部LINQだったでござる
それはない
lisper なら linqer ができるはず
B+TREEを実現するインターフェースとか無いんですか?
B+木は「実装」でしょう インターフェースの意味分かってますかね
ちなみにツリー構造のクラスはないです
だからインターフェースなんじゃね?
954 :
デフォルトの名無しさん :2011/04/20(水) 00:49:59.00
interface ITreeNode { IList<ITreeNode> Children; } インターフェイスできたよ
この親知らず!
propertiesは便利だけど ユーザーが同じでもexeのパスが変わったら、設定もべつになるのは勘弁 設定メンドクセー
AppData内の.config弄れば
DataGridViewの仮想モードで、RowCountに大きな値を指定すると、 処理に数秒かかるのですが、どうすれば改善できますでしょうか? FormにDataGridViewを貼って、以下のコードを書いただけで重くなります。 grid.VirtualMode = true; //grid.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.None; //grid.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.None; grid.AllowUserToAddRows = false; grid.RowHeadersVisible = false; grid.ColumnCount = 10; grid.RowCount = 4000000; //重い ※grid は DataGridView です。
Windows Formなんだけど、FormBorderStyle = Noneの状態で移動とサイズ変更を可能にするには、 やっぱりユーザーコードでマウスイベント拾って実装するしかないもんかね?
ですね
963 :
デフォルトの名無しさん :2011/04/26(火) 09:24:02.49
マウスキャプチャを忘れるなよ WPFやSilverlightなら専用のメソッド一つ呼ぶだけなんだけどWinFormsはオサレ指向じゃないから
LINQいいよね〜
面白くない 0点
>>961 WndProcオーバーライドしてWM_NCHITTESTを処理する
VBReport7のxlsReport.Page.Addr.Sizeメソッドの引数の設定 誰か知っていたら教えてくださいおねがいします
マニュアル読め
製品版買わないとマニュアル閲覧できません 定義元に飛んだら(int Orientation, PaperKind hoge) としかなく、Orientationに手当たり次第に数値入れても 動作しません
製品版買え
すれちがい
すれちがいから生まれる愛もある
そして二人は
富士山の頂上で
性別の壁を乗り越えた
つぎおつ
おちゅでちゅ
引越しははまだ早いよ。
うめ
埋めようぜ。
埋めなくても980こえてりゃ勝手に落ちるだろ
うめ
落としはさせない! 埋める!うめてやるううううううううう!
またアニメかなんかの台詞? やれやれ
僕は射精した
うめよりおかかのほうがうまい
梅肉
うめ
次のバージョンアップはいつの予定で、 どんな機能追加が予定されてるの
今のところ公式にはvNext(次期バージョン)としか呼ばれてない。 今までの製品サイクルから考えて、予想では2012年(Visual Studio 2012)。 追加される機能は async(だけっぽい)。 async に関しては、Visual Studio Async CTPっていうプレビュー版がすでに出てる。 今 CTP(かなり初期のプレビュー状態)ってことは、やっぱり製品版はそれなりに先の話。
996 :
994 :2011/04/29(金) 12:52:13.57
>>995 教えてくれてありがとう
非同期処理が言語レベルの記述で実現できるようになるのか
いいねぇ
でも非同期ってことは結局スレッド起動してやってるんだろ スレッドの起動は明示的にやったほうがよくないか
表記が簡略化されるだけじゃないの?
999 :
デフォルトの名無しさん :2011/04/29(金) 15:49:47.03
逆に理由が無ければスレッドプールを使うべきだとおもうが
C#ってDirectX使えますか?
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。