ふらっとC#,C♯,C#(初心者用) Part86
3 :
デフォルトの名無しさん:2012/02/20(月) 11:10:25.75
デスクトップの右クリック→アイコンの整列→
アイコンの自動整列チェックなし
等間隔に整列チェックあり
にした場合の、アイコンの配列(等間隔に自由に配置可能)
と同じことをしたいのですが、
ListViewをカスタムコントロールで
作成すればいいかなということまではわかったのですが
どのようにコーディングしたらいいのかわかりません。
参考になるサイトなどありましたら教えていただけますか?
よろしくお願いいたします。
4 :
デフォルトの名無しさん:2012/02/20(月) 16:39:27.45
XPならとりあえずSJIS使っとけって感じだったんですが
Windows7かそれ以降しか相手にせず他に特に何のこだわりもない場合、
ありきたりな日本語のテキストを保存するときのエンコーディングって何にすればいいんですか?
好きにしろ
C#って.net使わなくなるのか
>XPならとりあえずSJIS使っとけって感じだった
そんな方はは何使っても同じじゃないかしら
XP以前と以後で何があったと思ってるんだろう
>ありきたりな日本語のテキスト
「森?外」という名前はありきたりな日本語のテキストなのん?
XPじゃなくて98なら理解できなくもない
98は確かにUnicode全然だったからな
あら板が対応してなかった
鴎じゃないやつのほうね
2chはShiftJISだからなw
16 :
デフォルトの名無しさん:2012/02/20(月) 21:07:16.98
まあMSのファイルシステムも日本語版はS-JISじゃなかったっけ?
んなわけあるか
日本語版は、ってのが面白いな
FATですらUnicodeだったよ
一寸見ていたらCP932(MSーKANJI)とS-JISって完全互換じゃないんだってな
まあ問題になることは希だろうが
だといいんだが波ダッシュ問題と絡んでウザイことこの上ない
XNA Framework
API Code Pack
SlimDX
DirectX初心者なんだがどれが一番扱いやすいかな?
API Code Pack
論外
SlimDX
書籍がない
XNA Framework
将来がない
SlimDXが一番マシなの?
別に選択肢があるなら教えて
c++でdirectX使う
これが一応大正解
ゲーム製作とか一過性の熱病かはしかみたいな物だから他の方向に進む
27 :
デフォルトの名無しさん:2012/02/20(月) 22:58:18.87
>>23 全否定かよw
そりゃ言語やフレームワーク依存な部分はどうしても発生するけど
ゲームとしての大雑把な状態遷移とかはどれかでやっていけば
学べるんだしいいだろうw
いや仕事だよ
簡単にでいいから3Dで表示してほしいっていわれてさ
じゃあXNAでいいんじゃね?
XNAってSilverlightでも使えたはずだしWPFでも使えたはずだし
お手軽表示したいなら悪くないと思うけど
OpenGLのがいいんじゃね
なるほど、じゃあXNAでいってみるわ
ありがとう
スケルトン表示や線表示しなければWPFでもいい
遅いし理解しにくいけど
俺も仕事で3Dやりたいなー
趣味だと基本的なとこまでやって飽きちゃう
openGL←
3DCADで作図してHTML上に3DCADViewerで公開
excelのVBAで3D描画してるつわものもいるぞw
>>38 すげぇ
俺も仕事やめて一年くらい3dの勉強したいなぁ
うっせーサイト
41 :
デフォルトの名無しさん:2012/02/21(火) 00:06:44.18
>>39 今は3Dもかなり楽になってるじゃん
最大の問題は仕組みよりモデル作成とアニメーションとテクスチャ作成だよ
技術的なことはそれほどでもない
弘法筆を選べよw
string tmp ="hoge";
textbox_ +tmp+ .text="こんにちは";
って感じでtextbox_hoge.textにアクセスできない?
labelにテキストボックスtmp(hoge)の生成コードを作ってる前提で
WPF の 3D も表示するだけなら簡単だよ。
Shader 書けないからあまり凝ったことはできないけど。
>>43 最後の一文の意味がよくわからないけど、
this.Controls["textbox_"+tmp].Text = "こんにちは";
単純なことにつまづく奴って
質問が驚くほど下手だよな
というよりそういうアクセス方法ってどうなの?
って思うけどな
それ以前に、そもそも問題設定が恐らく間違ってるw
Nameの値を連想キーにしてコントロールを取得したい、なんて場面は
普通はそうそうあるものじゃない。
恐らく何か勘違いしてる。
このスレいちいちゴミみたいな雑談しないといけない決まりでもあるのか
ゴミみたいな質問するとわかるよ
ラベルにボタンのコードを記入してるんだけど、for(imt i=0;i<max;i++)で、button_0ってIDでボタンを作った。
もちろん、ループしてるので0~maxまでのボタンがある。
これら全てにクリックイベントを作りたい。
どうしたらいいでしょうか?
52 :
デフォルトの名無しさん:2012/02/21(火) 07:48:52.29
54 :
デフォルトの名無しさん:2012/02/21(火) 08:37:23.31
>>51 クリックイベントの中身はみんな一緒なの?
ループは書けるのにイベントは設定できないっていみふ
56 :
デフォルトの名無しさん:2012/02/21(火) 08:43:34.99
全くわかりません
>>56 LVM_SETITEMPOSITIONで自前で配置するんじゃね?
>>51 >ラベルにボタンのコードを記入してる
ここらへんがちょっと分からない
59 :
デフォルトの名無しさん:2012/02/21(火) 09:53:22.03
(´・ω・`)しらんがな
アイテムをドラッグしてマウスボタンを離したときに
そのドラッグしてたアイテムのインデックスとマウス座標をクライアント座標に変換したやつを渡せばいいんじゃね?
61 :
デフォルトの名無しさん:2012/02/21(火) 10:19:50.86
>>60 選択しているアイテムのインデックスと
クライアント座標で自由に配置することが出来ました。
ありがとうございました。
もうひとつ質問なのですが
自由配置したときに項目が重ならないようにしたいのですが
重なっていないかというのは
自分で計算して調べないといけないのでしょうか?
何かいい方法はありますか?
ありません
って同じサイトじゃねーかよ
今時そういうところに拘る人いるのか
なお
>>64はC#じゃ実装は無理なので以降スレ違い
ガーン
タスクトレイのウィンドウハンドルをゲットして描画すればいいんじゃないの?
70 :
デフォルトの名無しさん:2012/02/21(火) 13:16:20.00
>>55 >>58 string FileName;
label1.text = "<asp:Button ID=\"+Button_"+FileName+"POST\" runat=\"server\" onclick=\"Button_"+FileName+"POST_Click\" Text=\"ボタン\" />";
>onclick=\"Button_"+FileName+"POST_Click
こうなってる
71 :
デフォルトの名無しさん:2012/02/21(火) 13:19:27.71
public void Button_ + FileName + POST_Click(object sender,EventArgs e) {}
こうできたら一番楽なんだけど
シェル拡張でタスクバーツールバー作ってやって
フックをインストールすればいくらでもできそうだが
>>70 イベントハンドラをひとつ作ってsenderで分岐すればいいんじゃないの?
知らんけど
WebFormsなんて使うのが悪いんじゃないの?
知らんけど
75 :
デフォルトの名無しさん:2012/02/21(火) 14:04:50.56
70-71を元にしなくていいので
今できる範囲内で
複数のボタンがそれぞれ違うイベントメソッドを作ることはできないですか?
動的厨さん
出番ですよー
ドッドッドリランド
複製
79 :
デフォルトの名無しさん:2012/02/21(火) 15:18:24.64
何をしたいのかよくわからんし、ASP.netとwinFormの話が混在してるように見えるんだが
80 :
デフォルトの名無しさん:2012/02/21(火) 16:36:46.25
両方です
最終的には
ディレクトリの中にあるフォルダを、ブラウザに一覧でだしてそれぞれ読み込むボタンを設置したい。
初心者過ぎて教える気にもならねぇ
82 :
デフォルトの名無しさん:2012/02/21(火) 16:44:59.25
失礼します。
構造体の配列を扱おうと思っているのですが、容量が大き過ぎてメインメモリだけでは収まらないので、
メモリ上で圧縮出来ないか試してみました。
http://code.msdn.microsoft.com/windowsdesktop/10-C-08886908 の、コードを見るとデフレートストリームに入れるだけで圧縮されているように見えますが、その認識で正しいのでしょうか?
http://ideone.com/Z97sY また、このように書いてみたのですが、button1で5GBほどのテスト配列が作られるのですが、
button2を実行すると更に5GB程度の容量が占有され、CloseやDisposeを行っても解放されません。
(タスクマネージャで見ると二つのボタンで10GB占有した状態になっています)
圧縮に使用したストリームを解放するには、どのようにしたら良いのでしょうか?
よろしくお願いします。
高度過ぎて見る気にもならねぇ
おいおいw
>>82 詳しいことは知らないが、
C#のメモリはガベージコレクタが気が向いた時に回収して解放するので、
プログラムが終わったからといって回収されるかはGCの気分による。
10GB
ボタン1で処理してる構造体作成をまとめてやるんじゃなく
作成してはストリームに書き込んでってやればそれほど場所食わないんじゃないの?
それよりなんで構造体使ってんの?
89 :
82:2012/02/21(火) 17:21:39.25
>>89 メモリの搭載サイズとか設定がよくわらんが
同じアプリを2個起動して
1個目でbutton1とbutton2を実行した後で止めて
10GB近くを確保したような状態にして
2個目でbutton1だけ実行してみなよ
最近富豪的プログラミングし過ぎだぞ
おまいら
92 :
デフォルトの名無しさん:2012/02/21(火) 17:31:01.79
何が富豪的なのか
節約しようとしてるのにな
94 :
82:2012/02/21(火) 17:33:11.81
>>88 データに付属するパラメータが多いので構造体にしたのですが、他に良い方法があるのでしょうか?
>>90 メモリ搭載は16GBです。
2個目のbutton1を実行したところ、物理メモリいっぱいまで使用してます。
button2も実行してみましたが、キャッシュへ保存していました。
一つ目のプログラムを終了したところ、10GB分解放されましたが
二つ目のプログラム分の残りキャッシュが物理メモリへ移動しました。
一般に配るアプリならもっと考えろと思うが資源が豊富にある環境で
プログラミングするならケチつける必要すらない
メモリ握りっぱなしが気に入らなくて自分で環境用意できるなら
一時的なファイル置き場をシリコンディスクとかSSDにするとかすれば
いいかもしれないけどねえw
uwscみたいなのが作りたいんですが
マクロファイルから読み込むのってどうやってるんですか?
1行ずつコマンドを書いていくなら分かりますが
例えば条件判断で処理するようなコード
if (〜){
// ここにコード
}
見たいなのとかどう実装したらよいのでしょうか?
16GBだと
>>90じゃあダメじゃないのw
スワップファイルがあるならタスクマネージャーから見れる情報では
それぞれ確保したままじゃないの?
メモリを大量に食うアプリを実行してみて1個目のアプリが抱えてる
プログラム上では破棄した部分を開放してくれるかどうか見てるんだしさw
それが起きそうな条件作ってやってよw
構文解析っすか
マクロファイルを1行1データとして配列に読み込んで
foreachで1行ずつマクロコードを実行していって
もしifコマンドがあったら(〜)の条件を判定して、
trueなら{〜}の中を実行してelse{の対になる}まで配列のデータを飛ばす
falseならelseまで配列のデータを飛ばして{〜}の中を実行
こんなかんじですかね
>>99 うむ。まずは思うがままにコーディングしてみるのが良い
以前似たような質問があって確かJavascriptの解析は可能とかなかったっけ?
あとxmlを利用してとかできそうだな
102 :
82:2012/02/21(火) 18:09:40.61
>>95 Windows7 64bitを手に入れたので、半分遊び心で大量にメモリ使ってみました。
SSDとかをキャッシュにすると、寿命が心配ですね。
>>99 徐々にやってて強化していけばいいだけ
最初は if(〜) コマンド; だけ実装したらいい
次はelse入れる
次はブロック入れる
104 :
デフォルトの名無しさん:2012/02/21(火) 18:32:16.47
テキストボックスやボタン、ラベルは自前のクラスに格納・カプセル化することは可能ですか?
105 :
デフォルトの名無しさん:2012/02/21(火) 18:35:06.05
ユーザーコントロールとかの話?
106 :
デフォルトの名無しさん:2012/02/21(火) 18:38:48.13
うん
ボタンをカプセル化したら重複防げて、クラスで大量生産できるかな、と思った
大量に生産するんじゃない
できないよ
109 :
デフォルトの名無しさん:2012/02/21(火) 18:56:14.86
class ButtonObject{
private void Button_Draw(object sender,EventArgs e) {
Label1+="<asp:Button ID=\"+Button_Click\" runat=\"server\" onclick=\"Button_Click\" Text=\"ボタン\" />";
}
private void Button_Click(object sender,EventArgs e) {}
}
こういうことってできないですか?
できないって人と曖昧に答える人がいて判断つかない
110 :
デフォルトの名無しさん:2012/02/21(火) 18:56:46.49
二行目publicでした
またお前か
まず本嫁
「見割り当てのローカル変数'mouyada'が使用されました。」
ちゃんと宣言したのに、for()の{}で囲まれたところで使用できない言われた。
{}の外でも使いたいんだけどどうすればいいの。もうやだ。
>>112 チャンと宣言できてないだけだ
心配するな
>>111 不可能、という回答でおk?
課題明日までなんだけど・・・
じゃなくて初期化されてないだけだ
心配するな
Hoge mouyada = null; // 宣言時に初期化する
for (*******) { **** }
mouyada 使える
課題なら今まで習った範囲内でできるだろ
初日にならった内容思い出せよ
それと何度かヒントもらったり参考url貼られたのに
無視してるからわからないんだよ
前スレ読み返せば?
もうjavascriptとか使えよw
Button button = new Button();
button.ID = "Button1";
button.Text = "押せ";
button.Click += new System.EventHandler(Button_Click);
Form.Controls.Add(button);
イベント動作させるには、Page_Initとかで追加な。
ただ、ASP.NETどういうものか分かってるのかな?
120 :
デフォルトの名無しさん:2012/02/21(火) 19:23:02.72
>>117 参照URLって
>>64ですか
教師が鬼畜なので
「ぜひね、みなさん自分の力で調べてきてください。自分で調べることも勉強です」
とか言ってました。
>>119 わかります
下はわかりません
>>116 ごめんね初心者で。さっぱりだわ。
class aho{
public static void Main(){
int mouyada;
Hoge mouyada = null;
tensai t = new tensai();
t[0] = 18;
t[1] = 33;
t[2] = 21;
for (int i = 0;i <= 2;i++){
Console.WriteLine("{0}歳の人がいます",t[i]);
mouyada += t[i];
}
Console.WriteLine("3人の平均年齢は{0}です",mouyada/3);
}
}
出来ないお
> 教師が鬼畜
ゆとりさま御一名さまごら〜いて〜ん!
Hoge mouyada = null;
↓
double mouyada=0.0;
>>123 出来ました!有難う!
double mouyada; //出来ない
double mouyada = 0; //出来る
けど結局これって何が違うんだ?同じにしか見えぬ
125 :
デフォルトの名無しさん:2012/02/21(火) 19:50:25.73
あれ、というか
ユーザーコントロールのコードの間に変数つけて分岐ってやろう
っていうのを前提にしてやってきたけど
これ無理なの?
LabelaiuというIDのラベルがあるとして
string str_hoge=aiu;
Textbox.text=Label+str_hoge+.text;
C#たん「そろそろ文法覚えようよ・・・」
>>99 コンパイラコンパイラってのがあってふつうはそれを使う。
128 :
125:2012/02/21(火) 20:04:38.63
もうC#の連結演算子とかも意味不明
じゃあASPのコードをC#で文字列として持って置いて必要な数だけ自動生成しちゃうぜ!って構想練っても
C#側から自動生成したユーザーコントロールにアクセスできる文法がないとかもうね
マクロ解釈にコンパイラコンパイラを使うというふつう(笑)
130 :
125:2012/02/21(火) 20:07:58.63
>>126 じゃあさ、string hoge にlabel.text って文字列いれておいて、label.textにアクセスできないだろ?
うんこじゃん
>>128 HTML解釈するのブラウザなんだけどw
教わった範囲をもう一度順番にやり直せばいいだけなのになあ
こういうときは相談室の連中に任せるに限る
どうせ相談室の馬鹿野党どもも暇だろ
135 :
125:2012/02/21(火) 20:26:03.81
>>131 ユーザーコントロールのメッセージを受け取って処理するのはC#だろ
なるほどHTTPを理解してないのか。
どうでもいいから不毛な争いはやめえ
138 :
125:2012/02/21(火) 20:33:52.93
出来ないなら出来ないって言ってくれれば良いのに
回答を先延ばしにするのやめてくれ
回りくどい
私感だが、
C#とHTMLは別物で何かそれをつなぐ緩衝材がいるのだー。と思った。
C#は文字列としてHTTPにHTMLを流しこむことはできる。
でもHTMLはできない。しかし動的なサーバーリクエストは一応できる。
この事実から、2つの概念を相互に使わないと動かないようなきがするのだー。
140 :
125:2012/02/21(火) 20:40:26.45
ボタンにValue値もないし同じIDのアイテムもWebフォームに追加出来ない
掲示板の複数のスレッドのボタンの管理とかどうやって作ってるんだ
>>140 >同じIDのアイテム
当たり前だろ
ここがすでに間違ってる
IDはページで一意に決まるもんだよ
識別子の定義を覆す発言だぜ
>>140 ブラウザとWEBサーバでIDの受け渡しすればいいだけなんだが。
同じIDつけたらどのボタンが押されたか分からんだろ
145 :
125:2012/02/21(火) 21:00:01.92
抽象的で全然わからん。
.aspxと.csじゃできねーの
146 :
125:2012/02/21(火) 21:00:41.94
>>144 どうせonclick同じなんだからいいんだよ
幾らなんでもバカ過ぎるだろ(^-^)
>>145 まずはMSのサンプルよんでhttpの仕組みを理解しろよ。
そして、どういうサイト作りたいか知らんが、似てるサイト探してHTMLソース嫁。
id属性同じってhtmlの規則違反なんだがw
どのボタン押しても動作が変わらないなら一つでいいだろw
馬鹿には何をやらせても駄目
普通の奴にならGridView教えるんだけど
こいつには無理っぽい
つーか明日まで我慢すれば消えてくれるんだろ?
それでいいや
そしてまたアホなアンチが生まれるんですね
そんなん慣れっこだろ
DataTableのRowChangedを発生させる事なく行を追加する事は出来ますか?
xxできますか?
こういうケースの時だけ除外したいんです
とか追加で説明あるといいのにね
夢物語だね
何もかもがいつだって足りないんだ
余ってるのは人間の数だけ
何を言っとるんだお前は
>>156 その質問の仕方だよyesかnoしか返ってこないと思うよ
WebClientってタイムアウトの設定はできないのですか?
162 :
125:2012/02/22(水) 00:19:48.98
おい質問したのにイエスもノーも帰ってこなかったぞ
継承してGetWebRequestをオーバーライドしてもいいのなら、答えはYES
素のWebClientのままでなければならないというなら、答えはNO
yes/noすら返すのがあほらしい質問してるからじゃね?
一定限度を超えた奴はおちょくるか無視するかどちらかになる
167 :
125:2012/02/22(水) 00:25:01.65
分からないなら答えなくていいです
分からないなら答えなくていいです(キリッ
答え書いてあるじゃん
分からないなら分かるようになってください
>>125 Webフォームに、Label1〜3とTextBox1、Button1を配置して
TextBox1に"Label1"と入力してボタンを押せばLabel1.Textが
"Label2"と入力してボタンを押せばLabel2.Textが、Label3に表示されるプログラム
public partial class Default : System.Web.UI.Page
{
string hoge ;
protected void Page_Load(object sender, EventArgs e){
if( !Page.IsPostBack){
Label1.Text="あああ";
Label2.Text="いいい";
Label3.Text = "";
}
}
protected void Button1_Click(object sender, EventArgs e){
hoge = TextBox1.Text;
var c = Page.FindControl(hoge);
if (c == null){
Label3.Text = "Label1かLabel2を入力してください";
}else{
Label3.Text = ((Label)c).Text;
}
}
}
とりあえずこれが理解できるようになったらまた来てくれ
余談だが、asp:labelとかのIDって、重複してもいいんだぜ
HTML出力時にはClientIDっていう重複しないIDに置き換えてくれるから
あと、"Label1.Text"って文字列からLabelのTextプロパティを取得するのも、もちろんできるぞ
ただこっちはさらに難しいから、とりあえずプロパティは決め打ちしとけ
なんでprotectedなの
privateじゃないの?
>>175 VSで自動生成したのがprotected だったから
まあprivateの方が望ましいのだろうけど、論点はそこじゃないし
今日が裁きの日だからどうなるかな
ハラ減った。
動的厨の要望
前スレより
878 名前:852[] 投稿日:2012/02/18(土) 20:08:13.82
掲示板を作りたい
コメントを画面に順番に表示ができた
じゃあ次はそれを1単位としてスレッドをつくろう
掲示板ならスレッドをユーザーが作れるようにしないとね
あれ?じゃあボタンやテキストボックスは使い方が重複するよね
じゃあ1スレッド1クラスにしよう
クラス作ったったこれでかつる!
実行したらボタンが「作ったクラス」のメソッドを実行しないどうしてなんで←いまここ
まずはいっぱいあるオープンソースの掲示板スクリプトを読めばいいのに。
181 :
125:2012/02/22(水) 10:06:23.95
C#をマイクロソフトが公式にサポートしてもらわないと困る
Javaみたいにクロスプラットフォームでやってもらわないと困る
独占大好きのMSがクロスプラットフォームなんてやるわけないでしょ。
他社の人気ソフトに類似品ぶつけて独自APIで囲い込むような会社。
サドだから困る人を見て喜んでるよね
LINQの拡張メソッドを直接呼んでるサンプルをよく見かけるのですが
C#3.0で追加された
from 〜 in 〜 where 〜
みたいな構文を使わない理由が何かあるのですか?
>>186 ソースが汚くなるから
使うまでもないから
LINQの保守性の悪さは異常。
遅いし。短くなってステップ数減って損ばかり。
質問の答えになってないし、
ステップ数って・・・
190 :
82:2012/02/22(水) 16:06:00.58
プログラムを起動中のみメモリをデータベース代わりに使う方法を教えてください
>>190 君が最終的に何したいかわからないんだよなw
button1で確保したエリア(データ群A)
button2で作成するメモリーストリームに保存(データ群B)
A->Bに移動が完了したらAは解放Bからアクセスって感じでいいのかな?
あと1280x1024っていうのが気になったんだけどもしかしてスクリーンショットを
加工でもするの?
>>190 開放したいリソースはマネージド?
Usingでどうなる?
>>190 遅いJavaでよく使うテクニックだが、変数を解放せずに使いまわすといい。
>>192 大量に送られてくるデータの処理です。
構造体のまま格納していると一瞬でメモリがいっぱいになるので、メモリ上で圧縮出来ないかなと。
>>193 ネイティブで来た物をマネージドにしてます。
Usingを使用してみましたが、結果は変わりませんでした。
197 :
デフォルトの名無しさん:2012/02/22(水) 16:52:09.69
一瞬でメモリがいっぱいとかアホかと。
198 :
82:2012/02/22(水) 17:05:20.69
>>194 >>196 HDDに吐きだしてる余裕無いので、メモリに溜め込めないかなと。
4コアCPUでも受け取るだけで全てのコアで30%くらい使用していて、
ちょっと処理させると70%とかになって取り込みが追いつかなくなるので、出来るだけ重い処理はさせたくないんです。
199 :
デフォルトの名無しさん:2012/02/22(水) 17:07:27.88
なんか破綻してる気がする
圧縮処理だって重いだろうにw
どんだけ〜。
いったいどのIOからメモリが一瞬でいっぱいになるほど爆即入力できるんだかw
LAN経由で送られてくるデータならSATAの転送速度だと十分だろに・・・
HDDでランダムアクセス起きるとやばいかもしれないが
なのでSSDに吐き出すとかしろって書いたじゃん
最近の質問内容っておかしいなあと思ったら概ね設計がおかしいよねw
ここももう一つのスレもw
コントロールへのアクセスを文字列でさせろとかさw
設計を変えればそんな変なことしなくてもできるだろうて思うところで悩んでるよね
>>201-202 CoaXPressです。
CXP-6の4本をリアルタイムで保存可能でしょうか?
メモリがボトルネックになる時点で、PCを並列化して分散処理するしかないだろ。
メモリより速い外部記憶装置なんか存在しない。
そんな爆速のIOほすい
>>204 処理するPCを含めた構成図を書いてみろよw
どれくらいの帯域がいるか
ちゃんと設計してないだろ
帯域的に嘘だろ。c#で書いてる時点でめちゃくちゃ。
209 :
デフォルトの名無しさん:2012/02/22(水) 17:37:02.24
210 :
デフォルトの名無しさん:2012/02/22(水) 17:38:29.27
>>204 でのPCのどのIFに刺してるだ?
なんていう製品?
想像するにマルチコアなPCに高速インターフェースからの入力を複数処理させて
間に合わないとかほざいてるとしか思えない
CPUなどが高速であってもPC内部でもボトルネックになるところはいくらでもあるんだよ
ゲーム機などがやたら内部の転送帯域を気にする理由とか考えたことないんだろうな
インテルがアホみたいにメモリチャネル増やす理由とかさ
212 :
デフォルトの名無しさん:2012/02/22(水) 17:54:51.08
CookieContainerクラスの内容をディスクに保存するにはどうすればいいのでしょうか?
>>212 クッキーの中身を取り出して自分で保存する
単純なプログラムだしC++で書いちゃった方が安全じゃないかな?
遅いC#なんか使うなってこった
言語の問題なのかwww
言語はあんまり関係ないような
ボトルネックは違うところにあるだろうし
数十Gb/sの帯域、ms単位のスループットが要件なのに
GCがある.netでなぜしようと思ったのか。
GCは関係ないってw
ストレージに書き込みが間に合わない
って本人も言ってるじゃんw
言語のとろさなんてCPUパワーでなんとかなるよw
なんでやねん。C++屋の一番の不満はGCじゃん。
GC起きないように構造体をいくつか先に確保して
使い回せばいいだけだろw
GCで悩むネタじゃないってこと
そもそも入力に対して出力が間に合わないから
メモリプールなんて考えてるんだから設計が悪いだけ
全然分かってないな。組み込み経験ないのかよ。
組み込みとは違いますもの
いつから組み込みの話になったんだよ文盲
ICEと死ぬまで遊んでろ
Windowsで数十Gb/sの入力を処理する案件なんて聞いたことがない。
組み込みならともかく。
1280x1024x4バイトのメモリを100バッファ程度確保して
使いまわそうが問題ないと思いますよw
組み込みじゃないしw
228 :
デフォルトの名無しさん:2012/02/22(水) 18:55:52.13
はったりかまして本人逃亡中w
229 :
デフォルトの名無しさん:2012/02/22(水) 18:57:11.66
本人逃げたな。
どのIFか聞いたら答えずに逃げ出しやがった。
最低のチンカスだな。
そもそも質問者は具体的に入力がどのくらいの速度だか言ってないよな
まあ確かにCPUの性能はあがったけどそれに比べて
足回り(メモリ帯域、途中のバス、ストレージなど)は
大きく進化してないんだけどな
何でもかんでも一台でできるとは思わない方がいいよ
まあ台数減らしたいなら
1入力に対してストレージを一つ占有させることだな
膨大なデータが来るようなら一つのHDDに出力すると
ヘッドの奪い合いになって間に合わないだろうし
>>230 でもHDDに間に合わないのでメモリにプールするとか
言い出してるのでストレージがHDDとすると地デジなんかの
ストリームの比じゃないよね?
6.25*6で約38Gbpsじゃないの
なんだそれw
>>233 まあ問題はバスの帯域は計算できてもそんな速度で流れてくるデータを
HDDという時代遅れの構造してるストレージが処理できるかどうかなのよねw
まあシングルストリームならヘッドをそれほど動かさないでいいんだろうけどさw
マルチストリームをHDD一台に送るとたぶん処理が追いつかないと思う
具体的には一瞬で16Gのメモリがいっぱいと言ってるから、128Gbpsぐらいだなw
もうアホかと。
238 :
デフォルトの名無しさん:2012/02/22(水) 19:10:46.29
本人出てこいよ。
239 :
デフォルトの名無しさん:2012/02/22(水) 19:17:18.15
GCあるから無理に一票。
241 :
デフォルトの名無しさん:2012/02/22(水) 19:23:17.63
GCの話からどんどん逸れてくなw
まあそこまで収支のバランスが悪いといくら貯金があっても駄目だなw
245 :
デフォルトの名無しさん:2012/02/22(水) 19:36:24.06
いや俺がガンダムだ!
やっぱりWindowsしか使わないんだったらC#でもいいけど
Macでも動くやつを作りたいからJavaを覚えるべきなのか
Javaスレで質問しても回答付かないし苦痛だ
どっちもでいいじゃないか。
悩むようなことではない。
WPFスレからこちらへ移動します。
http://www1.axfc.net/uploader/File/so/75711 要素を拡縮平行移動するテストアプリを作りました。
左ドラッグで平行移動、右ドラッグ上下で拡縮します。
拡縮はCenterX,Yを用いて中心点を設定します。
右クリック時のポインタ座標が中心点です。
このアプリだと意図したとおりに動きません。
拡縮や平行移動を繰り返していると拡縮を行うとき(右クリック時)勝手に要素が動いてしまいます。
これを勝手に動かないようにしたいです。
>>249 >>2のサイトに貼れないの?
ダウンロードしてコードを読む気にならない
何甘えてんの?
ぱっと見の感想
なぜelseを使わない?
>>254 即席ででっち上げた代物ですので…
確かにe.ChangedButtonのところはelseにするのがふさわしいですね。
この程度で殴り書きした物もってくるなよ
MouseDownのこれでいいの?
Point center = e.GetPosition(s);
_zoom.CenterX = center.X;
_zoom.CenterY = center.Y;
>>256 対象要素(controlTarget)の座標上での相対位置がほしいのでそれでいいはずです。
文字通りです
一度サイズ変更してから右クリックしてみたらいい
それで意味が解るはず
zoomするために図形の中心が欲しいのはわかるが
e.GetPosition(s)ってマウスと図形の相対位置だろ?
こういうのじゃダメなのかなあ
_zoom.CenterX = controlTarget.ActualWidth/2;
_zoom.CenterY = controlTarget.ActualHeight / 2;
うーん、わかりません。
親要素の座標だと当然うまくいかないし、他に残されてるのは何でしょう。
>>263 それだと図形の真ん中が中心点として固定されます。
マウスポインタ上の点を中心点にするという目的が達成できません。
中心点を変えると変形して移動したように見えてるって理解してる?
>>264 コード見る限りそういう実装じゃないけど…
267 :
256:2012/02/22(水) 22:02:24.71
えっ!
>>267 いえ、それだと仕様が違います。
マウスポインタが(0, 10)を指すならその点を中心点に。(180, 150)ならそこを。
そのコードだと中心点が(100,100)固定になっています。
>>265 えーと、なんか気づきそうです。ちょっと待って下さい。
>>269 >マウスポインタが(0, 10)を指すならその点を中心点に。(180, 150)ならそこを。
なんでそんなことするの?w
それ以前に中心は図形上の相対座標を指定しないといけないのに
スクリーン座標を指定している
>>270 たとえば画面に収まりきらない大きな画像があって、
すみの方を拡大して見るとき、画像の中心を基準に拡大するのは不適切ではありませんか?
拡大したとたん、見ていたところは外側へ流れて行ってしまいます。
現状、
>>249のソースで任意の点を中心点にするという仕様は達成できています。
ズーム開始時に図形が平行移動してしまうのが問題です。
おそらくTranslateTransformを用いて移動を打ち消すことになるとは思い
いろいろ試してますがいまだうまくいってません。
とりあえず言うけど解決するにはこんな短いコードじゃすまないよ
>>271 Point center = e.GetPosition(s);
で図形要素の相対座標を指定しているので大丈夫です。
>>273 偶然だよ
コントロールの初期位置変えてみろよ
>>276 Canvas.Left,Topで移動しても大丈夫(任意点を中心にズームするという意味で)なようですよ。
_panでもです。
初期サイズのほうだったすまん
言いたいことはわかったがWPFの仕組み上の想像なんだが
一度変更した後の状態がスケールサイズ1.0 1.0 と改めないとだめなんじゃないの?
今の状態だと200,200図形にぶら下がってるスケールとか指定するオブジェクトの
数値を元に表示サイズを調整してるだけで元の図形はなんら変わってないぞ
.NetFramework3.5、WindowsFormのテキストボックスで、
オートコンプリートの検索値と実際に表示される候補とを分けることはできますか?
具体的には、あらかじめ「"あいさつ"、"挨拶"」といったペアになるキーを用意しておいて、
「あい」と入力(確定)したときの候補に「挨拶」が出るようにしたいです。
>>279 図形の座標を見るとスケールサイズにかかわらず、
図形の左上が(0,0)、右下が(200,200)であることに変わりはありません。
[親要素の座標] * [スケールサイズ] + [平行移動] で図形座標が求まる感じです。
Transform系は元要素をいじらず表示を変えるものと認識してますが…。
ここでのやりとりでちょっとつかめてきた感じです。
CenterX,Yプロパティを変更すると図形が平行移動するという仕様がどうやらあるようです。
今はそれを打ち消す方向で考えてます。
>>281 _zoom.CenterX = center.X;
_zoom.CenterY = center.Y;
の下に
text1.Text = center.ToString();
を入れて見てみました。
図形サイズが200,200のとき、平行移動してもズームしても図形の左上は(0,0)右下は(200,200)を指します。
意図した動作です。
>CenterX,Yプロパティを変更すると図形が平行移動するという仕様
ここは笑うところですか?
>>282 >図形サイズが200,200のとき、平行移動してもズームしても図形の左上は(0,0)右下は(200,200)を指します。
だからこそ飛び跳ねるように見えるって説明してるじゃんw
WPFの構造上中心点を任意の場所にしてスケールかえるとなると
変更のたびに変更後の図形がスケール1.0,1.0としてみなす形に
しないとうまくいかないんじゃなの?って言ってるw
本当にクリックした点を中心に拡大してるか?
コピペしたコードはまったく違った動作しているんだが…
>>286 図形オブジェクトとそれにぶら下げたズームなどの関係がわかってないので
未だに暴走してるんだよな・・・
>>286 クリックする直前に指していた点が中心点になります。
クリックした直後、図形がズレます。
>>285 みなすとは具体的にどうやるんですか?よくわかりません。
>>288 >クリックする直前に指していた点が中心点になります。
>クリックした直後、図形がズレます。
いやいや
ずれなくても間違ってるよ
同じ場所で二回クリックして拡大してみたらいい
中心が間違ってる
サイズ200,200 スケール1.0,1.0の図形に対して変形をかけた場合
変形後の図形をまた基準としなおさないとたぶんいつまでたっても解決しないんじゃないかな?
そうじゃないと2回目以降は前の変形を覚えてないよ
言われてること理解できた?
>>292 >>291に関しては、ズームの度にWidth,Heightに反映させてスケールを
リセットするということかと思います。
問題はスケール変更後の新座標を与えなおさないと移動するんだよな・・・
RenderTransformだからまずい
RenderTransformで質問者のやりたいことを実現するなら
RenderTransformを変更回数分覚えてて適応してくれないと困る
それが無駄だから元のオブジェクトの状態をTransformしないとと言ってる
うーん。行列は諦めたほうがいいのかなぁ〜。
横から挑戦してるが、Winformより複雑になってて難しいな〜。。
出来ました
else if (e.ChangedButton == MouseButton.Right)
{
var s = sender as UIElement;
s.CaptureMouse();
_rightDragOffset = e.GetPosition(this);
_rightIsDragging = true;
Point center = e.GetPosition(s);
_zoom.CenterX = center.X;
_zoom.CenterY = center.Y;
Point parent = e.GetPosition(canvas);
_zoomPan.X = parent.X - (_pan.X + center.X);
_zoomPan.Y = parent.Y - (_pan.Y + center.Y);
text1.Text = center.ToString();
}
canvasは図形の親要素で、_zoomPanは新たに追加したTranslateTransformです。
(_panへの代入でもいけると思いますが)
うまく説明できませんがCenterX,Yプロパティの変更に伴う平行移動を打ち消す形になってます。
わかってなかったw
まあ今のままじゃあ回転まで入れるとたぶんもっとわけわからなくなると思うw
一番最初の図形をrec(0)とすると本来期待する動作は
一度目変更するとrec(0)->rec(1)
二度目変更するとrec(1)->rec(2)
・・・以下略
となるべきなんだけどRenderTransformに変更かけてるだけなので
rec(0)へ常に変更かけてるだけなんだよね
rec(1)があった位置ぽいところでごちゃごちゃやった変更値をね
本人が解決したってんだからほっとけよ
ハイ次w
正しくやるには変更の履歴をとる形でやらないといけないということですか。
できればみなさんのコードが見たかったんですが…。
ともあれおつきあいいただきありがとうございました。
>>302 公開されたコード適応したけど解決してねーよw
第一間違ってるしw
VMによりけり
フォームのなかにブラウザエンジンfirefoxで描画とかできるんでしたっけ?IEオンリー?
つ winforms gekko
フォームのなかにブラウザエンジンChromeで描画とかできるんでしたっけ?
さあな
311 :
296:2012/02/23(木) 02:14:53.71
うひー、デケタ!!
結局考え方は行列て言うかアフィン変換的な何かにたどり着いたな・・・。
殆ど力技でグチャグチャだけど満足満足。
http://ideone.com/0j2pX アフィン変換の関数って普通に書いても10行位でかけちゃうんだよな・・・。
それがこんなぐちゃぐちゃになるなんて!!Orz
treeViewの表示部分がないクラスみたいなのはありますか?
(listBoxがList<T>に相当するみたいな感じの)
ツリー構造を表示しないで内部で管理したいってこと?
treenodeがあるけど
315 :
デフォルトの名無しさん:2012/02/23(木) 13:31:10.90
というかtreenodeってwinformの関連になってるはずなので
List<T>のような汎用的な物じゃないよ
DOMがいい
あとはXML関連か
自前でNodeクラス作ればいいのにな
319 :
デフォルトの名無しさん:2012/02/23(木) 16:11:03.01
VC#2010expressを使用しています。
シリアル通信で取得した複数のデータを、
フォーム上に表のように表示させたいと思っています。
(10×7程度の表で、一部Excelで言うところのセルを結合した状態で使います)
値はLabelで表示させれば良いかと思ってますが、
罫線をどうやって作るか悩んでいます。
Labelの値をnullして罫線の代わりに使おうとすると太さが変えられないし、
Lineshapeを使ってフォームデザイン状で作成しても良いのですが
恐ろしく手間(行間のサイズの調整など)なので、
もっと他に手はないかと思っています。
よろしくおねがいします。
321 :
デフォルトの名無しさん:2012/02/23(木) 16:21:06.67
>>片山さん
ありがとうございました。
思っていたとおりのことが出来そうです。
>>320 おまえc#使ったことないって言ってなかったっけ?
323 :
125:2012/02/23(木) 17:04:55.80
知らんがな
Windowクラス名を取得する方法を教えてください
ぐぐれかす
GetClassName
テキストの元配列があります。{あい、あう、あえ、あいう、あうう、あお、あか}
元配列の先頭から結果配列に追加していくのですが、結果配列に先頭一致の値があれば追加しない処理をしています。
つまり、↑の元配列を処理すると、
「あい」は結果配列が空だから結果配列に「あい」を追加。
「あう」は結果配列に無いから、結果配列に「あう」を追加
「あえ」は結果配列に無いから、結果配列に「あえ」を追加
「あいう」を処理する時は結果配列に「あい」が登録済みで、先頭一致するので、「あいう」は登録しない。
「あうう」も「あう」が登録済みだからスキップ・・という事をしています。
コードは
arraylist 元配列=new arrayList(3500件のデータ);
arraylist 結果配列=new arrayList(300件のデータ);//結果配列には元からある程度のデータがある。
foreach(string i in 元配列){
bool add=true;
foreach(string i2 in 結果配列){
if(i2.indexOf(i)>=0){
add=false;
break;
}
}
if(add){
結果配列.push(i);
}
}
・・です。
breakを入れてはいるものの、3500*(300〜0)回のループを回していて非常に効率が悪く、15秒近くかかってしまいます。
先頭一致じゃなくて完全一致なら二重ループではなくハッシュテーブルのキーで存在確認が出来るのですが・・。
シンプルすぎて最適化出来る場所がわかりません。よろしければ、高速化出来る箇所を教えて下さい。
>>327 とりあえず元データをソートしてから処理したら?
理由は分かるよね
結果配列とは別に結果文字列をつなげていった文字列を
instrすれば速いと思う
>>327 Dictionaryってクラス使うと簡単にできるよ
LZWでこんなの書いた気がする
プラグインを実現するにはどうすればいいですか?
MEFだかMFEだかいうやつ
元配列が何の順で並んでるのか知らないが、少なくとも辞書順じゃなさそうだ
ソートすっと結果が変わりそう
Notepadにキー入力する方法を教えてください
SendInput
>>336 ありがとうございます
サンプル書いたら張りますのでちょっと待っててください
System.GetType のTypeって
String とか Int とか 自作クラスみたいな型のことだよね?
型そのものじゃない
型を表すクラス
>>327 思いつきでいくつか
結果配列に値が追加された段階で、元配列(の残り)から、追加されない要素を省いたらどうだろうか
元配列をソートするか、ソートした別配列持っといた方が良いかも
indexOFと結果文字列の長さで切って比較するのとどっちが早いかな?
foreachで回すんじゃなくて、インデックス自分で管理してループさせれば
addフラグのセットやチェックいらなくなるな
>>327 mecabってソフトがあるんだけどそのアルゴリズムが使えると思うよ
状態遷移だね
342 :
デフォルトの名無しさん:2012/02/24(金) 10:21:03.15
質問です。
ビットマップの一部を他のビットマップにコピーしたいです。
その際、コピー元とコピー先をXOR演算したいのですが、
Graphics.DrawImage メソッド だと XORなどを指定する場所がないみたいです。
どうしたらXORでコピーできますか?
日本人夫婦から治療費5千万円詐取容疑 韓国人の女逮捕
韓国のソウル地方警察庁は23日、知人の日本人夫婦にソウルの病院を紹介し、実際の数倍の
治療費を夫婦に請求して約7億ウォン(約5千万円)をだまし取ったとして、韓国人の女(36)を詐欺などの疑いで逮捕したと発表した。
同庁によると、女は宮崎県でネールアート店を経営。知り合った老夫婦に「待たずに手術を受けられる」などとソウルの病院を勧め、
昨年5月までの約1年間、病院の領収書を偽造して夫婦に請求し、差額をだまし取った疑いがある。
警察によると、女は容疑を認めているといい、ほかに被害にあった日本人がいないか調べている。
http://www.asahi.com/international/update/0223/TKY201202230625.html
>>342 lockbitsしてポインタで操作すれば?
・BitBltとかを呼び出す
・LockBitsしてピクセルデータを自前で合成する
・ライブラリがないか探してみる
>>342 >>346 (私のイメージする) C# っぽいのは ライブラリに頼る感じっぽいですね。
ありがとうございます。
unsafeがちょっと抵抗あるので
BitBltとか調べてみようと思います。
キー入力を監視するプログラムを作りたいのですが
例えばプログラムを右下のタスクトレイにアイコンだけの状態にして
他のテキストエディタの上で\って打ったら_が入力されるようにしたいのですが
キーイベントが取得できません
グローバルフックをすればいいかもしれないけどわからない
>>349 タスクトレイに表示したからといってキーボードフォーカスがないんだからキーイベントが来るわけない
そもそも簡単に他のプロセスへのキー入力を見ることができるわけがない
>>350のグローバルフックでできるが、そのレベルそこまでたどり着くのはかなりの道だと考えた方がいい
難しいですか
やっぱそのへんはAHKつかったほうがいいですね
C# グローバルフックで検索して出てくるソースを適当にコピペするだけやん
ただ、差し替えは出来んので 握りつぶしつつ、SendKeysとかになるけど
フックはC++使えってこった。
お前ら方法だけに反応してるけど
そいつとんでもないこと書いてるぞ
ドイツですか
いややっぱりC++無理っす
やっぱ難しいのでAHKで対応します
Shift押しながら¥押して_を入力したりするのが面倒なだけなんですけどね
キーが隣じゃん
すぐ横にあるキー押せばいいだけじゃん
いやそれが面倒くさいんですよ
あと&とか"とかShift押す手間を省きたいんすよ
全部入力してから置換すればいいいじゃん。
めんどくさいってw
右手の小指と薬指をちょっとずらして降ろすだけじゃんwww
キーマップ変更するだけだな
C#でflvやmp4を再生するにはflvやmp4を再生するswfを作って
flashオブジェクトにloadmovieしてやるのがいいですか?
mediaplayer
>>366 コーデックが入ってればWMPコントロールとか、WPFのMediaElement使っちゃうとか
370 :
デフォルトの名無しさん:2012/02/24(金) 19:09:50.59
へえ
了解です。AIRでやることにします。
Label1.Location.X = 1 * 10;
Label2.Location.X = 2 * 10;
Label3.Location.X = 3 * 10;
という処理が続くときにLabelの添え字をうまく表す方法はありますか?
たとえば
for(int i=0; i<100; ++i)
{
Label(i).Location.X = i * 10;
}
のように書けるとうれしいのですが。
listに入れろよ
Label[] myLabel = new Label[10];
Label[0] = Label0;
以下略
ってLabel配列を用意してそこに入れておく
もしくはList<T>にLabelいれておいてもいいけど
label1〜4個配置してる場合はこんな感じでセットしておいて(どちらでもいい)
Label[] labels = new Label[4];
labels[0] = label1;
labels[1] = label2;
labels[2] = label3;
labels[3] = label4;
List<Label> labels = new List<Label>();
labels.Add(label1);
labels.Add(label2);
labels.Add(label3);
labels.Add(label4);
ネトウヨ王に、俺はなる!まで読んだ。
日本中から嫌われてるネトウヨ。
なるほど
>>375のようにすれば最初に100個の代入を書くのが面倒なだけで
その後の処理は一括で出来ますね。
やはりダイレクトに添え字を表そうとするのは虫が良すぎましたか;;
どうもありがとうございました!
いったい何が面倒なのだろう。
ム板で手作業で100回行打ち込む馬鹿はいないだろうに。
単純作業はPCにやらせろ。
ちょっと前のC#馬鹿はなんでもリフレクション使っていたな
コンピューターがこなせるよう処理を単純化してやるのが仕事だよね
エクセルでさくっと作ればいいじゃんw
あ、面倒という表現は適切じゃないかもしれないですね。
見た目が美しくないのが気になる…といったところです;;
>>383 C#で書けばいいだけだろw
textbox貼り付けて
labels.Add(label1);
とか文字列をfor分で出力するだけだろw
>>384 #region 宣言
//長ったらしい代入処理
#endregion
って囲っておけばその分をIDE上では開閉できるよ
>って囲っておけばその分をIDE上では開閉できるよ
って囲っておけばその文をIDE上では開閉できるよ
ファクトリーで量産しろよ
でもLocationまで動的に配置するならいっそのことLabelその物を動的に作成すればいいんだろうなw
そうやね
ラベル100個貼るならじかに描画しろよ
部下に命令 > キーボードマクロ > 各種スクリプト > Excel > 手作業 >>>>派遣に丸投げ
なんか話がおかしな方向に向かってるなw
こうしてみると
コントロールの名前を表す文字列でコントロールを操作したいというのは
初心者がどうしてもやりたくなる何かがあるんだろうか
普通は名前じゃないの?
ウインドハンドルで操作してる人なんているの?
そういうことじゃないよ馬鹿
ビジュアルから入るからじゃない?
名前とビューがフュージョンしてて、その下のモデルが見えてないというか・・・。
>>396 そういう意味じゃなくてちょっと前に質問あったような
コントロールにアクセスする際に文字列を操作するように
コントロール名を合成してアクセスさせろってタイプだよw
たとえばlabel.Nameに割り当てる名前はある親の配下にぶら下がってる
コントロールを検索する際などに使うだけなんだよな・・・
Label label1 とは別物
401 :
デフォルトの名無しさん:2012/02/24(金) 21:57:38.34
402 :
デフォルトの名無しさん:2012/02/24(金) 22:00:43.81
>>401 >>394を見たからじゃないの?
よくわかってない人が
>>394を見るとNameってところにLabel Label1(Labelの参照)
と同じLabel1(string)をわりあててるじゃん!!ってね
実際は()の中なので無理なんだけどね
HTML+JSなんかは、innerHTMLで、
innerHTML = "<control name="+str+" ></control>"
とかやるとほんとにそういうアクセスできたりするので、そっちの関係の人かもしれん。
404 :
デフォルトの名無しさん:2012/02/24(金) 22:03:41.02
>>403 常に動的にテキストコードを解析するブラウザと混同されると・・・
動的に解析ってただのスクリプト、インタプリタだろ。
dictionaryおすすめ
>>404 彼らがJitコンパイルを勘違いしてるとも思えないしなぁ・・・。
ま、勘がよすぎるんだろう・・・。
>>406 そんなことしなくてもNameに指定した文字列としての名前で
インスタンスを引っ張りだしてアクセスできるじゃん
つうかリストにぶち込んでforeachで回して
添字処か名前さえ意識しないのがC#流だよな
要素数変えないならそうだな。
まあWPFやSLになるとバインドでキーワードを使って
たりするんだけどなwww
>>411 まああれだなWPFやSLのバインドを経験するといちいちインスタンスの
参照を持つよりキーワードでリンクしちゃった方が楽って思うけどなw
だからWPFは遅いのか。
MVVMの仕組みを実現するためだからある程度は仕方ないよ
クライアントソフトの中でブラウザとサーバー側が共存してるような感じなんだし
XAML=html+css
C#など=javascriptもしくはサーバーサイドのphpやperl
XAML=html+css+javascripの一部
javascriptの部分は含まれてもいるし分かれてもいるし
従来のようなイベントドリブンぽいコードを書いた場合は
html+css+javascriptか
バインドで処理するところはhtml+css <-> php perl
みたいな関係だな
純粋には比べられない
XAMLはオブジェクト生成のためのひな形
アニメーションなどの動作も含まれている
動作っていうか動作を担当する物のインスタンスを作ってるだけだよw
htmlのDOMを作るのとかわらん
実際動的な処理をしてるのはXAMLを解析して作られた
インスタンス
WPFが遅いのは依存関係プロパティをレイアウトに使った時だ
AndroidのGUIもXMLだから遅いとか批判されてたけど馬鹿な話だぜ
XMLが遅いのはテキストベースだからだろ。どうやっても確実に遅い。
ハードがいくら速くなってもバイナリよりは確実に遅い。
だから永久に馬鹿にされる。
いやいやw
XMLだろうがXAMLだろうが何らかのタイミングで解析しちゃえば
その後は必要ないだろw
ブラウザがhtmlなどを解析してDOM作っちゃえばリロードとかしない限り
再解析しないだろw
っ[ BAML ]
>>421 な、こういう馬鹿がいるんだよ
発行した時点でバイナリになりますとDeveloper AnnouncementsのなぜXMLを使うのかにも書いてあるのに
>>423 俺についての話?
なんらかのタイミングっていうのはビルド時も含まれるよ
実際調べたことないのでビルド時なのかアプリ起動時なのか(まあこれはないか)
しらなかったのでなんらかの・・・って濁したけど
フレームワークはお前らのような低能が開発してるわけじゃないんだからキャッシュ機構くらい搭載していて当然だろう
>>426 ところが.netの実行時の話を聞いてると完全なコンパイルはしないと聞くしねえ
428 :
デフォルトの名無しさん:2012/02/25(土) 00:17:59.11
>>424 な、こういう馬鹿がいるんだよ
発行した時点でバイナリになってそれが有効なのは、フレームワーク内だけということが理解できてない。
バイナリで流通できたらそれはもうXMLでないことが理解できてない。
>>428 鸚鵡返ししちゃってどうしたのかなボク
毎度毎度パーサを走らせるとこれっぽっちでも思ってたか?
C#だってソースコードがそのまま走ってるんですよ。
…今日日そんなのインタプリタですら皆無だと思うが。
昔のBASICですら中間コードになってたけどなw
ポケコンのBASICもw
433 :
デフォルトの名無しさん:2012/02/25(土) 00:54:34.70
BASICもJAVAもXMLも遅い。これだけはガチ。
434 :
デフォルトの名無しさん:2012/02/25(土) 00:55:36.06
XML最強だし、Javaも最強。
c#は糞。
>>430 なんでXML絡むシステムはどれも遅いの?
XMLを導入して遅すぎて失敗した例 WinFS、WPF
XMLが速いならJavaもBasicも速いということになる。だがそれはない。
しかし、Javaと違ってc#は早い。なぜか。
トイレに言ってるときに隠れて再コンパイルしてひたすら最適化してやがる。
.NET Runtime Optimization Serviceというのがそれだ。
Java厨には内緒だぞ。
馬鹿のやるネタは面白くないって。
まあ、書いてる本人はネタで書いてるつもりないんだろうけど。
どうせ雑談するなら最低限面白いことを書いてくれ。
439 :
デフォルトの名無しさん:2012/02/25(土) 01:38:43.86
頭の悪いXML厨は質問に答えず逃げ出したのか。ダサ杉。
毎回パーサ走らせると思い込んでる知能障害が何かほざいてますなあ
テキストだから遅い!ドヤッ
442 :
デフォルトの名無しさん:2012/02/25(土) 02:44:05.72
頭の悪いXML厨が戻ってきますた。
テキストは確かに効率悪いんでバイナリ変換しますわ→バイナリなんてXMLじゃない(苦笑)
"テキストだから遅い"が主張の寄りどころだから"じゃあバイナリにします"なんて言い分は認められないわな
バイナリがフレームワークでしか有効でない?
結構じゃないの
実行効率を突き詰めればVMよりマシン語を選ぶに決まっているだろう
>>435 遅い書き方しか知らないからだろlクズisperが
> VMよりマシン語
> VMよりマシン語
> VMよりマシン語
これは流行る
バイナリ変換したらXMLの意味がないって?
XMLの特徴は可搬性だけでなく構造的な記述面もあるだろうに
れにHTMLを読める奴は沢山いるのだから似た記述を選択する理由はあまりあると思うがね
細かくやるより大雑把にやったほうがうまくいくこともあるんだよ・・・。
アルゴリズムを考えた時に感じたこと有るでしょ?
>>448 どこで流行るんだよ
まさかJavaバイトコードとIA32命令セットみたいな具体的な例を挙げないと低脳すぎて理解できんのか?
>>451 だからいつまでたってもうだつが上がらないんだね。
全くない。アルゴリズムなど考えない。
仕様が決まれば即座に最適なアルゴリズムが頭に浮かぶ。
ガキの頃から何十年もコード書いてればこうなる。
羽生永世名人も言ってた。強くなればなるほど考えないって。
似ているということはどれだけ大きなメリットか理解しているはずだよな?
なにせパクリ言語のユーザーなんだから。
そのまま考えるのを止めて死ねばいいのにね。
性格の悪さが出てますよ。
そういやコンピュータ将棋が急に強くなったのは、
考えることは止めて、過去の棋譜の統計で答えをだすようになってからだな。
羽生は天才だね。
>>454 正解!
>>455 アルゴリズムがキャッシュされてるんだと思うけど、
どこかでキャッシュするフェーズは会ったと思うなー。
で、その時は考えてると思う。俺の想像だけど・・・。
著名人の名を出して何かを言った気になってる奴にはなりたくないものだ。
あなたのようにもね
464 :
デフォルトの名無しさん:2012/02/25(土) 05:34:23.78
人のコード読んでて
private double length;
public double Length
{
get { return this.length; }
set { this.length = value; }
}
というのが出てきたんだけども、ここでプロパティ使う意味がわからん。
public double length;
で済ませられるんじゃね
465 :
デフォルトの名無しさん:2012/02/25(土) 06:08:54.16
何だ、この糞コード
>>464 それについては原始時代から数百億回ほど議論されているのでヨロシク
ホント飽きる話題だけど
誰かがバイブルにまとめておかないから繰り返されるんだぞ
自分のプロジェクトで使うだけなら
public double length;
でいい。
世界に公開するならプロパティにする。
っていうのでFA
説明になってないしw
なんでよ?
そのクラスを使うほうのソースをいじれるかどうかの違いだろ。
さすが俺。
一万年と二千年前から繰り返し〜
フィールドをプロパティにすることで利用側で必要になるのはソースの変更でなくリビルド
過去から現代にタイムスリップしてきたんだろう
そろそろ100スレだしテンプレ質問くらいまとめろよ
俺はここ5スレくらいしか知らんのでパス
デスクトップマスコットが作りたいんですが1秒毎に動かしたいのですが
Thread.sleepやると止まっている間は何も出来なくなってしまいます
480 :
デフォルトの名無しさん:2012/02/25(土) 15:47:21.55
Timer、わかりました
Timerで300ミリぴったしを図ることはできますか?
原子時計で300ミリ秒ですか?
要求精度をまず明らかにした方がいいと思います
タイマーの種類によりますが5〜50ミリ秒くらいずれます
デスクトップマスコットにそこまでの精度が必要なのか・・・
デスクトップマスコットごとき500ミリ秒単位でずれたって構わんだろ
毎回最大値でずれる訳でもないのに
そもそもSleepも指定した時間通りには待ってない件
原理上タスクスライスに要する時間は誤差が出る
極め付けにどのタイマーも優先度が低い
FormsのWM_TIMER使ったタイマーは言うに及ばず
サーバーベースタイマーもThreadPoolで動くから遅延する時はする
タイマーってマルチスレッドですか?
うむ
確認だけど、面白いと思って言ったのか知りたい。
初心者って細かいことにこだわる人が多いよね.
閏年の判定だって100年も使うプログラムじゃないのに100年,400年まで判定したり・・・
せいぜい数回しか使わない、ミリ秒単位の数字にすら出てこないコードの差に対してどっちが速いですかとのたまってみたり
>>495 DateTimeさんが何でもやってくれる.Net系の言語で気にすることではないな
そうやって細かいこと気にせず作ったのが、JavaVM。
拘り続けて作ったのが、.net freamwork。
あなたはどちらを使いますか?
あなたのプログラムはユーザーからそう思われているのです。
ポエマーきもっ
つーかJavaVMと.NetFrameworkは比較対象としておかしいだろ
JavaVMが動いているデバイスのほうが圧倒的多数だと思いますが
.NET?って何でしたっけ?
さあ、何だったかな
Java厨はなんでこのスレを監視してるの?
ぽんこつアンチ
1人ゲット
え?
拘り続けて物が出来上がらないのが貴方がた
はあ、さいで
そっすね
ごめんなさい
コントロールのTabStopをfalseにしても矢印キーでフォーカスを移動できてしまいます。
完全にフォーカスを禁止する方法はないでしょうか。
どのコントロールだよ
もしかしてFormに貼り付けた全部のコントロールとか言い出さないよね?
え?設定できるだろ?
と思ったが、WinFormsはFocusableが無いのか
あ、Control.SetStyle(ControlStyles.Selectable, false)ってあるけどこれは?
カスタムコントロールを作ってそれにControl.SetStyleを適用することで
フォーカス禁止に出来ました。どうもありがとうございます。
VisualStudioのWebBrowserを使って自作ブラウザを作っているのですが、
未入力チェック等のjavascriptのalertが反応してくれません。
WebBrowserの方に何か設定が必要なのでしょうか?
どなたかご教示いただければありがたいです。
private List[]<Message,int> Messages = new List[]<Message,int>();
こんなようなことをやりたいんだが、
エスパー頼む
ペアでmessageとintを格納したい
格納用クラス作れよw
辞書でいいとか?w
まあDictionaryでいいっしょ
あんましやりたくないが
じゃあしなくていいよ
Tupleどうぞ
行・列ともに可変長の二次元配列をつくるにはどうすればいいですか?
int[][] arrays = new int[][];
だとサイズを決めろとコンパイラに怒られます。。
List<List<int>>
とか
そもそも配列は可変長じゃないんで
>>497 日付はDateTimeしか使わないのか?w
異星人に侵略されて、奴らの暦を使わされてDateTimeは無意味になる
DateTimeは(Unix Timeとかと同じように)ある時点からの経過時間を抽象化したものに
過ぎないから、どんな暦だろうと対応可能なはずに思うが
その日の体調によって時間が過ぎる速さが
速くなったり遅くなったりするからDateTimeは使えない
他の星の暦じゃ秒から長さが違ってるだろうな
ニュートリノ「光より速いオイラもDateTime使っていいかい?」
534 :
デフォルトの名無しさん:2012/02/26(日) 17:48:24.50
C# WebForum&ASP.netで質問です。
Label label=new Label();
label.ID="Label1";
label.Text="Label1";
this.Controls.Add(label);
これをPage_load()に書きこんでコントロールを追加したのはいいのですが、
”Formタグの内側に置かなければなりません。”とエラーがでます。
追加したlabelをブラウザ上に表示するにはどうしたらいいでしょうか?
そのエラーの通りにFormの中に作るしかない
System.Diagnostics.Process[] ps = System.Diagnostics.Process.GetProcesses();
foreach (System.Diagnostics.Process p in ps)
>>536 で、p.MainModule.ModuleNameをアクセスしよとするとアクセス拒否の例外が出ます。
これを例外を出さずに、アクセス可能なプロセスかどうか調べる方法はありますか?
try-catchで十分でしょ
そういうレベルの高い質問はここで聞いても無駄だろう。
try使えといわれるだけ
煽っても何も出ないよ
アクセス可能なプロセスかどうか調べるためにはアクセスしないといけない
アクセスして例外出すことなく
アクセス可能か調べることは
出来なくはない
まあFileのACLと同じで
ACLに触った瞬間権限がありませ(とか言われたりもするが
試しに書いたら90行くらいになってしまったけど欲しい?
ふう
ほしいです。
90行とか嘘だろ
[PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")]
class Program
{
static void Main(string[] args)
{
var ats = typeof(Program).GetCustomAttributes(typeof(PermissionSetAttribute), false);
548 :
デフォルトの名無しさん:2012/02/26(日) 22:11:14.38
bool型を0か1に変換させるのってどうやりゃいいの?
int.Parse(DownUp.ToString())
XNAでこれ↑使っても大丈夫?
>>549は
bool DownUp = false;
です
三項演算でいいだろ
あたし女だけどC#してる人って眼鏡かけてそう
>>552 な、なぜわかった!お前、俺を視てるのか?
ど、どこから!?
554 :
デフォルトの名無しさん:2012/02/27(月) 00:06:37.18
誰か教えてくれ
1. PanelでAutoScrollオンにした時の、スクロール領域いっぱいのPanelの大きさの取得方法
Panel.Sizeは表示領域のサイズでスクロールからはみ出す分の大きさが無視されて困ってます
2. ↑が不可能ならGraphicsの描画されている領域のサイズを知る方法
これも調べた限りでは方法がないような気がする。。
何か方法があると思うんだけど、エロいやつ教えて
さー
でもコンテナ(親)が子のサイズを持ってないのなら
その子のコントロールが持ってるんじゃないの?
>>547 PermissionSetを取得してからどうすればいいんですか?
557 :
デフォルトの名無しさん:2012/02/27(月) 00:27:57.32
>>555 たしかに!そんな簡単な事に気づけなかったとは情けない。
とりあえずそうしよ、ありがと。
でも
>>554のもっとスマートな取得方法あったら引き続きよろしく
558 :
デフォルトの名無しさん:2012/02/27(月) 00:44:12.00
>>535 エラーは出なくなったのですが表示がされません。
というかformにaddしただけじゃ表示されないのはわかるのですが、配置などの操作をどうしたらいいかわかりません・・・
559 :
555:2012/02/27(月) 00:44:54.61
コントロールが直下に一つしか無い場合はこんな感じじゃね?
Form
└Panel
└TextBox
textBox1.Text =
"Width = " + panel1.Controls[0].Width.ToString() + Environment.NewLine +
"Height = " + panel1.Controls[0].Height.ToString() + Environment.NewLine;
>>558 部分的なコードだけだしてできませんとか言ってるんじゃねえよ
561 :
デフォルトの名無しさん:2012/02/27(月) 00:57:20.10
>>561 そこのサイトを2ページ分使ってもいいので
Default.aspx
Default.aspx.cs
の両方をまるごと頂戴
晒すとまず部分は適当に書き換えて
あああとDefault.aspx.designer.csも
あとですねえASP.NETのデバッグは実際にページを表示して
ブラウザに出力されているソースを読むことも大事ですよ
わかった今日中になるけど・・・
c#でwebサイトを作りたいのですがASP?というものでしょうか
これをIISじゃなくてapacheで動かす方法ってございませんか?
ASP.NET apatchで検索
protected string test
{
set
{
test2 = "222";
test = value;
}
}
get
{
return test;
}
}
これだと無限ループしちゃうって例外が出るんだが、
ゲットだけ普通のゲッターメソッドっぽくする方法ってどうやるの?
GUIからconsoleに書き込み出来るライブラリはありませんか?
>>571 string _test;
protected string test {
set {
_test = value;
}
get {
return _test;
}
}
>>572 テキストボックスに入力された文字列をConsole.Writeじゃだめなの?
>>574 え、GUIで作ったときでもConsole.Writeって使えたんですか?
Consoleクラスってのは
実際はコンソールが対象ではなく標準入出力が対象
標準入出力を持ってないプロセスは基本的に無いのでいつでも使える
なるほど、コンソールプログラムのときしか使えないと思ってました
どうもです
いえいえ
できるできないで悩む前にFormアプリに一行書くだけのような気もする
悩む以前の場合その論法は使えないだろう
使えないと思い込んでたんだから悩んでない
581 :
534:2012/02/27(月) 22:05:47.67
582 :
デフォルトの名無しさん:2012/02/27(月) 22:10:51.39
え
>>581 だから PlaceHolder つかえ
管理者として実行されたアプリケーションへのドラッグ&ドロップを可能にする方法はないでしょうか。
そういう管理者アプリはセキュリティ上問題があるのに、なぜ?
一時的に降格すればいい。
587 :
534:2012/02/27(月) 22:32:08.25
>>583 調べてみたのですが
<asp:PlaceHolder id="PlaceHolder1" runat="server"/>
を予め.aspxに記述して、その位置にユーザーコントロールを表示する、というものですよね・・・
1と言われたら
<asp:Label ID="Label1" runat="server"></asp:Label>
<asp:PlaceHolder id="PlaceHolder1" runat="server"/>
2と言われたら
<asp:Label ID="Label1" runat="server"></asp:Label>
<asp:PlaceHolder id="PlaceHolder1" runat="server"/>
<asp:Label ID="Label2" runat="server"></asp:Label>
<asp:PlaceHolder id="PlaceHolder2" runat="server"/>
と表示させたいんです
588 :
534:2012/02/27(月) 22:33:43.06
あ、PlaceHolderにLabelも入れればいいのか・・・?
変数って全部varでいいんだよね?
右辺値で一目瞭然なんだから
590 :
デフォルトの名無しさん:2012/02/28(火) 00:31:34.07
うん
var i= null;
var r = () => 1;
public var x = "";
右に嘘のコメントを付けたら最強
var i = 16; // 今まで付き合った女の数
char *str; // 地球誕生
str = (char *)malloc(100); // 天地創造
if(str == NULL) exit(1); // 死の星
gets(str); // 生命誕生
puts(str); // 人類進化
free(str); // 人類滅亡
return 0; // 宇宙終焉
595 :
534:2012/02/28(火) 02:21:30.21
C_class[] CI_class = new C_class[5];
int i=0;
button.OnClientClick="CI_class["+i.ToString()+"].func";
CI_classが定義されていませんって出るぞ、どういうことだ
エラーおきるぞどういうことだ
「2年間で100人以上の女性を監禁し、レイプした」−。
昨年9月から今年にかけ、強姦致傷や強盗容疑などで大阪府警捜査一課に逮捕された
韓国籍の男5人のグループが、こう供述していることが22日、分かった。
強姦容疑で再逮捕されたのは大阪市城東区の無職で韓国籍の浅津忠史容疑者(23)ら5人。
調べだと、朝鮮学校の同級生だった5人は「強(ごう)やらへんか」などと仲間を集め、
平成11年夏から約2年間、大阪駅周辺の繁華街などで、
10〜20代の女性を「車で送ってあげる」とナンパ。5人は女性を車に乗せると、
“送り狼”に豹変し、「殺すぞ」と脅迫、大阪市内のマンションに監禁し、暴行を繰り返していたという。
犯行後、5人は女性を 奈良県山中 に置き去りにしていたほか、
女性のキャッシュカードで現金を引き出すなど悪の限りを尽くしていた。
調べに対し、5人は「車に乗せた段階で、成功したも同然だった。
ほぼ毎日、やっていたので数は覚えていない」とも供述している。
http://www.zakzak.co.jp/top/t-2002_05/3t2002052213.html
>>595 ブレイクしてCI_classに何が入ってるか確認しろよ
ファイルを監視して、外部でファイルが更新される度に読み直して破棄するのって、
using文に任せるのと、自分でCloseするのはどちらが良いんでしょう?
というのも、「何度か読み直すリソースはDisposeするよりCloseする方が良い」
という話を見かけたものの、その理由が判らなかったからなのですが。
気にせずusing
ストリームのDisposeはClose呼ぶだけだな
一般的な日本語キーボードのセミコロンキーが押されてるかどうかを
取得する場合はどうすればいいでしょうか?
Keys.OemSemicolonは英語キーボードでしか取得できないようです。
実際に日本語106キーボードで試してみましたが取得できませんでした。
KeyPressとかのイベントにブレークポイント張って
自分のキーボードで押してみたらいい
VK_のほうだと
VK_OEM_PLUS
みたいだね
それに似たのある?
606 :
605:2012/02/28(火) 10:57:31.07
パスワード入力ソフトを作りたいのですが
キーロガに取得されてもいいようにキーボードで打ったキーと違うキーが入力されるようにしたいと思います
aを押したらkが入力されるような感じです
それはkeydownなどでキーがaが押されたか監視してpostMessageでkを送信すればキーロガでkが入力されたことは分からないでしょうか?
ドコをどうやってコピーしたんだ?
そのサンプルにDisposeを指定してないじゃないか
>>607 キーロガーって、どうやって作るんだろうね。
>>608 2番目ってFindWindowの1行が抜けてるだけで
それを補えば普通に動くようだが?
spy++使えよ。カスタムじゃないの?
614 :
デフォルトの名無しさん:2012/02/28(火) 12:08:30.15
textboxで代用できそうだな
ラベルの背景色を変更したいのですがFromArgbだと変更できません
Color.Redのように色名で指定すると変更できました
rgbで変更できる方法を伝授してください
private void Form1_Load(object sender, EventArgs e)
{
label1.BackColor = Color.FromArgb(0, 255, 0, 0);
// label1.BackColor = Color.Red;
}
616 :
デフォルトの名無しさん:2012/02/28(火) 14:35:12.00
HttpWebRequestのAutomaticDecompressionプロパティを設定している状態で
接続先がリダイレクトすると
Accept-Encoding: gzip, deflate,gzip, deflate,gzip, deflate,gzip, deflate
という感じになるのですが、バグってる?
617 :
デフォルトの名無しさん:2012/02/28(火) 14:38:10.39
618 :
617:2012/02/28(火) 14:41:06.94
深く気にしてなかったがこれだと文字が先に描画されて
上からペイントしちゃうなw
>>615 Color.FromArgb(255, 255, 0, 0);
で
620 :
デフォルトの名無しさん:2012/02/28(火) 14:54:11.54
>>619 ぶw
まさかそんなアホなことはしないと思って気にしてなかったけど
アルファ値が0ってオチかw
ARGBの意味を理解した方がいい
A=0だと完全な透明になるw
FromArgbでもできるじゃんw
622 :
デフォルトの名無しさん:2012/02/28(火) 15:00:38.49
できるじゃんね
624 :
デフォルトの名無しさん:2012/02/28(火) 15:07:26.56
>>623 コードを途中まで入力すると指定可能なパターンを表示してくれるのにね
ポップアップの上に上下の▲マークが付いててそれをクリックすると・・・
クリックつーか、そのままカーソルキーの上下でいいけどな
引数一つで出来たり出来なかったり本当C#はksだな
え?
ARGBを理解してないだけだろ
色の扱いの基本だろ
言語の問題じゃない
自分で理解して使うメソッド選んでるんだから
ArrayListをString[]に変換したいのですが変換できません
正しく変換する方法をご教示お願いします
public String[] StringArray()
{
ArrayList arrayList = new ArrayList();
for (int i=0; i<100; i++){
arrayList.add("第"+i.toString()+"回");
}
return (String[])al.ToArray();
}
ArrayList使うなよ
List<T>使え
ArrayListは捨てろ!
と書こうとしたら629に既に
        public String[] StringArray()
        {
            List<string> al = new List<string>();
            for (int i = 0; i < 100; i++)
            {
                al.Add("第" + i.ToString() + "回");
            }
            return al.ToArray();
        }
>>629-631 c# 動的 配列で検索するとArrayListがたくさんヒットしますが何故使ってはいけないのですか?
うん、だめ
635 :
デフォルトの名無しさん:2012/02/28(火) 15:45:47.54
List<T> ができるまでのつなぎにあったものだから
List<T>がある今使う必要は全くない。
互換性のために残してあるだけ。
>>629-634 なるほど、Listを使ったほうが良い理由が分かりました
キャストしなくていいってことですね
これからは先輩方の言うとおりにListを使うようにします
640 :
603:2012/02/28(火) 16:40:46.29
>>604-606 れすありがとうございます。お礼が遅くなってすみません。
Keys.OemSemicolon | Keys.Lbutton
で日本語キーボードのセミコロンと一致しました。
ただこの方法だと英語キーボードでは一致しないですよね。
どんな環境でも動くようにするためにはVK_を使うほうがいいのでしょうか。
どういう方法が一般的なのでしょうか。
FromArgbで0を書かなければ良かったんですね、どうもありがとうございました
>>640 VKとKeys列挙体は一致してるよ
US配列だとそのまま打てるのに
JIS配列ならShift付きじゃないと打てないとかあるんだから
考えるだけ無駄無駄
なんじゃこらw
完璧です助かりました
DOBONさんのところを見ながらやってみたんですがダメでした
dobonは間違ってない謝れ
すいませんでした
うむ
急増する「女ネット右翼」の背景
昨年8月の「フジテレビデモ」の頃からでしょうか。
現実のデモだけではなくネット上でも、こうした「ネット右翼」と呼ばれる層に明らかな変化(それも「急変」と言ってよい程の大変化)が起こりました。
具体的に言えば女性、それも特に子供を持つ既婚女性の急増という大変化です。
韓国朝鮮人への敵意や嫌悪感、それも「もうとにかく嫌! 生理的に受け付けない!」とか「韓国人は近付かないで! 気持ち悪い! 吐き気がする!」といった類の、
私のような男性とは明らかに異なる、極めて生理的・感覚的なレベルでの韓国・朝鮮人への嫌悪感を剥き出しにした投稿が急増しているように思えます。
それにしてもなぜ急に、ここまで日本人女性の韓国・朝鮮人に対する嫌悪感が盛り上がってきたのでしょうか。昨年の「高岡蒼佑のツイッター」騒動が
発端になっていることは間違いありませんが、それはあくまでも一つの「きっかけ」に過ぎず、そこに至るまでには長い不満の積み重ねがあったものと思われます。
「人権擁護法案が通ると、日本女性が韓国男達・在日韓国男達からレイプされて明らかに犯人が分かっており警察へ訴えても
『俺が在日韓国人・韓国人だからそんなことを言うのだろう!』
と言われたら、日本の警察も司法も社会も一切韓国男達・在日韓国男達に手出しは出来ず、レイプされても単なる泣き寝入りになると。
要するに日本女性の訴えは完璧にレイプ犯が分かっていても完全無視され、韓国男達・在日韓国男達が徹底的に無罪として日本で守られると。
日本社会は韓国男達・在日韓国男達が日本女性を合法的に好き放題レイプすることが出来てしかもそれが罪に一切問われない社会になる」
迂闊でした。
確かに彼女らの怯えるとおり「人権侵害救済法案(旧名『人権擁護法案』)」が万々一にも成立してしまった場合、
真っ先にその犠牲になるのは彼女たち日本人女性なのです。
そして世界一日本人女性に妄執する韓国男どもは「法律が出来たら、日本女を強姦し放題だぜヒャッハー!!」とばかり、股間を膨らませ、
涎を垂れ流しながら法案成立の時を今か今かと待ち構えているのです。
http://ameblo.jp/issuikai/entry-11170747316.html
pageloadと同じ位置でクラスのインスタンス作ると、
静的な〜ってエラーが出るんだけど、作れないの?
同じ位置でクラス定義してるから?
pageloadメソッドとボタンクリックメソッドの両方でそのクラスを使いたい
助けてください
Listで作った配列の長さを調べたいんですがLengthは使えなくて困ってます
Listの長さはどうやって調べるのでしょうか?」
ごめんなさいCountで取れました
人に聞く前にリファレンス読めよ
リファレンスの見方がわかりません
使ってるクラスのプロパティとかメソッドのリストを見たらいいよ
とりあえずピリオド打って出てきたリストから探すのはやるかな。
当たりつけてると見落とすこともある。CountとLengthは決めつけてるとやりそう
せっけいってたんごしらないでしょw
もう流せばいいのに安価付けて構うから…。
ほっとけない知識の貧しさ、C#の大先生には困ったもんだね…。
一週間以上経過して進歩ゼロのが異様だろう
学生っぽいしさ
学生っぽいよね
学生っぽいわな
VC#でコードを間違えてF5押してプログラムが出てこないときがあります
そういうときにCTRL+Zでやり直してるんですが
メッセージボックスでデザイナが壊れるとか何とかが出てきます
デザイナに置いたのも含めてやり直す事はできないでしょうか?
ほれ大先生
こういうのに答えろ
学生っぽいからNG
>>666 大先生の環境だとそんな変な状態が起きないのでわからないw
大先生はコンソールですし
ッターン
っていうか何言ってるか分からない...
プログラムって出てくるの?w
しかも[F5]で?
再現VTRが必要ですね
VTRって久しく聞かないですね
672 :
デフォルトの名無しさん:2012/02/28(火) 22:32:11.09
>>669 冗談抜きでデザイナがそのメッセージ出す場合は
IDEが参照するファイルがクラッシュしてる可能性が高い
再現性が低いから個別の対処は無理
お勧めできるのはプロジェクトがおいてあるストレージの
修復をやれとしか言えない
カスタムコントロールのっけてる?
674 :
534:2012/02/28(火) 22:52:06.02
customValidator
質問でっす!
Waveファイルを扱いたいので、クラスを自作しようと思ったのですが、
C/C++だったら配列のアドレスの共有ができるので楽なのですが、C#でも同じことができないかと思ってやってみたのです。
で、VC#10eeでは動いているようですが、IDEの挙動が微妙におかしくて恐怖を覚えました。
更にideoneに貼ったらMONOがスタックトレース吐いてるみたいでした。
これ大丈夫なんですかね?
ttp://ideone.com/9PLq5
そういうのはなあC++でDLL作ってやるのが一番ラクなんだよお
参照はアドレスじゃないので
アドレスのようなものとか言う人がいますけどぜんぜん違うので
配列は参照型だし、思い通りにいくのかよくわからんなぁ。
unsafe 使ってもできるから考えてみるといいよ。
var array = new byte[100];
fixed (byte* pByteArray = array)
{ var pIntArray = (int*)pByteArray; ...
値型なら問題なく共用体になるはずなんだけど
参照だからMONOが型変換の例外をはいてるような気がする
680 :
675:2012/02/29(水) 00:07:21.37
皆様レス有難う。
ふーむ。何でも用意されてるC#ならできるかと思ったけど。むー。
なるべくC#の範囲内でやりたいのだけど、コレは困った。
配列プロパティ2つ用意して例外投げるしか無いかな・・・。
あ、インターフェースでごまかすのもいいかなぁ・・・。
>>676 C++/CLIは初心者です・・・。
こんな小さな事で使うのは躊躇します・・・。
>>677 多少シグネチャが付いててもC#なら上手くやってくれるかと思ったんですけど。
残念です。
>>678 マネージドの範囲でやりたいのでそれは難しいですね。うーん。
>>679 あのスタックトレースは型変換例外なのですか・・・。
MONOのことはよく知らないので参考になります。
--
うーん。この方法は諦めてインターフェースの練習でもしてみます。
皆様回答ありがとう!
C++/CLIなんか使うもんじゃないぞ
普通にC++でDLL作ってP/Invokeすれば?
タスクバーの位置を取得する方法はありませんか?
タスクバーにくっ付くようにフォームを配置したいんです
アップするときは振幅半分に設定しとけよ
画面が2とか3つ出るようなプログラムなのにタスクバーには1つしか表示されないやつあるじゃないですか
あれってどうやってるんですか?
>>686 フォーム?
フォームのプロパティにタスクバーに載せるかどうかってのがあったはず
>>688 どうやるんですか?
キーワードを教えてください
キーワード: タスクバー 位置 取得
フォームにWebBrowserコントロールをおきます
これにHTMLを書いて表示したら、表示するごとにテンポラリファイルに書き込まれてしまいますよね
C#からこのへんを制御するプロパティを教えてください
フォームに自分で書いたHTMLを表示したい
HTMLを表示したいけどテンポラリファイルに書き込みたくない
です
VC#のデザイナからNotifyIconを設置しないで
コードで書いてバルーンを表示させたいのですが表示できません
private void Form1_Load(object sender, EventArgs e)
{
NotifyIcon NotifyIcon1 = new NotifyIcon();
NotifyIcon1.BalloonTipTitle = "タイトル";
NotifyIcon1.BalloonTipText = "テキスト";
NotifyIcon1.ShowBalloonTip(10000);
}
Iconがないから
アイコンを設定したら表示されました
アイコンを使わないで表示ってできないんですね
MCE用のリモコンをフォームアプリケーションで使う方法はありますか?
VC# で List のメソッド自動補完がオブジェクトごとに変わる(ElementAtがなかったり)するのはなぜ?
コンソールアプリケーションでプロジェクトを作ったときに
using System.Windows.Forms;って補完が出てきません
手書きで書いてF5でデバッグしても
エラー 1 型または名前空間名 'Windows' は名前空間 'System' に存在しません。アセンブリ参照が不足しています。
って出ます
どうすればいいのでしょうか?
すいませんやっぱりバルーンが表示されないです
NotifyIcon notifyIcon1 = new NotifyIcon();
notifyIcon1.Icon = new Icon(@"test.ico");
notifyIcon1.BalloonTipTitle = "タイトル";
notifyIcon1.BalloonTipText = "テキスト;
notifyIcon1.BalloonTipIcon = ToolTipIcon.None;
notifyIcon1.ShowBalloonTip(10000);
visible
>>699 なんでコンソールアプリケーションでWinFromを使おうとするんだ
>>702 MessageBox.Showが使いたいんです
>>703 なんていう名前のdllを参照にいれればいいんですか?
この前GUIでもConsole.Writeが使えるって教わったのに
コンソールでWindows.Formがusingできないのはかなり不便ですね!
>>706 コンソールアプリは最小限の物でWinFormのプロジェクト作ると
コンソールアプリ関連も包含してるんだよ
俺にとって必要ないもの含めるなってうるせえ奴がいるんだよ
単機能ツール厨みたいな
文句はそいつ等にいえ
ミニマリストと呼んでくれたまえ
Debug クラスのWriteとPrintの違いって何?
調べろ
↓をParallel.ForEachで書くにはどうすればいいんでしょうか?
XmlDocument doc = new XmlDocument();
foreach (XmlElement element in doc.DocumentElement)
{
}
[Form1]に、[button1]と[textBox1]が配置されてて
[button1]をクリックすると、ループで[textBox1.Location]を変更して画面外右まで徐々に移動させていく。
[textBox1]が画面外まで移動すると処理終了。
移動中に[button1]をクリックすると、現在の移動処理を中止して
初期位置にtextBox1を戻して、また最初から移動処理を実行する。
ということをしたいので、マルチスレッドに挑戦しているんですが
移動処理中にクリックイベントを優先で処理するための[Application.DoEvents]と
移動処理中止のための[_canceled]フラグやら[Thread.Join()]がうまく噛み合わなくて
半泣き状態ですダレカタスケテー
ttp://ideone.com/KLtEV
マルチスレッドなんて使わないでTimerで出来るレベルだろ
マルチスレッドじゃないほうがいい
>>712 ソリューションでプロジェクト右クリックから追加にある
>>712 つーか、追加するプロジェクトをクリックした状態なら
メニューにも出るわ
>>717 どちらも「コンポーネントの追加」が出てきません
712はいったん取り下げます
フォームを非表示にしてバルーンを表示させるサンプルを作りました
これでバルーンをクリックしたらプログラムを終了するようにしたいので
イベントハンドラを追加したんですが、どうもイベントハンドラに書いた内容が実行されません
アドバイスお願いできませんか
http://codepad.org/LIj35KCf
>>722 なんでそこにコードかいてるの?
その辺はあくまでForm1のインスタンスを作った際に非表示になるようにするだけにして
Form1の側でイベントハンドラとか書きなよ
724 :
デフォルトの名無しさん:2012/02/29(水) 19:04:27.26
独自のデータをTreeNodeに入れるとき
1:TreeNodeを継承
2:Node.Tagに入れる
どちらが普通?
どちらも変わらないように思えるが
725 :
デフォルトの名無しさん:2012/02/29(水) 19:05:51.09
TreeNodeを継承したクラスをTreeViewに突っ込んで大丈夫だっけ?
継承でないと対応できないと思ったら継承する
728 :
デフォルトの名無しさん:2012/02/29(水) 20:38:49.35
コンテナとかコントロールその物はいいんだが
特定のコントロールの中に入れて使うTreeNodeとかで
なんかおかしくなったのがあった記憶があるんだよな
意味ふ
MS-PLライセンスってなんですか
ググっても理解不能な日本語が多くて困ってます
TreeNodeとかListViewItemとかああいうタイプ
データを構成するだけの直接Viewに関係ないコントロール
アプリケーションの開発にてMs-PLライセンスのライブラリ(DotNetZip)の使用を検討しています。
Ms-PLライセンスについて下記のサイトを見たところ、
被許諾者は、著作権、特許権、商標、またはその他の形式の出所をコード内に常に示しておく必要があります。
という記述があるのですが、具体的にどこに何を記述する必要があるのでしょうか。
ライブラリを使用しているソースファイルの先頭等に何か記述すべきなのかとも思いますが、
そうだとするとどの程度のことをどのような形式で書くべきなのでしょうか。
このライセンスを使用した経験のある方やご存知の方がいらっしゃれば
教えていただけないでしょうか。
オープニングで表示すればいいよ
734 :
731:2012/02/29(水) 20:51:40.45
ごめん
記憶がよみがえった
WPFやSLの話だった
標準の機能を継承してCanvasなどの配下に入れると表示はされるんだが
バインドか何かが機能しなくなるっていうのがあったんだ
winformはわからんけどまあやっていればいい
たいした負担ではない
>>732 ゲーム(XNA)の解説なんかもMSDNって充実してるけど結局汎用クラスみたいの使っててそれがMs-PLライセンスなんだよな
俺もよくわからんわ
インストール許諾読んでません宣言に通じて恥ずかしいからやめてくれないか
読んでも理解出来ない奴は読んだと堂々と言える
そもそもMSPLで提供している以上、ソースコードやバイナリに何かしらの権利表記を含んでいるはずなんだから
それを消さなけりゃ明示されてるでしょ
お前が何を書くかってことなら
MSは法的には何も言えないそうなので
ポエムでも付けとけ
原文にはyou must retain all copyright, patent, trademark, and attribution notices that are present in the software.
つまり、保持しろ、維持しろと書いてるんであって「新たに記載しろ」などとは言っていない
「下記のサイトを見て」って、そもそもそのサイトの質問者の理解からして中途半端なのに
そんなもの参考にして云々語ること自体まちがっとるがね
まず原文を参照しましょうよ
http://www.opensource.org/licenses/MS-PL
ただし、MSPLは断片的な再配布も許容している
(If you distribute any portion of the software in source code form)
どっか一部分だけ再配布する場合はそこにコピーライトが含まれていないことが考えられる
そういう時は書いてある部分からコピペして保持すればいい
別に考えこむ必要はない
へーすごいですね(棒)
したり顔で解説した所で最終的には法の判断を仰がなければならないのが全てのライセンスの欠陥
お前の言う通りにしたらこうなったぞ!責任取れ!
って言うために掲示板で聞いてんでしょ?
違うのか?
本体に組み込むのが嫌なら
クラスライブラリ側で扱うようにして分離しておいて何かあった時に
クラスライブラリ側の最低限のソースだけ公開すればいいようにしておけばいいよ
責任取れと喚いても意味あるとは思えないが…
え
748 :
デフォルトの名無しさん:2012/02/29(水) 22:24:57.90
今までってライセンスでもめたところで分離したり後であれこれやって
回避できたケース多いでしょ
まあミーヤみたいに追い込まれるケースもあるけどw
うまく分離できるなら過去の版公開停止にするだけで済むが
「うちの製品にはリナックスは金輪際使わない」
マルチスレッドの処理を中断する方法としてはThreadクラスのabort()を使う方法と、
終了フラグを立てて処理を途中で終わらせる方法のどちらが良いのでしょうか?
今までabortでやっていたのですが強制中断はよくない気がしまして…(ファイル読み込み中に中断とか
ケースによる
わかってるみたいだし思うように書け
abortはトラブルの元だから、プロセス終了時に一緒に終了してくれるワーカースレッド使って、
IOなんかはタイムアウト値設定して放置が一番
754 :
デフォルトの名無しさん:2012/03/01(木) 00:42:03.55
Thread.Suspendに比べれば何ぼかマシ
できない奴がどれなのか俺らは知らないので答えられない
ふらっと書き込み(* ^ー゚)ノコンニチハ
758 :
751:2012/03/01(木) 01:02:06.61
レスありがとうございます
マルチスレッド化するとたまに落ちるようになったことがあったので質問させていただいたのですが、やはりabortはあまり良くないところがあるみたいですね。
これから書きなおそうと思います…
マルチスレッド!となるとすぐThreadクラスを使いたがるというこの風潮、ファックだね
そこら辺の入門サイトからThreadクラスの項目だけ消し去りたい
BackgroundWorkerもThreadPoolもTaskも強制中断は端からできないようになってるからね。
やはり強制的にお行儀良くさせるデザインが必要なんだろう。
そんなことしてるから不便になるんだけどねえ。
761 :
デフォルトの名無しさん:2012/03/01(木) 02:02:47.14
MIKAMIのインターネット でググれ
このブログ痛すぎwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
クソワラタwwwwwwwwwwwwwwwwwwwwwwwwww
関数が何回目の実行なのか調べるのはどうやればいい?
ボタンをクリック!→関数func()実行
ショートカットキーを押す!→関数func()実行
こんな感じのプログラムで
、func()が何回実行されたか調べてifやswitchで分岐
みたいなことしたいんだけど。
764 :
763:2012/03/01(木) 14:19:03.76
すまん、VB.Netと間違えてた
クラス(その関数の外)で定義した変数でカウントする
VBのStatic変数、便利なんだがC#には無いんだよな
メソッドをstaticにしておけばいけるんとちゃうの?
複数インスタンスでカウント共有していいなら、って前提条件付くだろ
名前空間とクラスを同名にしたいときってどうすりゃいいの?
なんか命名規則みたいのある?
768 :
デフォルトの名無しさん:2012/03/01(木) 15:46:24.58
そりゃあるよ
770 :
デフォルトの名無しさん:2012/03/01(木) 18:19:10.95
chartコントロールでライングラフを作ったんですが、
グラフ線の開始場所がY軸から少し離れた場所から始まってしまいます。
Y軸の位置からグラフ線を開始させるにはどうしたらよいでしょうか。
>>769 リンク先はできたらいーなというコードの例を乗せてるだけじゃないか?
なにをやりたいのかよくわからんけど
>public class DataTable<T> where T : DataTable
これ型制約してるだけで何も継承してないし
>public new T NewRow()
>{
> return (T)base.NewRow();
>}
DataRowをDataTableを継承したクラスにキャストも無理だろ
ふう
773 :
デフォルトの名無しさん:2012/03/02(金) 08:15:07.90
なんかこのスレ展開早っ!
忙しくて見る暇無かったら、もう終盤かい。
どうせ無駄な書き込みばかりなんだろうな。
Win32APIスレと勘違いすんなよ
最近は珍しくあんまり脱線しないで有効活用されてるな>スレ
776 :
デフォルトの名無しさん:2012/03/02(金) 10:52:19.27
boolのプロパティの名前って下の2つだとどちらがC#で一般的?
public bool isAnimationEnabled () { get; set; }
public bool AnimationEnabled () { get; set; }
’a’ + 2
で ’c’ を出力させるにはどうすりゃいいの?
キャストキャスト
マジレスすっと(char)('a' + 2)
usingを使うときなんですが、
using(var fs = new FileStream(filepath, FileMode.Open, FileAccess.Read))
{
処理
}
って書くとFileStreamを作成時にエラー吐くことがあるから結局
try{
using(var fs = new FileStream(filepath, FileMode.Open, FileAccess.Read))
{
処理
}
}
catch(System.Exception) //記載めんどいからとりあえず全部
{
例外処理
}
って書かないとやっぱ駄目?
駄目かどうかはお宅のプログラムの仕様によるよ
俺は知らない
>>779 SilverLightのChartはIsAnimationEnabledになっている
786 :
785:2012/03/02(金) 12:35:15.25
ごめん勘違い
787 :
779:2012/03/02(金) 12:41:27.46
>>779
これ頼む。今日中にIsAnimationEnabledにするかAnimationEnabledにするか決めないといけない
WinFormは後者でWPFは前者だよね
個人的にはIs付きの方が好きだが
名詞と動詞の区別もつかんのか。
は?
Visual Studio 11は
Windows XPやWindows Vista
じゃ動かないのか・・・
そんなロートルつかってんじゃねーーー
793 :
デフォルトの名無しさん:2012/03/02(金) 15:07:20.32
794 :
デフォルトの名無しさん:2012/03/02(金) 16:58:34.30
いえいえ
795 :
デフォルトの名無しさん:2012/03/02(金) 17:03:48.55
796 :
デフォルトの名無しさん:2012/03/02(金) 17:40:54.34
rssの<item rdf:about=から>まで抽出する方法教えろ
正規表現で適当に抜き出せばいいよ
嫌です
どういう方法でやりたいか書いてないし
rss.Split(new string[] { "<item rdf:about=から>" }, StringSplitOptions.None).First()
>>787 コーディング規約作ってから始めろよ
それがめんどくさいなら拘るな
>>787 賢いプログラマは一貫して一貫性にこだわらない。
要は分かれば必用十分よ
一貫性って言うかルールがありがたいのは悩まないですむからだよな。
悩んでる時点でどうでもいいと言えるかも。
適当に書いても整然としている
そういう人に私はなりたい
勝手になれよw
全部AnimationEnabledに統一したよ
あと1つ。プロパティにパラメーターを5,6個いっぺんに指定するにはどうすればいいの?
Cameraクラスがあって
SetParallel (float fovy, float aspectRatio, float near, float far)
みたいな関数を作るのがいいか、
それとも個別にプロパティを5つ(type,fovy,aspectRatio,near,far)作ってセットするのがいいか????
好きにしろとしか言いようがない
まとめて指定する意味があるならメソッドにすればいいし
個別に設定して問題ないなら個別に設定させればいい
場合によりけりだよな。たしかに。
instance.property = new data( one, two, three, four, five );
とかやったりな。
名前で何時間も悩むほど馬鹿げたことはないな
{
int a,b,c,d,e;
foo(a,b,c,d,e);
}
のようにブロック内で完結するなら個別に渡せばいいし
パラメータを別の場所でセットしたり関数呼び出したあとも
何度も利用するなら再考してみりゃいいんじゃね
あまりにも引数が複雑になったら
foo(obj)にしちゃうのもあり
プログラムを作ったこともないんだけど、自作のプログラムはどうやって公開するんだ?
あなたの中で公開をどう定義しているかによるわ
>>810 新聞の一面広告を買って載せてもらうのが一般的かな
最低限これだけは持っとけよという書籍があれば教えてください
814 :
デフォルトの名無しさん:2012/03/02(金) 23:48:48.85
string anchor ="うんこ";
Regex re = new Regex(anchor, RegexOptions.IgnoreCase
| RegexOptions.Singleline);
Match m = re.Match("うんこ");
Console.WriteLine(m.NextMatch());
Console.ReadLine();
何で検索できないんだ
二個目探されても困る
つまらぬことをお伺いいたします
if (hoge || hoge)
{
どちらかの条件が一致し場合
}
if (hoge | hoge)
{
両方の条件が一致した場合
}
という認識でよろしいでしょうか?
if ((hoge)&&(hoge))
{
両方の条件が一致した場合
}
>>816 評価順が違うと思う。
if(A || B) { } <=どっちかがtrueの場合に真。 論理演算的OR
if(A | B){ } <=どっちかがtrueの場合に真。 数値演算的OR
if(A && B){ } <=どっちもtrueの場合に真。 論理演算的AND
一致という言葉の定義が謎
何を知りたがっているのか不明すぎる
論理演算とビット演算の違いを知りたいのか
論理演算とビット演算の2つが存在すること自体を知らないのか
あ、そうか…単純な話だね
823 :
デフォルトの名無しさん:2012/03/03(土) 02:20:25.86
この辺も最近プログラム覚えた人にとってはややこしいんだろうな
昔から残ってるよね
自分で処理を書くわけじゃない言語仕様は最初はややこしいだろうな
if文なんて基礎の基礎なのにif文の定義なんて中級者にならないと答えられない
他にも「関数を呼ぶ」とか簡単にいうけど、それってつまり電子計算機的にどういうことなの?
ってのが中級者にならないと知るよしもない
逆に高級言語ではそんなことを知る必要がないことが強み
そんなこたぁない。
基本情報処理試験すら落ちる奴が高級言語使ってもまともに動かない。
まぁ初級者が知っておくべきは、実際の挙動までだな
A():画面に"A"を表示する、戻り値はtrue
B():画面に"B"を表示する、戻り値はtrue
1:if (A() || B()) { }
2:if (A() | B()) { }
1、2で画面に表示される文字は?
A1():画面に"A"を表示する、戻り値は1
B2():画面に"B"を表示する、戻り値は2
C3():画面に"C"を表示する、戻り値は3
3:var foo = 1 + 2 * 3;
4:var bar = A() + B() * C();
fooとbarの値は?4で画面に表示される文字は?
using (var fs = new FileStream(...))
using (var br = new BinaryReader(fs))
って感じでusingを2行続けて書くことが多いんですが、こうするとコンパイラが下の警告を出します。
「warning : CA2202 : Microsoft.Usage : オブジェクト 'fs' は、メソッド 'Program.Main(string[])' 内で 2 回以上破棄される可能性があります。
System.ObjectDisposedException の生成を回避するには、オブジェクトに対して Dispose を 2 回以上呼び出さないようにしてください。」
調べてみると、下のURLに書かれているみたいに、try-finallyを使うべきのようですが、
どう考えてもこんなの毎回書くのは面倒です。いいやり方は無いですか。
http://msdn.microsoft.com/ja-jp/library/ms182334.aspx
まともなコードとはほとんどが例外系の処理コードである。
>>828 こうする。
using (var br = new BinaryReader(new FileStream(...)))
CA2202 が発生するのは using の入れ子自体が問題なのではない。
Stream と Reader を組み合わせて使うようなケース以外、using の入れ子で CA2202 は発生しない。
そのケースで fs.Dispose() が2回呼ばれるのは、br.Dispose() が内部で fs.Dispose() も呼び出すため。
そうしないと俺が示した例のような開き方をした FileStream を閉じることができないので、
ちょっと特殊な処理になっている。
831 :
デフォルトの名無しさん:2012/03/03(土) 05:13:50.42
using (var fs = new FileStream(...)
using (var br = new BinaryReader(fs))
)
C#を解する猫に会ったことがない
そんな猫がいるならウチで雇いたい
たとえ猫がC#を解していても、猫と意思疎通できないので意味がない
うちの猫はC#がわかってて暇なくせに全然手伝ってくれない
>>828 こんな警告出るのか、c#コンパイラすげーな。
横からだけど勉強になったわ。
うちの猫はC#がわかってて暇なので手伝ってくれるが、よく見たら犬だった
839 :
813:2012/03/03(土) 09:45:20.71
840 :
デフォルトの名無しさん:2012/03/03(土) 09:46:22.38
841 :
デフォルトの名無しさん:2012/03/03(土) 13:04:31.39
public void shinchaku(string url)
{
int shinchakucheck = 0;
string[] urllist = new string[15];
string shinchakuurl="うんこ";
for (int a = 0; (shinchakuurl = unkorss(url, a)) != "-1"; a++)
{
shinchakucheck = Array.IndexOf(urllist, shinchakuurl);
if (shinchakucheck == -1)
{
try
{
urllist.CopyTo(urllist, 1);
}
catch
{
}
urllist[0] = shinchakuurl;
}
Console.WriteLine(urllist[0]);
}
}
何で配列コピーできないんだ
List<string>を使え
そういう問題か?
C#って名前がないenumって作れないの?
enum {
Alpha, Beta, Theta
}
みたいな奴
使えないものが存在するわけないでしょ。
アホちゃうか
作れない。const int とかでいいんじゃないの。
どうやって使いたかったか知りたい
むしろ何の言語の機能なん
849 :
844:2012/03/03(土) 15:06:09.53
名前無駄じゃん
メソッドと同じ名前にできないし。
class Hoge{
enum Mode {
}
Mode Mode { get; set; }
}
ってやりたいんだけど。
だいたい単なる定数値の定義なんだから
enumとか使いもにならない。
const intの方がまだまし。
ポカーン。
頭悪い奴って変な発想するよな
851 :
844:2012/03/03(土) 15:12:06.41
const intの欠点はデバッガーで名前ではなく数字が表示されること
enumの欠点は冗長で大げさなこと(見た目がクラス名っぽい)
両者の欠点を取り除いた書き方を探しているが、未だに理想の書き方がない
define定数欲しいってだけか?
enum関係ねー
こいつぁひでぇな
他人が読むことを考えてない奴の発想だな。
超小規模のプログラムしか書いたことないとか。
むしろプロパティの名前と型名を一致させろってガイドラインあるし
できないってことはないよ
>プロパティには、その型と同じ名前を付けるようにしてください。
>
>列挙型に厳密に型指定されたプロパティを使用する場合は、プロパティの名前を列挙型の名前と同じにできます。
>たとえば、CacheLevel という名前の列挙型がある場合は、
>その値のいずれかを返すプロパティにも CacheLevel という名前を付けることができます。
要するに修飾名を書かずに参照したいって奴でしょ
cのstaticに始まり、C++や後続の言語に名前空間が導入され
どれだけの検討が衝突を避けるためのイロハに費やされてきたか知らんのだろうね…
悲しいね
Javaならstaticインポートが使えるので
乗換えを検討してはいかが?
無い物はねだっても湧いて来ないのだし
建設的に考えようぜ
>>856 昔の議論を知らないというより(俺も知らんし)、
単に大きなプログラムを書いた事がないから選択肢の集合を表現してるenumの
有難みが理解できないんだと思うよ。
Javaのenumみたいにswitch..caseとか、文脈上enum名が明らかな場合は省略して
書けてもいいじゃないか、ぐらいの話なら同意する人もいるかなと思わないでもないけど。
書き方っていうのも、パターン的なものならともかく
こういうのは言語に縛られる部分だから、探して出てくるようなものでもないよ
860 :
844:2012/03/03(土) 15:44:42.60
どう考えても冗長だろう。
Hoge.Mode = Hoge.Mode.A
Hoge.Mode = HogeMode.A
enumの欠点はまるで「型」のように振る舞うことだな。
実際はとりうる「値」の制限に過ぎないのに。
だからenumをパラメーターに使うべきではない。
Hoge.Mode = A
と書いたら自動的にAの前にHoge.Modeを修飾してくれる言語が理想だがまだ無いと思う。
だから、型のように、ではなく実際型なんですよw
そしてそれがenumの利点なんです。
それが分からないのはアマチュアだから。
お前はデバッガに名前が表示されるっていったろ
それって名前と紐ついてるってことだよ
値の制限だけじゃないから型になってんのよ
無知が
ただの定数じゃ名前を引けないじゃないですか
#define HOGE_ONE 1
#define HUGA_ONE 1
デバッガは1を示すフィールドに対してどちらの名前を示すべきですか
ところで、何でクラス内にenum書いてんだ?
privateでないなら意味ないぞ
var多用のソースって読みにくくね?
>>864 いや、例えば内部状態を表すのにprivateなenumを使うのは割とある。
>>866 いや、この質問者の話
クラス名から参照してるってことは明らかにprivateじゃないだろ
いあいあ
>>867 「privateなら意味ないぞ」と間違って読んでたw
申し訳ない
870 :
デフォルトの名無しさん:2012/03/03(土) 16:06:38.31
どうでもいいことでスレが伸びだした
ふらっとですし
あと名前補完はできてもいいかと思ったが
名前被りが酷そうで実用に耐えるかな
変数は修飾なしで参照できる範囲しか探しに行かないからいいけど
ふう
型推論()でもしろってことかな
そうだね
enumに噛みつく子が現れるとは思わんかったw
キャストなしでint等に暗黙的に変換してほしいとは思う
enum に拡張メソッドみたいに新しく型をつくらないでメソッド作りたいな
くらいなら考えたことある。
enumってなんて呼んでる?
エニュム?イーナム?
>>877 a = hoge.two * 3 なんて演算されるのがいやだったのかな?
でも、キャストって配列の添字に使おうと思うとウザイ事この上ないんだよな
881 :
デフォルトの名無しさん:2012/03/03(土) 17:47:15.03
正規表現で最後に見つかった位置調べる方法ある?
エナムって読んでた
numをナムって読んでるから
読んでるからね
いろんな言語触ってるとenumが使えることすら贅沢に思える
最悪コメントで補完でいい
補完でいいよね
内部の数値を宣言されていないenumを自動でintに変換できるのは
おかしいと思うけどなw
おかしいと思うよね
キモ
>>886 名前付きの値のリストとして使いたい場合もたまにある。
そういう場合はimplicitでintとして扱えた方が便利ではある。
個人的には明示的にキャストがいるのは過剰な規制だと思う。
>>881 var last = Regex.Matches(hoge, huga).Cast<Match>().Last();
// Cast入れる必要があるのは心底面倒なので改善してくれないかなぁ
拡張メソッドでも作れば
892 :
デフォルトの名無しさん:2012/03/03(土) 19:26:08.50
Visual Studio 2008 の C# を使い始めました。
クラスを ソリューションエクスプローラの右クリックでクラスを追加し
その別のcsファイルに クラス(AA)を書きました。
Form1のボタンのイベントから、追加したクラス(AA)を呼びたいのですが
AA aa;
の(クラスを変数として定義している)ところで
エラー CS0246: 型または名前空間名 'AA' が見つかりませんでした。using ディレクティブまたはアセンブリ参照が不足しています。
とエラーが出ます。
作ったクラスが参照できてない気がするのですが
どこに何を設定(記述?)すればいいのでしょうか?
プロジェクトフォルダごと晒せ
クラスAAはちゃんと保存したか?
>>830 それってBinaryReaderのコンストラクタで例外が発生したら、
FileStreamはDisposeされないような気がする。
896 :
デフォルトの名無しさん:2012/03/03(土) 19:31:57.29
自作クラスをソリューションエクスプローラーで追加するときに
フォルダ作ってその中に自作クラスを入れてないか?
それをやるとネームスペースがフォルダ名.クラス名
になってるぞ
AAのところにキャレットおいてCtrl+ピリオドを押してみる
>>830 >>895 BinaryReaderはDisposeする必要ないしBinaryReaderのファイナライザで
ストリームのDisposeが勝手に呼ばれるようなことも無かったはずだから
using (var fs = new FileStream(...)) {
var br = new BinaryReader(fs)
でいいんじゃないの
899 :
デフォルトの名無しさん:2012/03/03(土) 19:38:57.91
うん
900 :
デフォルトの名無しさん:2012/03/03(土) 19:41:35.02
正規表現のグループをstringの配列に変換する方法教えろ
Visual Studio 2010 の C# を使い始めました。
不要になったプロジェクトを削除したいのですが
どうやって消せばいいのですか?
そのままゴミ箱へ放り込んでいいのでしょうか?
>>900 Regex.Match(略).Groups.Cast<Group>().Select(g=>g.Value).ToArray()
903 :
892:2012/03/03(土) 19:47:39.45
classフォルダ作って その中に AA.cs を作ってました。
フォルダなくしたら解決しました。
アドバイスしてくれたみなさん、ありがとうございます!!!!!!
VC#の有料版だとソースコードを暗号化?できるって聞いたんですが
無料版で暗号化する場合は何を使うのが定番ですか?
難読化のことかね?
プログラムの作りによってはどう頑張っても難読化の限界はあるし難読化しやすい作りにしてないとな
DLLの呼び出しとかリソース関係とか
気にしないのが一番
WEBで新規開発ならSilverlightつかう?
いつ消滅するかわからないようなものはちょっと。
Silverlight5で開発終了のうわさがあるとか
Win7の終了より1年先まで使える、と割り切ればいいさ
藍澤光は続けていいのよ?
さっきからキモいのは同一人物かな?
Win8からアプリの作り方がらりと変わるんだっけ?
また一から出直しだな
全く変わらないよ
あくまでタッチデバイス用の新しいAPIが入るだけ
まったく変わらない作り方もできる
ってだけ
今までとは全然違う特性のデバイスが出るから、それ用に作るなら当然今までとは違う作り方になるよね
っていうだけの当たり前のことなんだが
>>915 Silverlight -> WPFとそんなに変わらないよ!
WP7 -> Silverlight(PC版)とそんなに変わらないよ!
Win8 -> WP7とそんなに変わらないよ!
今現在Win8タブレットなんて世の中に存在しないだろ?
デスクトップでMetroアプリなんて一応動くだけでクソ使いづらくてメリットないし
従来のマウス操作向けにはWPFが開発継続してる
これから出る新しいデバイスに新しいAPI、以上の何者でもないよ
PC用のアプリを1つ作ればリビルドせずにWP7でもXBOXでも
全く同じように動くとかいう夢のような世界になればいいのに
動くだけなら動くだろ。使い物になるかは別。
それが夢の世界ならスマホ用のサイトなんて要らないわけで。
923 :
デフォルトの名無しさん:2012/03/03(土) 22:29:21.24
XBOXは窓レンダリングもってねーだろw
アナログスティックでポインター操作できたっけ?
XNAでアプリ作れば可能だけどそんなのやるの?
924 :
922:2012/03/03(土) 22:33:32.04
技術的には別に難しいことはないという意味だよ
925 :
デフォルトの名無しさん:2012/03/03(土) 22:35:14.62
>>924 向き不向きってあるからな
windowsぽいGUIを小型端末に持ち込んでどうなった?
結局専用UIを持ったOSに丸ごと市場もって行かれたじゃないか
理想と現実は違うのよ
夢物語
なんだそんなに変わらないのか、Win8の知識ゼロなので心配しすぎてたわ
てっきり、例えばタスクバーとかが廃止されて
タスクバーを操作している既存のアプリは全部死亡とかそんな未来だと思っていた
お試し版Win8がダウンロードできるんだから実際さわってみろよ
928 :
デフォルトの名無しさん:2012/03/03(土) 22:42:25.83
>>926 win8ってぶっちゃけるとwin7タッチタブレットエディションだよw
タッチタブレットエディションで追加されたメトロ機能向けのUIを構築するのに
WinRTってのができてそれがWPFやSLと似た感じで作れるってだけ
関数で鰓孔場合例外とエラーコード返り血どっちがいい
例外ぶん投げで問題なし
>>898 IDisposableを実装するクラスを使うときはusingするか、少なくともDisposeを必ず呼ぶように心がけていたけど、
場合によってはDisposeしないほうがいいってこともあるのか…
IDisposableなクラスは必ずusingしろと後輩に教えてきてしまった。
Disposeを呼ぶ必要があるかないかって、どうやって判断すればいいのだろう。
MSDNライブラリのBinaryReader.Disposeには
「BinaryReader への参照をすべて解放してしまう前に、必ず Dispose を呼び出してください。」
と書かれているので、例外なく必ずDisposeを呼ばなければならないと判断せざるを得ないんですが。
bool disposingを引数に取る方(IDisposableの明示的実装じゃない、普通のメソッドの方)
の説明を読めば自明だね。
WPFすら閑古鳥なのに。
ゲイツが前線から離れてからというもの、MSは全然空気が読めてない。
935 :
デフォルトの名無しさん:2012/03/04(日) 01:15:59.26
イノベーションのジレンマ通りなので別に気にしてないな
今はアップルのターン
MSって市場調査とかしないのかね。
VSは例外的によく出来てると思うけど、その他のMS製品には、現実にそれを使うユーザーを
無視してMS内のパソヲタの妄想と思い込みで仕様を決めてるとしか思えない物が多過ぎる気がする。
っていうか、いい加減一般のユーザーは保守的で、わざわざ新しいことを覚えるぐらいなら
多少不便なままでも一度覚えた道具をそのまま使いたいと考えることぐらい学習してよと思う。
VSは開発ツールだけどOSはもっと幅いの広い層が使うからなあ・・・
その辺が難しいところなんだろ
過去との互換性を保ちつつも・・・と
開発環境はすげーのに、OSのUIが糞すぎる。
マカーがMS内に増えてからおかしくなった。
ここ一応初心者用の板なんですけど
今更覚えても無意味だから帰れとでも?
MS以上に空気読めてないよお前ら
一人だろ
>>931 Disposeは原則何度呼んでも大丈夫なつくりにする「ことになっている」から
usingしまくって「原則は」大丈夫だよ
プログラム書くときに
a = 0xFF;
で16進数で代入できますが
2進数で代入する方法はありますか?
const の変数(定数)に入れたいです。
c#では無理。
946 :
944:2012/03/04(日) 10:29:57.88
('・ω・`) しょぼぼ〜ん
ありがと
それぐらい脳内変換しろよ。
2進数を文字列で受け取って10進数に変換するstaticなメソッドを作ればいい
C#って2進数リテラルないんだな
まあ16進数で表現も難しくないけどな
>>948 constにならんだろそれ
2進数リテラルはあってもいいがそんなことよりC#はC系伝統のクソ8進リテラルを削除したのが偉大
どうしてもconstじゃなきゃ駄目ってんなら話は別だけどreadonlyでもいいんじゃね
static readonly int Hoge = Convert.ToInt32("01001000", 2);
うーんこの
うんこがどうしたって?
0x1から0xfまでの2進数を覚えるのが一番早いんだけどな
0000 0001 0010 0011 0100 0101 0110 0111
1000 1001 1010 1011 1100 1101 1110 1111
こんだけ覚えれば良いんだぜ
MSからJavaみたいにクロスプラットフォームで動く言語って出てきませんか?
やっぱりMSのIDEは使いやすいので
c#なんてのはいかがですか?
CとかC++って「クロスプラットフォームで動く言語」じゃね?
CとC++で作ったものってクロスプラットフォームで動くわけでもないが・・・・?
それはJavaも同じ。
JavaはSWTさえ使わなければ動く
CやC++はそれぞれOS固有のAPIを使うからクロスプラットフォームとはいえない
あれで動くとかギャグで言ってるのか。
バイナリー互換の話じゃなかったのか
>962
そういうこと。
>>957 はクロスプラットフォームの意味を勘違いしてる。
Java厨はまだ夢みてるのか。
VMがむごくてバイナリ互換なんて達成できてないだろ。
debug anywhereと言われて久しいな