ふらっとVisual C#,C♯,C#(初心者用) Part105
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2013/06/23(日) 09:41:13.50他のスレッドでは書き込めないような低レベルな質問。
質問者自身なんだか意味がよく分からない質問。
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて、他スレ・他板へ行くことを勧められることがあります、ご了承下さい。
なお、テンプレ2行目が読めない回答者は邪魔なので後述のC#相談室に移動して下さい。
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
前スレ
ふらっとVisual C#,C♯,C#(初心者用) Part104
http://toro.2ch.net/test/read.cgi/tech/1366503422/
関連スレ
C#, C♯, C#相談室 Part79
http://toro.2ch.net/test/read.cgi/tech/1363632378/
コード貼るなら↓使ってください
http://ideone.com/
0002デフォルトの名無しさん
2013/06/23(日) 14:41:51.41乙乙
0003デフォルトの名無しさん
2013/06/24(月) 20:41:32.83これって結構問題の元だったりする?
0004デフォルトの名無しさん
2013/06/25(火) 00:48:44.68http://msdn.microsoft.com/ja-jp/library/4fkewx0t.aspx
>UrlEncode メソッドは、各空白文字をプラス記号 (+) に変換します。
0005デフォルトの名無しさん
2013/06/26(水) 08:42:53.74private delegate int EnumWindowsDelegate(IntPtr hWnd, int lParam);
[System.Runtime.InteropServices.DllImport("user32.dll")]
private static extern int EnumWindows(EnumWindowsDelegate lpEnumFunc, int lParam);
----
IntPtr[] ahWnd = new ahWnd[0]; //←これをコールバックに渡したい
EnumWindows(new EnumWindowsDelegate(delegate(IntPtr hWnd, int lParam)
{
IntPtr[] ahWndTmp = (IntPtr[])lParam; //←ここで指定する方法が分からない
//配列に追加
Array.Resize(ref ahWndTmp, ahWndTmp.Length + 1);
ahWndTmp[ahWndTmp.Length - 1] = hWnd;
}
return 1;
}), (int) ahWnd); //←ここで指定する方法が分からない
0006デフォルトの名無しさん
2013/06/26(水) 08:55:20.66http://ameblo.jp/vcplusplusnote/entry-10205262635.html
こういう事をやりたいのですが、これだと上層のmenu内全部が対象になります。
これを同一menu内のセパレーターで区切ったブロック毎に行うスマートな方法ありますか?
現在は上記の方法でなく、if文でmenuの数だけ処理する野暮ったい事になってます。
よろしくお願いします。
0007デフォルトの名無しさん
2013/06/26(水) 09:00:21.89ていうか別にわざわざlParam経由させんでも
適当にフィールドなりローカル変数なりにList<IntPtr>置いといてそれにAddしていけばいいだろ
あと渡すデリゲートは一旦ローカル変数に取り出しておいて
EnumWindows終わった後でGC.KeepAliveしとけ
0008デフォルトの名無しさん
2013/06/26(水) 09:12:04.75var group1 = new ToolStripMenuItem[]{ item11, item12,.. };
var group2 = new ToolStripMenuItem[]{ item21, item22,.. };
...
みたいに配列を持っといて
private void dropDown_ItemClicked( object sender, ToolStripItemClickedEventArgs e )
{
if( group1.Contains( e.ClickedItem ) )
{
...
}
else if( group2.Contains( e.ClickedItem ) )
{
...
}
}
ってやるとか。
0009デフォルトの名無しさん
2013/06/26(水) 09:26:38.63var lst = new List<IntPtr>();
EnumWindows( ( hwnd, lParam ) =>
{
lst.Add( hwnd );
return 1;
}, IntPtr.Zero );
じゃあかんのか?
ローカルなデリゲートのメモリ上の位置って移動したっけ?
スコープ抜けるまでは有効なんじゃね?
0010デフォルトの名無しさん
2013/06/26(水) 09:29:13.02>EnumWindows終わった後でGC.KeepAliveしとけ
終わった後にGC.KeepAliveするの?
0011デフォルトの名無しさん
2013/06/26(水) 09:40:31.48ありがとう!まさかローカル変数にアクセスできる(ただしout変数にはアクセス出来ない)とは・・・C#楽すぎる
0012デフォルトの名無しさん
2013/06/26(水) 09:59:56.10> ローカルなデリゲートのメモリ上の位置って移動したっけ?
移動どころかファイナライズされうる。
マーシャリングでポインタに変換された後はマネージから参照されないからGC対象になる。
アンマネージ実行中にGCが走るとあぼーん。
>>10
GC.KeepAliveは「このオブジェクトはここまで使用中だから勝手に消すなよ」ってマーク。
0013デフォルトの名無しさん
2013/06/26(水) 10:16:54.92ありがとうございます
そのままだと自分の状態ではエラーが出たので、
イベントハンドラ内に配列を入れて、
private void dropDown_ItemClicked(object sender, EventArgs e)
{
if( group1.Contains(sender))
{
...
}
if( group2.Contains(sender))
{
...
}
}
としたところ、正常に使えました
まだ何もわかってないので、なんでエラーが出たのか分からないですが、自分の変更が間違ってないならこれで行きつつ、エラーの原因しらべて勉強します。
配列でグループ分けしつつ・・・というのは想像が付いたのですが、実現する方法を理解してませんでした。
勉強になりました。
ありがとうございました。
0014デフォルトの名無しさん
2013/06/26(水) 11:10:19.77GC.KeepAliveは不要だな。
0015デフォルトの名無しさん
2013/06/26(水) 11:43:41.83今のままじゃC++に勝てない
0016デフォルトの名無しさん
2013/06/26(水) 11:52:13.64スループットは向上するよ。
0017デフォルトの名無しさん
2013/06/26(水) 12:21:00.21お前?
0018デフォルトの名無しさん
2013/06/26(水) 12:24:57.55ゴミの片付けなんかしないで
作業に集中しなさい。
ゴミで部屋がいっぱいになったら
そのときに初めて片付ければ良いでしょ。
0019デフォルトの名無しさん
2013/06/26(水) 12:25:36.300020デフォルトの名無しさん
2013/06/26(水) 12:28:20.10並んでも勝ちはしないだろ
生産性のために払った代償でもあるしな
0021デフォルトの名無しさん
2013/06/26(水) 12:32:09.010022デフォルトの名無しさん
2013/06/26(水) 12:36:06.18並ぶなら生産性が疎かになるだろう
0023デフォルトの名無しさん
2013/06/26(水) 13:28:05.32IMEより先に取得して、imeのメニューを出さずに、プログラム側で取得するようにする方法はありますか?
SystemCmdKeyより先にフックされてしまうようで、うまくとれません。
WindowsMessageでできるのかもしれませんが、いまいちやりかたがわかりません・・。
Windows7 標準のIME です。
0024デフォルトの名無しさん
2013/06/26(水) 16:20:03.36すいません、書き間違いがありました。
× SystemCmdKey
○ ProcessCmdKey
よろしくお願いします。
0025デフォルトの名無しさん
2013/06/27(木) 04:51:23.99using (System.Xml.XmlReader xdr =
System.Xml.XmlReader.Create("RSSのURL"))
{
System.ServiceModel.Syndication.SyndicationFeed feed =
System.ServiceModel.Syndication.SyndicationFeed.Load(xdr);
}
System.Xml.XmlException はハンドルされませんでした。
Message=名前 'RDF' と名前空間 'http://www.w3.org/1999/02/22-rdf-syntax-ns#' が指定された要素は、フィードの形式を許可されていません。
どうすれば読むことができるのでしょうか。よろしくおねがいします
0026デフォルトの名無しさん
2013/06/28(金) 19:56:51.72「RSSの規格が古くて読めねえよ」
ってことです。
RDFが出てくるのはRSS1.0だけど、SyndicationFeedが対応してるのはRSS2.0とAtom1.0だから。
SyndicationFeed使っている限り、世界が滅亡するまで待っても読めないので
他の方法を探しましょう。私は知りません。
0028デフォルトの名無しさん
2013/06/30(日) 12:14:25.82byte[]をバッファーにしてFileStreamに書き込むわけですが、
今の時代(のPC性能とネットワーク速度)に適切なバッファーサイズってどのくらいなんでしょうか?
0029デフォルトの名無しさん
2013/06/30(日) 12:15:17.580030デフォルトの名無しさん
2013/06/30(日) 12:23:19.03そこで指定するバッファのサイズと一致しない
0031デフォルトの名無しさん
2013/06/30(日) 12:24:42.880032デフォルトの名無しさん
2013/06/30(日) 12:44:38.670033デフォルトの名無しさん
2013/06/30(日) 17:43:52.360034デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANCloseするのかDisposeするのか
どちらが正解ですか?
0035デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANまあusingを使え
0036デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.AN0037デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.AN0038デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.AN0039デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANusing使えでFAですし
0040デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANDispose の本来の目的は、自分自身が責任をもつリソースの処分
0041デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANusingを使った方法も説明されているから問題ない
ただ意味的にって話なら、usingなしの単独の場合は
Closeを使ったほうがいいだろうな
0042デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.AN0043デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.AN0044デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.AN0045デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANそのReaderなりWriterをusingで囲むわけにはいかない
0046デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANリソース解放の責任がどこにあるかというだけ
0047デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.AN0048デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANファイルハンドル握ってんだよ
0049デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.AN0050デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.AN0051デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANそういうリソースをメンバに持ってるクラスこそIDisposableを実装すんだろが
0052デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANdouble型からRange型への変換方法を知っている方がいたら教えてください
0053デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANやりたいことは具体的に
0054デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANある関数で計算する
その計算結果をエクセルに出力させる
というプログラムです。
設定するものなのですか。
調べます、ありがとうございます。
0055デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.AN0056デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.AN少しも具体的ではないよ
0057デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.AN具体的でなくてすみません
ユーザー設定の仕方がいまいちわからず
別の方法を探していました
CSVで出力すれば良いとわかったので
解決しました
ありがとうございます
0058デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.AN0059デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANと思ったのですができませんでした
0060デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.AN0061デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANあしからずorz
エクセルデータを読み込んで、double型の関数で計算
その計算結果をCSVに出力後、gnuplotでグラフ描いて終わり
プログラムは完成して納期に間に合わせることができます
アドバイスくれた方々に感謝です
0062デフォルトの名無しさん
2013/07/03(水) NY:AN:NY.ANわざわざC#で作ってぼったくりか
0063デフォルトの名無しさん
2013/07/03(水) NY:AN:NY.AN頼まれたのはコンソール版でのファイル入出力部分
最終的にはwindowsアプリケーションにしたいと言われています
0064デフォルトの名無しさん
2013/07/03(水) NY:AN:NY.AN0065デフォルトの名無しさん
2013/07/03(水) NY:AN:NY.ANコントロール作って、フォームに貼り付ける形にしたりVBAから呼び出したり、
officeのコントロールを叩いてWindowsフォームアプリからoffice呼び出す形にする
グラフの描画だけしたいならchartコントロールで。ただこのコントロールは非常に使いにくいw
0066デフォルトの名無しさん
2013/07/03(水) NY:AN:NY.AN0067デフォルトの名無しさん
2013/07/03(水) NY:AN:NY.AN今のVBAってまだVB6なん?
0068デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.ANむしろそれエクセル要らねえな
0069デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.AN同意
0070デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.ANWebBrowserクラスを派生して非同期でデータをダウンロードするようにしているのですが、どのように対処すればいいですか?
0071デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.AN根本的に設計が汚い。
この際だから依存関係逆転ぐらい覚えよう。
要するにイベントを使う
0072デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.ANint lineSpacingPixel = (int)Math.Round(font.GetHeight(g),0);
for (int i = 1; i <= lastLine + 1; i++)
{
g.DrawLine(p,
new Point(myPictureBox.Width - 5, (int)(lineSpacingPixel * (i + 1))),
new Point(myPictureBox.Width, (int)(lineSpacingPixel * (i + 1)))
);
}
これをフォントと重ね合わせると基本的にはうまくいくんですが、
フォントによっては改行するごとにズレが生じる事があります
行間を取得する方法として何かまずいんでしょうか
0073デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.ANInvokeする前にIsHandleCreatedやIsDisposedプロパティでハンドルが生きてるか確かめる
0074デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.AN0075デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.ANcatch
で握り潰せばいいと思う
0076デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.AN0077デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.AN握りつぶしていい処理ならそもそもやらんでいいかも知れんぞ
0078デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.AN007970 忍法帖【Lv=2,xxxP】(3+0:5)
2013/07/04(木) NY:AN:NY.ANWebBrowserクラスのDisposedイベントでスレッドが動いてたらAbortすれば動くようになりました
>>77
外部クラスのログをFormのテキストボックスに表示させたかったんです
0080デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.AN0081デフォルトの名無しさん
2013/07/05(金) NY:AN:NY.AN0082デフォルトの名無しさん
2013/07/05(金) NY:AN:NY.AN0083デフォルトの名無しさん
2013/07/05(金) NY:AN:NY.AN0084デフォルトの名無しさん
2013/07/05(金) NY:AN:NY.AN次の項目のどれが、どの順で実行されますか?
A Exitを呼んだスレッドで作られたControlとHandleの破棄
B ほかのスレッドで作られたControlとHandleの破棄
C Exitを読んだスレッドのApplication.Runから抜ける
D ほかのスレッドのApplication.Runから抜ける
>>70ではないのですが、BeginInvokeするためだけに作った
Controlが、終了処理中、HandleDestroyedが呼ばれることなく
いつの間にか死んでます。
0085デフォルトの名無しさん
2013/07/05(金) NY:AN:NY.AN0086デフォルトの名無しさん
2013/07/05(金) NY:AN:NY.ANハンドル破棄やApplication.Run終了もやってくれるという
認識でいいですか?
0087デフォルトの名無しさん
2013/07/05(金) NY:AN:NY.AN0088デフォルトの名無しさん
2013/07/05(金) NY:AN:NY.AN0089デフォルトの名無しさん
2013/07/05(金) NY:AN:NY.ANKinect独自の画面認証や体のジョイント認証と混同して
単純な四角形の描画やdelay関数を用いることは出きるのでしょうか??
0090デフォルトの名無しさん
2013/07/05(金) NY:AN:NY.AN> Windows上ならExcel扱えない言語のほうが珍しい
そう、C からでも使える。
0091デフォルトの名無しさん
2013/07/05(金) NY:AN:NY.ANマルチGUIスレッド自体がグレーだよ
不定の意味分かる?
リンクをクリックした場合も、自前のメソッドでDocumentTextにソースを流し込むようにしたいのですが、
クリックされたリンクを取得して自前のメソッドに投げることはできたのですが、
webBrowser自体の?でリンクをクリックしたときに自動でページ移動するみたいです
Navigatingイベントを見てみましたが、これをどこで潰せばいいのかわかりません
どうにかヒントだけでもください。お願いします
0093デフォルトの名無しさん
2013/07/05(金) NY:AN:NY.AN0094デフォルトの名無しさん
2013/07/05(金) NY:AN:NY.AN0095デフォルトの名無しさん
2013/07/05(金) NY:AN:NY.ANあればそれでキャンセルできる
なけりゃWebBrowserじゃなくてSHDocVwかなんかから引っ張ってきたらいい
0096デフォルトの名無しさん
2013/07/07(日) NY:AN:NY.ANそこで画像の表示なのですが、どのように表示させるのがセオリーというか、ベターなのでしょうか?
今はpictureboxを複数重ねて同じ位置に配置し、透過して表示させています(背景、キャラなど)
しかし、これだと後々キャラが動くモーションなどを組む時に困る気がしてきまして・・・
0097デフォルトの名無しさん
2013/07/07(日) NY:AN:NY.AN0098デフォルトの名無しさん
2013/07/07(日) NY:AN:NY.ANノベルゲー的なナニカを作りたいんです
0099デフォルトの名無しさん
2013/07/07(日) NY:AN:NY.ANとりあえず静止画のみで作ったら?
0100デフォルトの名無しさん
2013/07/07(日) NY:AN:NY.AN0101デフォルトの名無しさん
2013/07/07(日) NY:AN:NY.AN0102デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.ANWindows Form前提なら、GDI+を覚えた方がいいよ。
とりあえず、Pictureboxを昔のゲーム機のスプライトみたいに使うのは
Windows的には正統的な方法じゃないとだけ言っとく。
0103デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.AN0104デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.AN0105デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.ANID:r7Pti5YE!0106デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.ANvar dic = new Dictionary<int, int>();
dic[0] = 0;
dic[1] = 1;
var arr1 = dic.Values.ToArray(); // { 0, 1 }
dic.Remove( 0 );
dic.Remove( 1 );
if( dic.Count == 0 )
{
//dic.Clear();
}
dic[0] = 0;
dic[1] = 1;
var arr2 = dic.Values.ToArray(); // { 1, 0 }
////////////
dic.Clear(); のところでコメントを外すとarr2 も{ 0, 1 }になるんだなぁ
キーのハッシュのキャッシュのせいかなぁ
未定義の動作だからこんなこと考えても仕方ないけど。
それは重々承知としても、無意識に順番を想定しちゃうコード書いちゃうことってありませんか……
0107デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.AN0108デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.ANお恥ずかしい
こういうところがタコなんだなぁ。
0109デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.ANソートしてほしいんじゃなくて
挿入順を保存してほしいんだった……
0110デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.AN0111デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.ANどなたかわかりませんか・・?
0112デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.AN0113デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.ANあとWebBrowserで〜ってやつ
0114デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.ANListって順番保障してなかったっけ?
0115デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.ANまあOrderedDictionaryなんての作る場合はお世話になるが
0116デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.AN0117デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.ANttp://www.ouj.ac.jp/hp/kamoku/H25/kyouyou/B/joho/1570048.html
0118デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.AN理解してないのがわかるな
0119デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.AN挿入順を記憶しておいて
表示する時にSortedDictionaryに突っ込み直して
先頭から表示するしか
0120デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.ANKeyedCollectionというのもあるぞ
0121デフォルトの名無しさん
2013/07/08(月) NY:AN:NY.AN0122デフォルトの名無しさん
2013/07/09(火) NY:AN:NY.AN常に追加順で扱うならListかLinkedListでいいだろ
Dictionaryに入れるのであれば
要素の比較でソートはしたいってことじゃないのか
0123デフォルトの名無しさん
2013/07/09(火) NY:AN:NY.ANどっからソートが出てきた?
0124デフォルトの名無しさん
2013/07/09(火) NY:AN:NY.AN>無意識に順番を想定しちゃうコード書いちゃうことってありませんか
俺は全く全然さっぱりない
0125デフォルトの名無しさん
2013/07/09(火) NY:AN:NY.ANソートではなかったな
ソートの話が多くてつい言ってしまったわ
0126デフォルトの名無しさん
2013/07/09(火) NY:AN:NY.ANありがとうございます
ちょっといろいろ調べてみます
0127デフォルトの名無しさん
2013/07/09(火) NY:AN:NY.AN生産性と創造性を阻害するだけに思えます
0128デフォルトの名無しさん
2013/07/09(火) NY:AN:NY.AN0129デフォルトの名無しさん
2013/07/09(火) NY:AN:NY.AN0130デフォルトの名無しさん
2013/07/09(火) NY:AN:NY.AN3Ks 辺りまでは、同意
俺のショボい頭では、それ以上はドキュメントなしでは無理
0131デフォルトの名無しさん
2013/07/09(火) NY:AN:NY.AN0132デフォルトの名無しさん
2013/07/10(水) NY:AN:NY.AN0133デフォルトの名無しさん
2013/07/10(水) NY:AN:NY.AN0134デフォルトの名無しさん
2013/07/10(水) NY:AN:NY.AN0135デフォルトの名無しさん
2013/07/11(木) NY:AN:NY.AN0136デフォルトの名無しさん
2013/07/11(木) NY:AN:NY.AN(ヾノ・ω・`)
0137デフォルトの名無しさん
2013/07/11(木) NY:AN:NY.AN0138デフォルトの名無しさん
2013/07/11(木) NY:AN:NY.AN納品仕様書は、完成後に作るもの。
0139デフォルトの名無しさん
2013/07/11(木) NY:AN:NY.AN改行マークは意図したところについてくれるのですが、テキストボックスを「改行で」スクロールすると
テキストボックスの一番下の空白(テキストボックス扱いじゃない隙間?)に
改行マークの残像のようなものが付き、増えていってしまいます。
なにか防ぐ手はないでしょうか。
public void New_Line_Check(TextBox textBox)
{
//ダブルバッファリング用 「Height+100」は試行錯誤しようとした後です、気にしないでください
Bitmap textBox_g= new Bitmap(textBox.Width, textBox.Height+100);
Graphics g1 = Graphics.FromImage(textBox_g);
//Bitmapに改行マークを描写後、textBoxに写す
using (Graphics g2 = textBox.CreateGraphics())
using (Brush brush = new SolidBrush(Color.DarkGreen))
{
// 改行検索
Regex regex = new Regex(Environment.NewLine);
foreach (Match match in regex.Matches(textBox.Text))
{
// 改行位置取得
Point point = textBox.GetPositionFromCharIndex(match.Index);
point.Offset(-2, 2); // 出力位置微調整(お好みに応じて)
// 改行記号(ここでは"↓")描画
g1.DrawString("↓", this.Font, brush, point);
}
g2.DrawImageUnscaled(textBox_g, 0, -2, textBox.Width , textBox.Height + 100);
g1.Dispose();
}
}
0140デフォルトの名無しさん
2013/07/11(木) NY:AN:NY.AN0141デフォルトの名無しさん
2013/07/11(木) NY:AN:NY.AN0142デフォルトの名無しさん
2013/07/11(木) NY:AN:NY.ANあ、更にいじってたら自己解決しました
すみません
Bitmap textBox_g= new Bitmap(textBox.Width, textBox.Height+100);
を
Bitmap textBox_g= new Bitmap(textBox.Width, textBox.Height-10);
とちょっと短くしたら何故か綺麗になった
なぜか分かんねえけどもうこれでいいやw
0143デフォルトの名無しさん
2013/07/11(木) NY:AN:NY.AN設計図は頭の中
設計図を書いてるように見えるが、単にダンプしてるだけ
0144デフォルトの名無しさん
2013/07/11(木) NY:AN:NY.AN設計書なんてバカバカしいよ
あんなものは高級な言語や開発環境が無かった時代の遺物であって現代にはそぐわない
0145デフォルトの名無しさん
2013/07/11(木) NY:AN:NY.AN下請けに来る仕様書の分厚さと細かさはびっくりするぞw
0146デフォルトの名無しさん
2013/07/11(木) NY:AN:NY.AN0147デフォルトの名無しさん
2013/07/11(木) NY:AN:NY.ANだな
0148デフォルトの名無しさん
2013/07/11(木) NY:AN:NY.ANまあ、大昔のリスト出力と同じで 価格 = 単価 × 枚数 だしな
0149デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.ANスレッドタイトルの検索はどのように行うのがベターなんですか?
find 2chの検索結果htmlを切り出せばいいのでしょうか?
0150デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.AN0151デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.ANそこから検索するのが普通じゃないの
0152デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.AN専ブラによって見に行く場所違うね
0153デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.AN>>149が作ろうとしてるのがどういう使われ方を想定してるのかによってベターな方法は変わる
0154デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.AN0155デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.AN0156デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.AN何でそんな俺俺仕様まで想定して答えないといけないの
そんなのはエスパーの仕事だよ
0157デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.AN0158デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.AN質問を読めば今アクセスしてる板のスレ一覧から検索したいのではなく、全板から検索したいというのが分かる。
エスパーである必要はない。
問題はfind 2ch以外で全板検索をかけることができるのかどうか?って点だよ。
どこかから全板のスレ一覧を落とせるか、もしくはhtml以外でのfind 2chへのアクセス方法が用意されているかどうかって点。
おそらくないだろうな。html切り出しがベターだと思う。
0159デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.AN行ったこと無いからこそ検索が必要なんだけどな。
普段行ってる板ならそこでさがしゃいい
0160デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.ANレスどうもです
取得したスレッド一覧別にスレッドのタイトル検索機能はつける予定です
それとはべつに全板からスレッドのタイトル検索機能をつけたいんです
アプリ内で全板のスレ一覧のデータを維持し続けれません
なので外部のAPIに任せたいのですがそれらしいものは見当たりませんでした
しかしたとえばiOSアプリのTwinkleだったりAndroidアプリの2chMateなどにはそういった機能があります
なので方法はあるはずなんです
その結果私が考えつけたのが>>147の質問になります
0161デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.AN>>158-159
おっしゃるとおりです
やはりhtmlきりだしなんでしょうかね
0162デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.AN本当にある?
全板横断のスレタイ検索って事だよね?
俺の mate では出来ないような…
0163デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.AN試してないけど
0164デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.AN2chMateにはなかったですか?適当なこと言ってすみません
2chMateは使ったことはがありませんのでないかもしれません
>>153
find.2ch以外にもその手のサービスはあるんですね
複数のサイトから検索結果を得られると信頼性があがりますね
0165デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.AN検索サイトに任せてんでしょ
0166デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.AN普通に板一覧取得してそこから各板のスレ一覧取得してって流れじゃダメなん?
あんまし負荷かけたらダメみたいなルールがあるんか?
0167デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.ANダウンロードファイル数が多くて大変
0168デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.ANそれはfind2chでも同じじゃないの?
find2chは内部でどうやってるのかな
0169デフォルトの名無しさん
2013/07/15(月) NY:AN:NY.ANfind.2chって言うぐらいだから運営のだろ?スレが立つたびにローカルに保存してるんじゃない?
0170デフォルトの名無しさん
2013/07/16(火) NY:AN:NY.ANとあるぜ
0171デフォルトの名無しさん
2013/07/16(火) NY:AN:NY.AN1.1と2.0と4.0のしか入っていないみたいなんですが。
VisualStudio2008はインストールしています。
0172デフォルトの名無しさん
2013/07/16(火) NY:AN:NY.AN0173デフォルトの名無しさん
2013/07/16(火) NY:AN:NY.AN0174デフォルトの名無しさん
2013/07/16(火) NY:AN:NY.ANサイトを参考に作成して概ね希望する動作はしたのですが、1点わからないことが出たので教えて下さい。
はじめてWndProc(ref Message m)を使ってるのですが、最後の「base.WndProc(ref m);」は何のために呼んでいるのでしょう?
検知を行ったら継承元にMessageを送らないといけない理由がわかりません
//描写等の取得
[System.Security.Permissions.SecurityPermission(
System.Security.Permissions.SecurityAction.LinkDemand,
Flags = System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode)]
protected override void WndProc(ref Message m)
{
const int WM_PAINT = 0x000F;
switch (m.Msg)
{
case WM_PAINT:
New_Line_Check((TextBox)this);
break;
}
base.WndProc(ref m);
}
0175デフォルトの名無しさん
2013/07/16(火) NY:AN:NY.ANWM_PAINTはbreakしてbase呼ぶから、やっぱりデフォルトの処理を後からさせてる
デフォルトの処理をしないと、メッセージが来ても何もせずに終わる(キー入力処理も描画処理も何もなし)
0176デフォルトの名無しさん
2013/07/16(火) NY:AN:NY.ANWndProcをオーバーライドするとどんな情報が来たか分かるし、ある種の情報を握りつぶしたり改変したりできる
バイパスだからちゃんと元の脳みそに伝えてやる(base.WndProc)ことが必要で、
そうしないとウンコが出そうなのに垂れ流したりする
0177デフォルトの名無しさん
2013/07/16(火) NY:AN:NY.AN0178デフォルトの名無しさん
2013/07/16(火) NY:AN:NY.AN0179デフォルトの名無しさん
2013/07/17(水) NY:AN:NY.AN0180デフォルトの名無しさん
2013/07/17(水) NY:AN:NY.ANなるほど、分かりました
例外処理以外の時に対応するためなんですね
ありがとうございました
>>176
あ、ありがとうございました・・・
0181デフォルトの名無しさん
2013/07/17(水) NY:AN:NY.ANその後、改良してテキストボックスがスクロールした時、マウスホイールした時、文字入力した時など、自分の想定される場面で改行マークを付けることができるようになりました。
しかし以下の処理が実現出来ません。
「ファイルを開く」メニューを用意しており、その中のLoad_File()メソッドで、StreamWriter機能を使ってテキストファイルを読み込んでいます。
この時、ファイル読み込み直後に自動で改行マークを付けたいと考えており、
下記ソースのように処理の最後に改行マークを付けるNew_Line_Check()メソッドを置いてみたり、自動で処理するよう試みているのですが、
処理順が ダイアログ「OK」→改行マーク処理(一瞬読み込んだテキストにあった形で表示されるが消える)→テキスト読み込み
となり、改行マークのないテキストがテキストボックスに表示されてしまいます。
考えられる問題点として、>>139のグラフィックが読み込み処理で破棄されてしまうのかなとusingを検証用に外してみたり、
イベント処理の順番かと下記メソッドを丸々try{}catch{}で括ってfinally内にNew_Line_Check()メソッドを置いてみたりしたのですが、解決出来ません。
(>>174のテキストボックスの描写ごとの呼び出しもテキストファイルの読み込みには効果がないようです)
なにか解決の糸口はないでしょうか。
//ファイルを開く
private void Open_File_Menu_Click(object sender, EventArgs e)
{
//ダイアログを表示する
//OKボタンがクリックされたとき
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
//パスを保存
File_Name = openFileDialog1.FileName;
//読み込み
Load_File(File_Name);
}
//ダイアログを閉じる
openFileDialog1.Dispose();
TextBox1.New_Line_Check(TextBox1);
}
0182デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.ANTextBox1.New_Line_Check(TextBox1);って呼ばないで
TextBox1.Refresh();とかしてやれば再描画されるんじゃねーの?
でも描画のたびに全行スキャンするなんて重そうだね♪
あと、ちょっとは命名規則を考慮してみよう!
0183デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.ANフォーム内などではなくデスクトップに文字列を表示するのはどういった方法でやっているのでしょうか?
0184デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.ANGetDesktopWindow()でデスクトップのウィンドウを取得して
draw
0185デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.AN0186デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.ANレス有難うございます
しかし、TextBox1.Refresh();では改行マークのないテキストが再構築されるだけで、改行マークは付けれませんでした
>>181のファイル読み込み時の問題はまだ解決できていません
wordなり、有名なテキストエディタなりでは実現できているので、何かしら方法はあると思うのですが・・・
もし他に妙案があれば教えて下さい
スキャン範囲については何かしらの方法で改善(範囲限定)しようと思っていますが、当面の問題を解決してから考えようと思っています
0187デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.AN0188デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.AN0189デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.ANうむ。難しそうだな
ttp://www.wisdomsoft.jp/511.html
0190デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.ANNew_Line_Checkの前にbase.WndProcを呼んだほうがいいような気がするが…
0191デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.ANありがとうございます
試しに先にbase.WndProcを呼んでみましたが、解決には至りませんでした
今は>>139でGraphics g2 = textBox.CreateGraphics()とCreateGraphics()で描写をしているから
何か別の処理が挟まると消えてしまうのかなと思っていて、別の方法で描写出来ないか考えています
でもテキストボックスだからペイントイベントはできないぃぃ・・・
0192デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.ANEnterイベントでもNew_Line_Check()呼んでるのになんで・・・
Focus()消したら改行マーク表示されるよ!でも検索機能が死ぬよ!もうだめぽ!
0193デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.AN0194デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.ANでも糞重そう
0195デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.AN最初からみんな見てる人は感じてたと思うけど
エディタみたいな機能を追加するのにTextBoxクラスを継承しても無駄無駄無駄
そこには屍しかない
これに尽きる
元になってるコモンコントロールのEditコントロールがそんな拡張に向いた仕様じゃないのねー
早めに撤退して自前のクラス作ることを考えたほうがいいよ
0196デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.AN作ってみればたいしたことないから作ったほうがいい
0197デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.AN自作エディットコントロールの重さに・・・
0198デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.AN0199デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.AN0200デフォルトの名無しさん
2013/07/19(金) NY:AN:NY.ANhttp://www.atmarkit.co.jp/fdotnet/dotnettips/931uptime/uptime.html
を参考にしてPCの起動時間を取得しようとしましたが、形式が"dd.hh:mm:ss.ms"なので見辛いです
そこでStringBuilderで分割、整形したのはいいのですが1日未満の場合エラーを吐いてしまいます…
場合に応じて"dd日hh時mm分ss秒"や"hh時mm分ss秒"、"mm分ss秒"のような形式で表示させるようにするにはどうしたら良いでしょうか
コードは下記のとおりです‥
PerformanceCounter upTime = new PerformanceCounter("System", "System Up Time");
upTime.NextValue();
return upTime.NextValue(); //2度呼び出し
string uptime = Convert.ToString(TimeSpan.FromSeconds(GetSystemUpTime()));
StringBuilder sb = new StringBuilder(uptime);
sb.Length -= 8; //小数削除
sb.Replace(".", ":"); //置換
string r1 = sb.ToString();
string[] lines = r1.Split(':'); //":"で区切る
MessageBox.Show(lines[0] + "日" + lines[1] + "時" + lines[2] + "分" + lines[3] + "秒"");
0201デフォルトの名無しさん
2013/07/19(金) NY:AN:NY.ANTimeSpanクラスのToStringメソッド使え
http://msdn.microsoft.com/ja-jp/library/dd992632.aspx
もしくはTimeSpanクラスのDaysプロパティとかで場合分けする
http://msdn.microsoft.com/ja-jp/library/system.timespan_properties.aspx
0202デフォルトの名無しさん
2013/07/19(金) NY:AN:NY.ANありがとうございます
色々試してみます
0203デフォルトの名無しさん
2013/07/20(土) NY:AN:NY.ANyield returnの自動実装よりnewが少なくなる分パフォーマンスが高くなる可能性はありますかね
0204デフォルトの名無しさん
2013/07/20(土) NY:AN:NY.AN返値のみstruct を返すようにシグニチャーを変えたメソッドを普通に実装すれば、f
oreach は new 分だけ速くなるだろうね。
とにかく、インターフェースにボクシングされないように
メソッドを呼べば foreach 以外も同様。
ジェネリックメソッドでは where を使用する。
0205デフォルトの名無しさん
2013/07/20(土) NY:AN:NY.ANなるほどありがとうございます
0206デフォルトの名無しさん
2013/07/20(土) NY:AN:NY.ANほとんど意味ない
0207デフォルトの名無しさん
2013/07/21(日) NY:AN:NY.AN{}
こういう意味で書きました。
0208デフォルトの名無しさん
2013/07/21(日) NY:AN:NY.ANvoid Method<S, T>(S source) where S : IEnumerable<T> の間違いだよな?
よく考えてみるとわかるが、意味ないんだよそれ
void PrintAll<S, T>(S source) where S : IEnumerable<T> {
foreach (T item in source) Console.WriteLine(item);
}
foreachを展開すれば次のコードと等価
IEnumerator<T> e = source.GetEnumerator();
while (e.MoveNext()) { T item = e.Current; Console.WriteLine(item); }
foreachのボックス化を避けるにはIEnumerable<T>.GetEnumeratorを明示的実装して
構造体を返すようにパブリックなGetEnumeratorをオーバーロードするんだけど、
この場合はIEnumerable<T>インターフェイスを通してGetEnumeratorを呼び出すので、
source.GetEnumerator()の戻り値はIEnumerator<T>にボックス化されて返ってくる
0209デフォルトの名無しさん
2013/07/22(月) NY:AN:NY.ANそういう意味です。申し訳ない。
言われてみればそうかもしれない。
S が class ならそういう挙動になると思う。
struct なら特殊化されそうな気がするけど、どうなんだろう。
void Method<T>(this MyList<T> list, ...) { }
みたいに、IEnumerable<> を実装したクラスを引数に取るように、わざわざ定義してあげるしかないのかな。
new されないように LINQ 使おうとすると、メソッド分だけ struct :IEnumerator<> を実装しないといけなくなりそうだから現実的じゃないね。
0210デフォルトの名無しさん
2013/07/22(月) NY:AN:NY.AN特殊化されるかどうかとか関係なくて、
問題はIEnumerable<T>.GetEnumeratorの戻り値が結局IEnumerator<T>であること
IEnumerable<T>を通す以上、GetEnumeratorから列挙子が戻る時点で必ずボックス化される
君の言うように個別にメソッドを用意するしかない
0211デフォルトの名無しさん
2013/07/22(月) NY:AN:NY.AN0212デフォルトの名無しさん
2013/07/22(月) NY:AN:NY.AN0213デフォルトの名無しさん
2013/07/22(月) NY:AN:NY.AN0214デフォルトの名無しさん
2013/07/22(月) NY:AN:NY.AN本来使えないはずの GetEnumerator() を、where で指定することで使用できるようにしているので、インターフェース側のメソッドのシグニチャで、コンパイル時に型が決定するということですね。
では、インターフェース側で setter を持つメソッドが定義されていて、それを同様にして使用した場合、ボックス化されてしまうのでしょうか。
0215デフォルトの名無しさん
2013/07/22(月) NY:AN:NY.ANsetterを持つメソッドの意味がよくわからないが
そもそもジェネリックとか全く関係なくて、戻り値の型がインターフェイスだから
戻り値はボックス化されるというだけの単純な話だぞ
0216デフォルトの名無しさん
2013/07/22(月) NY:AN:NY.ANsetter を持つプロパティのミスでした。
戻り値の型がインターフェースとありますが、それは IEnumerable<> での話であって、
当然 T : IEnumerable<> で明示的実装により struct な IEnumerator<> の実装を返せば、
戻り値の型は struct ですよね ?
そこで、ジェネリックメソッドで where T : IEnumerable<> としたとき、
var enumerate = list.GetEnumerator();
の var は list の方のシグニチャを優先するのか、IEnumerable<> の方のシグニチャを優先するのか、
という話をしたかったので、無関係ではありません。
せっかくなのでテストをしました。修行中の身ゆえリンクは張れません。堪忍
ideone.com/pzAlhg
0217デフォルトの名無しさん
2013/07/22(月) NY:AN:NY.ANIEnumerable の方はおっしゃる通りの動作となりました。理由は >>214 に書いた通りなのだと思います。
では、setter を持つプロパティについては、どういう動作になっているのでしょうか。
明示的にボックス化をすると、コピーが出来てしまうので当然こういった動作になるのはわかります。
しかし、明示的に書かなかった場合に、
IEnumerable<> の時と同様に ITest.Property が呼ばれているなら、
ボックス化が起き、コピーが作られると思ったのですが。。
0218デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN特殊化されてるから。
MethodA<T>(ref T value) をTestで特殊化したら MethodA(ref Test value) になるから当然ボックス化は発生しない。
同様に、IEnumerator<T> MethodC<T>(IEnumerator<T> e) を特殊化したら
IEnumerator<Test> MethodC(IEnurmerator<Test> e)
戻り値も引数もどう見てもインターフェイスだろ? だから当然引数も戻り値もボックス化される。
0219デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANMethod(T obj) where T : IHoge { obj.Hoge(); }
の形では、Tが値型の場合でも特殊化のおかげでobjのボックス化は発生しない。
x.GetEnumerator()でボックス化されるのは "xではなく、" "GetEnumeratorの戻り値"。
それは単にGetEnumeratorの戻り値がIEnumerator<T>だからであり、上のとはまた別の話。
IEnumerator<T>をいくら特殊化しようがインターフェイスだろ。
0220デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN(x as IEnumerable<>).GetEnumerator() という書き方とは別の方法で、コンパイラは x 自体のボックス化をせずに IEnumerable<>.GetEnumerator() を呼び出すということでしょうか?
その時の GetEnumerator() のシグニチャは IEnumerable<> での定義によると。
0221デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN0222デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANコンピューターの情報を取得出来ますが、
foreach (System.Management.ManagementObject mo in moc)
で、複数取得出来る可能性があるということだと思いますが、
OSの名前が複数取得出来る場合ってどういう時でしょうか?
0223デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANttp://msdn.microsoft.com/en-us/library/windows/desktop/aa394239.aspx
ない
0224デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN0225デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN0226デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANありがとうございます。
VBSなんかでもコンピューターの情報を取得するサンプルがありますが、
どこを見ても必ずforeachでまわしてるので疑問に思ってました。
デュアルブートだったら2つ取得することもあるかなと思いましたけど、
起動してないOSの情報なんて取得出来るのかなと・・・。
0227デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANSystem.Collection.Generic.List<T>.GetEnumerator()の戻値の型は IEnumerator<T> ではなく、List<T>.Enumerator なので、シグニチャは関係あると思うのですが。
List<T>.GetEnumerator() を使用しても、新しくヒープにインスタンスが作られないように、IEnumerable<T> をわざわざ明示的に実装しているわけですし、先ほどのテストでもこれが正しいことは確認出来ると思います (コメントアウトを外した時の挙動で)。
0228デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN他のクラスで操作したい場合はどのように扱うのがいいのでしょうか?
0229デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANclass hoge
{
public hoge(Form1 form){ _form1 = form; _form1.text="hoge"; }
Form1 _form1;
}
class Form1
{
hoge _hoge = new hoge(this);
}
0230デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANだから実装はどうあれ戻り値はIEnumerator<T>だろって言われてるんじゃねーの
0231デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANstaticメソッド内の副作用がないロジックについてはある程度分かってきたのですが...
たとえば私の作るアプリ(ゲーム)の9割以上の部分が下記の構造で動いているのですが、関数型プログラミングの考えでいくと、この構造はどのように変わっていくのでしょうか?
ideone.com/XUM8kV (URL貼り付けNGくらったのでこれですまそ)
0232デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANこういうセンスの人はプログラミング向いてない
0233デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANふらっとスレにも来てた
0234デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANセンスある人はどうやるのです?
0235デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANレスありがとうございます
動作させてみたのですが、よくわかりませんでした
0236デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN煽りはなしでお願いします
0237デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANList<T>.Enemerator が IEnumerator<T> を実装しているのは当然です。
現在問題にしているのは、ジェネリックメソッド内で、GetEnumerator() を呼ぶ時に、IEnumerable<T> というインターフェース型に『ボックス化』して呼んでいるのか、という点です。もともとは、新しくヒープにインスタンスが作られないように、という問題でしたし。
シグニチャについては、where で指定したインターフェースの方になることは、先ほどのテストからも理解しました。しかし、これではそのオブジェクト自体がボックス化されるかがわからないため、これを確認するテストも行いました。
その結果、setter のあるプロパティを持つインターフェースについては、ボックス化は起きていないと考えました。
以上から、>>220 のように考えました。
これがあっているのかを確認したいのです。
0238デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANFormが他に参照を握られるのではなく、
Formが他の参照を握るようにする。
0239デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN>>1を読め
ドヤ顔して上から言いがかるようなスレじゃないぞ
0240デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN>>220で合ってるよ
ジェネリックは実行時に特殊化されるが、
メンバのバインドはあくまでコンパイル時に行われる
実行時にはすべてのメソッドはその名前や引数だけでなく
それを定義してる型の型名によって明確に区別されていて、ダックタイピングのような動作は一切しない
0241デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN残念ながらこれはセンスの問題で初心者かどうかはあまり関係がない。
っていうか、こういうのに限っていつもは誰かを罵倒してるご都合主義野郎なんじゃないの。
言っとくけど俺は初心者に上から目線で物を言ったことも罵倒したこともないんで。
0242デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN0243デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANなるほど。
C# でインターフェースのメソッドを呼ぶ時は、
型キャストを行って呼ぶようなコードしか見たことがなかったので、
こういう動作があることを知りませんでした。
ありがとうございます。
0244デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANnullになることはないんだからCスタイルのキャストで書けよ
0245デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANマインスイーパーを例に取れば、フィールドを表す変数や、フィールド上のマスを開けるなどの操作 (メソッド) は、ロジック用のクラスで行います。
デザイン、つまり、Form 側ではそのロジック用のクラスをインスタンスとして持ち、その情報通りに表示することを徹底します。ロジック用のクラスでフィールドが更新されたかどうかを得るには、イベントを実装すると良いと思います。
もし、その自作のクラスがデザイン用である場合、>>229 のように関連するオブジェクトがデザイン用であってもインスタンスとして受け取ることは普通です。
ただし、テキストボックスのみを対象にしているならその TextBox のインスタンスのみを渡す方が良いです。これは、その自作クラスからアクセスできるオブジェクトの数が少なくなり、他には変更できない、ということになるのでコードが見やすくなるためです。
また、同様の理由で、TextBox の基底クラス程度で済むものなら、基底クラスのインスタンスを渡す、というようにします。
0246デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANだからさ1読め
>こういうセンスの人はプログラミング向いてない
なんてレスいらねースレなの
>っていうか、こういうのに限っていつもは誰かを罵倒してるご都合主義野郎なんじゃないの
>言っとくけど俺は初心者に上から目線で物を言ったことも罵倒したこともないんで。
妄想癖やばいだろ。
>>239に対してなんで、罵倒やらご都合主義やらが出てくるんだよw
思考が飛躍しすぎて恐いわ
0247デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN0248デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANwhere で指定されているため、
キャストで例外が飛ぶことがないので、
速い as にしました。
例外を飛ばしたい時は別として、
as の方が括弧の数が少ないので見やすくて好きです。
0249デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN馬鹿だろお前。
0250デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN0251デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN例外が発生しない限りは速度に差はない
asの方が見やすいのは同意だが、asは失敗する可能性がある場合に使うという住み分けがある以上、
それに従わないのは混乱の元
0252デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANpublic string なんとかText
{
get{return form1.Text;}
set{form1.Text = value;}
}
0253デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.ANpublic string なんとかText
{
get{return form1.TextBox.Text;}
set{form1.TextBox.Text= value;}
}
0254デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN>>235な質問者を置き去りにして、こうした方がいいよ〜ってのがそのほかのレス
誰か>>229の説明してやれよ
0255デフォルトの名無しさん
2013/07/23(火) NY:AN:NY.AN0256デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANつか_form1.text って所がバグっていると思うが
0257デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANfloatからintへの変換を行っているのですが、
整数と小数点以下を分けたいと思い以下のコードを書きました。
float version = 1.3f;
float xx = (version * 10.0f);
float xxx = xx % 10f;
int a1 = (int)(xxx);
int a2 = (int)(version / 1f);
Console.WriteLine("{0}.{1}",a2,a1);
しかし、Releaseで実行してみると「1.2」と表示されます。
Debugだと「1.3」と正常に表示されるため、参っています
キャストがおかしいのでしょうか? だとすればどのように記述するべきでしょうか?
0258デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.AN0259デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANversion なら float よりも string の方がいいよ。
float だと version 1.1.02 みたいなのに対応できないし。
0260デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.AN残念ですが変わりませんでした。
>>259
なるほど…文字列での管理も検討してみます
0261デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANvar versions = version.Split('.'); だな
0262デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANmsdn.microsoft.com/ja-jp/library/vstudio/system.version.aspx
0263デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANstring moji = version.ToString("F1");
string[] versions = moji.Split('.');
int a1 = int.Parse(versions[1]);
int a2 = int.Parse(versions[0]);
0264デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANそのまま使えばいいじゃないのよ
0265デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANint majorVer = 1;
int minorVer = 3;
int version = ((majorVer << 16) & 0xffff0000) | (minor & 0xffff);
// get high-order word.
major = (version >> 16) & 0xffff;
//get low-order word.
minor = version & 0xffff;
0266デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANint minor = 3;
int version = ((major << 16) & 0xffff0000) | (minor & 0xffff);
// get high-order word.
major = (version >> 16) & 0xffff;
//get low-order word.
minor = version & 0xffff;
0267デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANint minor = 3;
int version = ((major << 16) & 0xffff0000) | (minor & 0xffff);
// get high-order word.
major = (version >> 16) & 0xffff;
//get low-order word.
minor = version & 0xffff;
あれ、2chって&書き込めないのか
0268デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.AN冗談は置いといてもふつうにVersionクラスでいいだろ
等値演算子もオーバーロードされてるし
なにより分かりやすい
0269デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANDebug/Releaseでビルドオプションに差違があるからだろうけど、素直にVersionクラスを使うか、個々の要素をintで持ってUIに見せるときだけ文字列連結するべき。
0270デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANVer1.05だったら105
数値の大小で新しいバージョンの判別できるし、文字列にも変換しやすい
俺も最初そうしてた。
そして、バージョンが5.10.0とかになってくると
6.0.0(600)<5.10.0(5100)となって破綻した。
0272デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.AN6.00.00=60000、5.10.00=51000
お馬鹿な管理方法使うときは仕様限界を考えておかないとw
0273デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.AN0274デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANなんで同じメーカーなのにあんなに使い勝手悪いんだろう
0275デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.AN0276デフォルトの名無しさん
2013/07/25(木) NY:AN:NY.AN0277デフォルトの名無しさん
2013/07/25(木) NY:AN:NY.AN0278デフォルトの名無しさん
2013/07/25(木) NY:AN:NY.ANテーブルまるごと持ってくるとか、それで出来るならDB使う必要ないじゃん
素直にクライアントサイドでLINQ to SQLが正解なんじゃね
0279デフォルトの名無しさん
2013/07/25(木) NY:AN:NY.AN0280デフォルトの名無しさん
2013/07/25(木) NY:AN:NY.AN0281デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.ANどこかに跡形は残っていないでしょうか?
0282デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.ANないかもね
0283デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.ANないかもね
0284デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.ANデータ喪失は事故責任だよ
0285デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.ANにゃい!orz
0286デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.AN0287デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.AN0288デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.ANコード画面の横(ツールボックス欄やソリューションエクスプローラー欄など)
に、現在開いているコードのメソッド一覧を表示できないでしょうか?
ソリューションエクスプローラに似たような表示はできますが、
プロパティなども表示され情報が多い、現在開いているコード画面に追随していない、
といった理由で使い勝手はイマイチです。
コード内をアウトラインで折りたたんだ場合は、
コード確認に一手間かかるのでこれもまた使い勝手がイマイチです。
0289デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.ANエディタの上部の右側のドロップダウンがそう。
本当はオブジェクトブラウザかクラスビューにエディタと同期して表示する機能が
あるといいと思うんだが、おそらくそういう機能は実装されてない
0290デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.ANExpressだから多分自分で作っているソフトだと思うが
一つのクラスにメソッドやプロバティーを詰め込み過ぎじゃないかな?
今作っているものをやり直せとは言わないけど、次に作るときはクラスの肥大化を意識した方がいいよ
0291デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.ANありがとうございます。
こいつもメソッドとプロパティ変数が混在して表示されてるんですね・・・
情報後出しになりますが、元々の目的は、GUIアプリの作成でソリューションエクスプローラだと
Formファイルの情報とデザイナーファイルの情報がまとめて表示されて邪魔だったのでなんとかしたいってのがありまいた。
教えてもらった方法だと、開いているコード以外の情報は灰色で表示されるので若干マシになったという感じです。
自作クラスの情報はそれだけがまとまって表示されるので、ソリューションエクスプローラよりはだいぶマシになりまいた。
>>290
GUI機能と、その他の機能は別クラスに分けて開発しています。
ただ、GUIだけでもかなり入り組んでるので辟易している次第です
開発途中ですが、現在はForm1.Designer.csにプロパティが30個くらいあり、
最終的には倍以上に増える予定です。
その情報と、Form1.csにあるプロパティ、メソッドの情報が混在してしまい、非常に煩雑です。
(Form1.csは現状たかだか300line,メソッドは10個程度ですが、それでも既に('A`)ウヘァです)
GUI機能もさらに複数クラスに細分化すれば解決しそうですが、エディタ側でももうちょっとなんとかしてほしいですね
(メソッド一覧のアウトライン表示は、秀丸とかのエディタには普通についてる機能なのに・・・)
0292デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.AN「BoolVisibiltyConverer」と言う謎クラスを持ってきやがってXamlのエラーとなるんだが、コンパイルできてしかもちゃんと動いた
ちゃんとしたクラス名の「BooleanToVisibilityConverter」に直すとXamlのエラーもなくなるし動作も問題ない
コレってなんだろうね?
「BoolVisibiltyConverer」は、謎のネームスペース xmlns:Default="clr-namespace:" に存在するらしいが、コレもエラー表示が出るんだわ
0293デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.AN2012には自動バックアップってオプションがあるな
2010にはない?
0294デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.AN0295デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.AN変更した覚えないからデフォルトで 5 分間隔でやってくれるっぽい。
その結果が >>283 になるんだと思うけど。
0296デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.AN最初のWindowsApplication1とかのまま一度も保存していない場合はバックアップはしないみたい
コンパイルするごとにそこまでは残るはずだけどプロジェクトのフォルダごと見当たらないというか
命名していないから探しようがなかったです
0297デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.ANヘルプには
>ファイルが新規であり、今まで一度も手動で保存されていない場合は、ランダムに生成されたファイル名で自動的に保存されます
って書いてあるけど
0298デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.ANこういう時イラっとくるんだよね
0299デフォルトの名無しさん
2013/07/28(日) NY:AN:NY.ANJGREP
http://www.hi-ho.ne.jp/jun_miura/jgrep.htm
さすがに書庫の中までは検索出来ないけど速い
コレクションを列挙するというのはわかりますけど、どういう場面に使えばいいのでしょうか?
0301デフォルトの名無しさん
2013/07/29(月) NY:AN:NY.AN自分で意識して使うことはまずない
yieldがあるのでIEnumeratorを自分で実装することもない
0302デフォルトの名無しさん
2013/07/29(月) NY:AN:NY.ANIEnumerableが列挙してくれと頼まれたときの動作を決めるのがIEnumerable
どういう順番で何を列挙するかとかを細かく自分で決めたいときに使う
逆に言えばあまり自分で実装することは今の時代はあまりないよね
0303デフォルトの名無しさん
2013/07/29(月) NY:AN:NY.AN○IEnumerableが列挙してくれと頼まれたときの動作を決めるのがIEnumerator
0304デフォルトの名無しさん
2013/07/29(月) NY:AN:NY.ANクソ複雑なステートマシンになる
MSですらLINQの実装では低レベルな制御を放棄してyield使いまくってるのに
0305デフォルトの名無しさん
2013/07/29(月) NY:AN:NY.AN逆に単純だけど面倒なだけ
0306デフォルトの名無しさん
2013/07/29(月) NY:AN:NY.AN0307デフォルトの名無しさん
2013/07/29(月) NY:AN:NY.AN0308デフォルトの名無しさん
2013/07/29(月) NY:AN:NY.ANフォーム関係ない
0309デフォルトの名無しさん
2013/07/29(月) NY:AN:NY.AN詳細はコマンドプロンプトでcmd /?
0310デフォルトの名無しさん
2013/07/30(火) NY:AN:NY.AN0311デフォルトの名無しさん
2013/07/30(火) NY:AN:NY.AN0312nanasi
2013/07/30(火) NY:AN:NY.ANID:FIRUYqVd!ディレクトリを作成しようとしていますが次のエラーが出てしまいます。
レンタル中のスタンダードプラン上の
サーバだと正常に動作していたのですが、プレミアムサーバに対して下記コードを
実行するとなぜかエラーが出てしまいます。
IDやパスはあっているのですが何が問題なのでしょうか?
≪ 実行コード ≫
string id = "id123";
string pass = "pass123";
string createDirectory = "ftp://hoge_user.sakura.ne.jp/www/hoge_data/20130730";
WebRequest req = WebRequest.Create(createDirectory);
req.Credentials = new NetworkCredential(id, pass);
req.Method = WebRequestMethods.Ftp.MakeDirectory;
WebResponse res = req.GetResponse(); ← ここでエラー発生
≪ エラー内容 ≫
The remote server returned an error: (530) Not logged in.
0313デフォルトの名無しさん
2013/07/30(火) NY:AN:NY.ANエラー内容に書いてあるじゃん。
ログイン失敗でしょ。
サーバーからのレスポンスを見ないと原因は分からないけど、実はFTPSとか?
0314312
2013/07/30(火) NY:AN:NY.ANそうなんです。ID・PASSがあっているのに
なぜかダメなんですよ。
しかも、さくらのスタンダードプランでは普通に動いていた
プランにも関わらず、プレミアムプランのサーバに向けて
実行すると動かないのでまったく意味不明です。
0315デフォルトの名無しさん
2013/07/30(火) NY:AN:NY.AN普通のFTPクライアントでアクセスした場合との差異を比較
0316デフォルトの名無しさん
2013/07/30(火) NY:AN:NY.ANWebRequest.CreateでFTPだと、FileWebRequestを返すとなってるぞ
FtpWebRequestの例だとそれをFtpWebRequestにキャストしてる
FileWebRequestはCredentialsもMethodも実装されてないことになってる
0317デフォルトの名無しさん
2013/07/30(火) NY:AN:NY.ANそれはただのドキュメントバグだ
0318313
2013/07/30(火) NY:AN:NY.ANWebRequestクラスは頭悪いから業務で使うのはおすすめしない。
とりあえず、コマンドプロンプトから「ftp /d」でログインできるか試してみて。
レスポンスが確認できるから。
0319デフォルトの名無しさん
2013/07/30(火) NY:AN:NY.AN0320デフォルトの名無しさん
2013/07/30(火) NY:AN:NY.AN捜査のプロですか?
0321デフォルトの名無しさん
2013/07/30(火) NY:AN:NY.AN業務で使うのはおすすめしない?
本当か?
0322313
2013/07/30(火) NY:AN:NY.ANエラーメッセージからの推測なんだけど、今回のケースだと、USERかPASSのどっちかを投げた段階でエラーが出てるはずなんだ。
でもWebRequestがレスポンスを解釈しないで次のコマンドを投げてるように見える。
そうすると本当の原因が分からなくなるから>>315が言うようにパケット取りながら再現実験するハメになる。
うまく動いてるときはいいんだけど、トラブったときが大変なんだよ。
その辺のバランスを考えて、WebRequestを使うかSocketで自作するか決めればいいんじゃないかな
0324デフォルトの名無しさん
2013/07/30(火) NY:AN:NY.ANFTPの話か
なるほど
0325312
2013/07/30(火) NY:AN:NY.ANうーんパケキャプしないとダメですか。。。
ちょっと敷居が高いけど頑張ります。
>>319
サクラですね。
サーバ容量増やしても転送量制限は変わらないとか詐欺的な事ばっかりやってるし
>>322
Socket 作ってみます。
0326デフォルトの名無しさん
2013/07/30(火) NY:AN:NY.AN0327デフォルトの名無しさん
2013/07/30(火) NY:AN:NY.ANVS2012ではたしかにFtpWebRequest帰ってきてるな
>>322
わざわざキャプチャせんでもトレースログで十分だろ
>WebRequestがレスポンスを解釈しないで次のコマンドを投げてるように見える
WebRequestがって言うか、正確にはFtpWebRequestが、だな
それがほんとなら、もともとステートフルな通信向けじゃないのかもしれん
なんといっても「WEB」リクエストだしな
0328312
2013/07/30(火) NY:AN:NY.AN無事解決です。
皆さんありがとう。
0329デフォルトの名無しさん
2013/07/30(火) NY:AN:NY.AN・・・・・・・・・・・・・・・・・・・
0330デフォルトの名無しさん
2013/07/31(水) NY:AN:NY.AN0331デフォルトの名無しさん
2013/07/31(水) NY:AN:NY.AN0332デフォルトの名無しさん
2013/07/31(水) NY:AN:NY.AN遠慮なく死ね
0333デフォルトの名無しさん
2013/07/31(水) NY:AN:NY.AN一回り成長したことでよしとしよう
成長してなかったら死ぬべき
0334デフォルトの名無しさん
2013/07/31(水) NY:AN:NY.AN指示できなかった俺らにも落ち度はある
0335デフォルトの名無しさん
2013/07/31(水) NY:AN:NY.AN0336デフォルトの名無しさん
2013/07/31(水) NY:AN:NY.ANご容赦の程、深くお願い申し上げます。
0337デフォルトの名無しさん
2013/07/31(水) NY:AN:NY.AN0338デフォルトの名無しさん
2013/07/31(水) NY:AN:NY.AN0339デフォルトの名無しさん
2013/07/31(水) NY:AN:NY.AN0340デフォルトの名無しさん
2013/08/02(金) NY:AN:NY.AN別の共有設定ファイルを作って、そこへ追い出したいのですが、<AppSettings>の様に
file属性で読み取ることも出来ないので、どうすれば複数の実行ファイルから、共通設定として
読み取ればいいのかわからない状況です。
やりたいのは、複数の実行ファイルで、同じデータベース設定を利用したい。
実行環境により利用するデータベースを切り替えたい。(DbProviderFactories.GetFactoryでプロバイダに依存しないようにしておきたい)
ADO.NETのスレが見当たらなかったので、こちらに質問してみました。
よろしくお願いします。
0341デフォルトの名無しさん
2013/08/04(日) NY:AN:NY.ANhttp://toro.2ch.net/test/read.cgi/db/1234077152/
あるけど、もう1年半放置かw
0342デフォルトの名無しさん
2013/08/04(日) NY:AN:NY.AN監視することはできますか?
0343デフォルトの名無しさん
2013/08/04(日) NY:AN:NY.ANVista以降はデフォではオフだけど
http://eternalwindows.jp/shell/shellex/shellex12.html
内部でやるならシェル拡張としてプロセスに潜り込めばなんとでも
例:QTTabBar
0344デフォルトの名無しさん
2013/08/04(日) NY:AN:NY.AN0345344
2013/08/04(日) NY:AN:NY.AN0346デフォルトの名無しさん
2013/08/04(日) NY:AN:NY.ANxp にはインスト出来た、まぁ仕方ないのでこれで行く!
0347デフォルトの名無しさん
2013/08/04(日) NY:AN:NY.AN0348デフォルトの名無しさん
2013/08/04(日) NY:AN:NY.AN0349デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0350デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0351デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0352デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.ANで学ぼうと思ったがデリゲートでつまづいてるっていう
0353デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0354デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.ANメソッドをオブジェクトとして認識すればええねん
そのオブジェクトの型は戻り値と引数で決まるねん
戻り値と引数が同じメソッドはおんなし仲間やねんで。
オブジェクトやから同じ型の変数に入れたりできまんねん
();つければ実行されるんでおまんがなー
0355デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.ANひとつの変数に+=/-=で複数のデリケートインスタンスを入れたり出したりできるっちゅうことだけや
マルチキャストゆうてな、();で入れた順番に全部実行されるんでおまんがなまんねん
0356デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0357デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0358デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0359デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0360デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN俺がわからないのは
タイピングにまで関西弁を持ち込んでくることだ
標準語を使った方が打つ文字数も少ないし相手にも伝わりやすい
例)
ええねん→いい
決まるねん→決まる
上記の理由で2chに関西弁を持ち込んでくる奴は嫌いだ
0361デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0362デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0363デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.ANせやな→そうですね
文字数増えとるやないか。はい論破してもうたでんがなー
0364デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN関西人はこうやって揚げ足取りばっかするから
ガキ扱いされるんだな
0365デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN相手せずにスルーしろ
0366デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.ANこんな似非関西弁の人使ってそんな非難されても困る
0367デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN自分も自分の好みでアヤ付けてるだけだってのに気付けよ。
意味がわかる文章なら、ちゃんと答えてるヤツが神で、それ以外はクズだ。
0368デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN好みじゃなくて一般常識だってことに気づけよ。
0369デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0370デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.ANでもよく考えると、デリゲートもクラスなんだから、継承の点では
インターフェースもデリゲートもクラスも全部一緒と考えればいい
0371デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0372デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0373デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0374デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0375デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0376デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0377デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.ANクラス>デリゲート>イベント
つまり、デリゲートもイベントも不必要ってこと
0378デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.ANイベントはデリゲート専用の特殊なプロパティ
メンバとその値な
0379デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0380デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN0381デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.ANデリゲート≒イベント
デリゲートとイベントは両者とも糖衣構文
使い方の違いがある。
イベントはイベントを定義したクラスからしか呼び出せないが、デリゲートにその制限はない
要するに、イベントもデリゲートもクラスを基本にした、それ専用に使いやすくしたもの
コールバック自体イベントと言えなくもないから、デリゲートを用いてイベントは実装できる
377はその意味。で、デリゲートの場合、デリゲート>匿名メソッド>ラムダ式というさらに
使いやすくした糖衣構文がある。
デリゲートの特徴はデリゲートはメソッドみたいなものだけど、メソッドと違って変数に代入出来ること。
これは、デリゲートの実態がクラスで出来ているからで、この代入出来ることを利用した
プログラミングが出来ることがデリゲートの特徴となる。
代入出来るということは、色々なデリゲート(メソッド)を置き換えることが出来るわけで、
デリゲートで呼び出されるメソッドの動作を変えられることが特徴
void Method_A(delegate B)
{
処理1
B()
処理3
}
の要に処理1処理2は共通でB()の部分のみ異なる処理の場合に
Method_Aの引数に渡すデリゲート変更すればソースとしての共通化が図れる
0382デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.ANイベントとデリゲートの違いが理解できてないならこの辺読んでみ
http://msdn.microsoft.com/ja-jp/magazine/cc163533.aspx
0383デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.ANイベントは、PC 上で発生したなんらかの事象
デリゲートは、C で言うところの関数ポインタ(違うけど)で、イベントハンドラの管理に使われてる
って認識だった。
「イベントハンドラ」は「イベントが発生した時に呼び出される関数」(ちょっと違うけど)って意味で。
0384デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN何らかの事象を意味するのはもちろんそうだけど、身も蓋もない言い方をすれば
ObserverパターンにおけるaddLister/removeListerのメソッドの組をまとめたのがイベントで
そのメソッドの引数に渡すリスナがデリゲート
プロパティがgetValue/setValueの組なのと同じ
0385デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN通常のクラスの場合、インスタンス化するには、メソッドの実態(ソース)が
必要なんだけど、イベント(デリゲート)もそのような制限はない。
例えば、>>381でMethod_A内の処理においてB()が呼び出されているけど
これの実態はこのソース中にはないのだけど、コンパイル時にはエラーが出ない。
ただし、Method_Aの呼び出し時にはイベントで実行されるメソッドの実態は必要。
イベントの場合、MSがOnClick等たくさんのイベントが定義しているけど、
ユーザが後付で、その実行内容を変えることができる仕掛けが必要。
それを実現するための仕掛けがイベント(デリゲート)。
0386デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.ANpublic int Hoge;
この2つを同じと言うならイベントとデリゲートは同じだ
public event EventHandler Hoge;
このフィールド風のイベント宣言は上の自動プロパティに相当するもので
デリゲートを保持するフィールドとaddアクセサとremoveアクセサが自動生成される
0387デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN>ひょっとして C# には「イベント」に、「 PC 上で発生したなんらかの事象」って以外の意味がある?
通常の意味としては”PC上で発生した”ではなく”アプリ上で発生した”だろうね
その他は意味不明
てか、イベントハンドラはイベントに使用するもの
デリゲートは関数ポインター(コールバック)のような使い方もできるけど、それ以外もある。
0388デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.ANイベントやデリゲートについてはうだうだ言う前に
Observerパターンを学んだ上で>>382を読めば完全に理解できるよ
C#の構文はデリゲートとイベントの扱いを似せてあるのですごくわかりにくい
0389デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN0390デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.ANイベントハンドラはデリゲートを複数保持するためのコレクションってことにすれば
役割がわかり易かったのに、なんでデリゲート自体をコレクションにしちゃったんだろう。
その上、デリゲートの合体とイベントアクセサの呼び出しに同じ演算子を使っているのが
さらに混乱に拍車をかけてる。
0391デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN0392デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.ANそれはコードを書いてるうちに後から付いてくる。
とりあえずイベントを発生させるクラスと、そのイベントを購読するコードを
自分で書いてみる。
そうすればイベントがどんなものか理解できる。
イベントが理解できれば自然とデリゲートも理解できる(たぶん)。
0393デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.ANeventと同じことが出来るが、
困ったことに出来ることが多すぎることに気が付く。
たとえば、イベントハンドラを+=でなく=で代入できたり、
Invokeメソッドが外部から呼び出せたり。
こういうのを制限するための機能がevent
0394デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN0395デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN0396デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN好きして 好きして 好きして
こう言うところに書く前に、自分の用語の認識が一般的なモノであるかの確認はした方がいいと思われ。
それぞれが違う認識だってのがわかった今になってもオレ定義で話すのは混乱の元になるだけだよ。
0397デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN0398デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN{
//メソッド
}
↑最近、上記のように波括弧を新しい行に書く書き方に変えたのですが
どのように打つのが一番効率がいいですか?(IDEはVisualStudio)
今ところ案としては以下の案があります。
�@
クラス名 { } を書く→方向キーで { まで戻る → 改行 → 方向キーで } まで移動
→ 改行、改行 → 方向キーで上に戻る → Tab → メソッドを書く
�A
クラス名、改行 → { 、改行 → 改行 → } → 方向キーで上に戻ってメソッドを書く
お教え願います。
0399デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.ANVSのオートフォーマットに任せる
0400デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.ANここまでどうでもいい質問ってなかなかない
0401デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.ANまじで悩んでるんだよ・・
0402デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN0403デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.ANツール→オプション→テキストエディター→C#→書式設定
ここにオートフォーマットする場合の設定があるだろ
(上のはExpressだけど)
閉じる}で自動で改行してくれるだろ
0404デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN0405デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN0406デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN0407デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN気持ちはよく分かる。
そもそも{をタイプした時点でカーソルの後ろに}を自動で挿入してくれても良さそうな物だが、
C#のIDEはそういうところ気が利かないよね。
0408デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.ANVS2008でC#3.0だと逝けるみたいだけど。
0409デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN仕事ならどのみち拡張メソッドなんて好き勝手に使えるもんじゃないだろうし
趣味ならあえて古いバージョンのVSを使う理由は無いはずだし
一体どういう状況でそんな悩みが出てくるのか理解に苦しむ
0410デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.ANやっぱり、C#2.0はダメなのね…orz
今まで「VS2010のC#4.0」で作ってたんだけど
「VS2005のC#2.0」に変更して欲しいと、客から通達があったらしい。
客がVS2010のライセンスが用意できなかったみたい、詳しい話は知らん。
上が決定しちゃってるから、開発環境のダウングレードしなきゃならんのよ。
だから、C#2.0で拡張メソッドが使えれば、LINQとかラムダの部分を直すだけでよかったんだけど
拡張メソッドが結構あって面倒なんだYO!
個人的には、Expressエディションでいいじゃんって思うんだけど
インストーラー作れないみたいだし、ダメなんだとさ。
0411デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.ANずいぶん昔、アセンブリを勉強していた時なんかそんなのを読んだ気がする
0412デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.AN世の中いろいろだね
0413デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.ANhttp://msdn.microsoft.com/ja-jp/magazine/ee819091.aspx
の真ん中あたり(動作の概要)見ると、C#2.0と3.0の混在は出来そうだけど
もっと、詳しい人に確認した方がいいだろうね
0414デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.ANつか2つの開発環境を混在させることによる作業性低下のコストを容認できるんだったら
そんなことするより全部Express2010で作ってインストーラの作り方を工夫したほうがマシじゃね
まあそういう問題じゃないと思うけど
0415デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.ANもちろん、それぞれ独立したアプリとして作って
プロセス間通信で連携して動く分には問題ない
0416デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.AN客先は何百人でメンテするつもりなんだ
0417デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.AN大きな組織は稟議書とか大変なのよ
極端な例だけど、5000円の出費のために、時給 2000円クラスの奴等が 4〜5 人半日がかりで資料作成とか、あったりする。
0418デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.AN0419デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.AN与えるパラメータだけを変えて
並行に処理したい場合何を使えば実現できますでしょうか?
0420デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.AN0421デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.AN0422デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.ANありがとうございます。やってみます。
0423デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.AN並列処理なんて出来るの?
俺にはそっちの方が疑問
0424デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.AN見た目はね
0425デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.AN0426デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.ANちゃんと動かせるかどうかはわからんけど
0427デフォルトの名無しさん
2013/08/08(木) NY:AN:NY.AN0428デフォルトの名無しさん
2013/08/08(木) NY:AN:NY.AN0429デフォルトの名無しさん
2013/08/08(木) NY:AN:NY.ANcmd.exeだと start の連投
0430デフォルトの名無しさん
2013/08/08(木) NY:AN:NY.ANstart xxx & start yyy
0431デフォルトの名無しさん
2013/08/08(木) NY:AN:NY.AN出来るけど、結果がどうなるかは知らない。
0432デフォルトの名無しさん
2013/08/09(金) NY:AN:NY.ANEclipseだと { を入力して改行すると
自動で } が挿入されるんだね
VSもそうしろよ
0433デフォルトの名無しさん
2013/08/09(金) NY:AN:NY.AN閉じ括弧を別行に書くとクラス名直後に書いた開き括弧も次行へと整形されるから、
クラス名 → { → 改行 → } → CTRL+Enter
ってのが、いつの間にやら染みついてしまった。
0434デフォルトの名無しさん
2013/08/09(金) NY:AN:NY.ANそんな方法あったんだ・・・
神だな
0435デフォルトの名無しさん
2013/08/09(金) NY:AN:NY.ANCtrl+Enterなんてあったのか
0436デフォルトの名無しさん
2013/08/09(金) NY:AN:NY.AN0437デフォルトの名無しさん
2013/08/09(金) NY:AN:NY.ANアセンブリをレジストリに登録して使ってみたのだがメソッドが無くなっていた
まったくCOMは難しいね
0438デフォルトの名無しさん
2013/08/09(金) NY:AN:NY.AN0439デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.ANwhile(/////)
{
foo=配列を返す関数;
処理・・・
}
fooの参照が切れたメモリはすぐGCが解放してくれますか?
0440デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.ANメモリ不足になる前には必ず解放されるけど、一時的にCLRヒープをかなり圧迫するはず
0441デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.AN0442デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.ANそれは.NET4.5で直った
配列のサイズが大きいならyieldを使って実装すればメモリ食わないよ
0443デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.ANありがとうございます
汚い(大きい)データファイルを検索しやすくするために、再整理して保存(キー値付加、その他並び替えいろいろ繰り返し処理が必要)
する処理を書いていたのですがこういう場合は明示的に解放処理を書いたほうがいいのでしょうね
0444デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.AN0445デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.ANToLookupとかOrderByとか組み合わせれば超簡単省メモリだろ
0446デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.AN0447デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.AN0448デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.AN0449デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.ANプロの仕事なんてボタン貼ってSQL書いてプロパティ弄るだけの単純作業だから
0450デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.ANSuccess is stumbling from failure to failure with no loss of enthusiasm. - Winston Churchill(1874 ? 1965)
0451デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.AN仕事でC#書いてる人の結構な割合がVBやJava上がりだから基本文法+αの知識しかないことも多い
0452デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.AN今までは配列を返す関数内でbyte[] a=new byte[/////];
として返していたのですが、これを引数としてこいつに放り込む形にしたいと思います
重ねてありがとうございます
0453デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.AN設定の仕方によって、設定後の色の取得ができたりできなかったりします。
できない場合にどうして色が取得できないのか、分かる方いますか?
■色の取得ができる場合
private void DataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
DataGridView dgv = (DataGridView)sender;
dgv[e.ColumnIndex, e.RowIndex].Style.BackColor = Color.Orange;
}
↑実行後に別メソッドで↓
DataGridViewCell cell = (色を変えたセル)
if (cell.Style.BackColor.Equals(Color.Orange)){...} ★trueになる
■色の取得ができない場合
private void DataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
e.CellStyle.BackColor = Color.Orange;
}
↑実行後に別メソッドで↓
DataGridViewCell cell = (色を変えたセル)
if (cell.Style.BackColor.Equals(Color.Orange)){...} ★falseになる
cell.Style.BackColorをデバッガで見ても、何も設定されてない → "{Name=0, ARGB=(0, 0, 0, 0)}"
でもGUI上は確かに色が変わっている
0454デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.ANe.CellStyleとDataGridViewCell.CellStyleは同一オブジェクトじゃないから
DataGridView.DefaultCellStyleやらいろいろ反映させた上でのスタイルだから
0455デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.ANじゃ、e.CellStyleで変更した値を再取得するにはどうすればいいの?
0456デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.ANこれをHttpWebRequest/Responseを使ってダウンロードするにはどうすればいいですか?
Webシステムの理論は下記とほぼ同じだと思います。
http://msdn.microsoft.com/ja-jp/library/cc719227.aspx
0457デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.AN0458デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.AN2.何でもいいから試しにPOSTをしてみる
3.目的のwebフォームからhtmlソースもしくはそのコントロールを取得する
4.そこからradioboxなどのform情報を読みとる
5.2で試したのでPOST
6.完成
0459デフォルトの名無しさん
2013/08/12(月) NY:AN:NY.ANPOSTについての理解できてなかったようです。
submitのPOSTを返してなかったのでどうしてもデータが帰ってきてなかったようです
0460デフォルトの名無しさん
2013/08/12(月) NY:AN:NY.ANsubmitのPOSTを返すって
どういう意味?????????
0461デフォルトの名無しさん
2013/08/12(月) NY:AN:NY.ANPOSTにsubmit○○=valueを入れてなかったということです
説明下手で申し訳ない
0462デフォルトの名無しさん
2013/08/12(月) NY:AN:NY.AN0463デフォルトの名無しさん
2013/08/12(月) NY:AN:NY.ANできないし普通しない
データと変更した条件は手元にあるんだからわざわざ色を見ずにデータと条件を見ればいい
0464デフォルトの名無しさん
2013/08/12(月) NY:AN:NY.AN0465デフォルトの名無しさん
2013/08/12(月) NY:AN:NY.AN何にキャストしてるのよ
0466デフォルトの名無しさん
2013/08/12(月) NY:AN:NY.AN0467デフォルトの名無しさん
2013/08/13(火) NY:AN:NY.AN0468デフォルトの名無しさん
2013/08/13(火) NY:AN:NY.AN他人の物を利用して、身を削ったり努力すること無しに自分の利をはかる作戦
渾作戦
ビアク島の 戦いを支援するための作戦で、3次にわたり行われたが、
アメリカ軍のマリアナ諸島襲来 により中止された。
マリアナ沖海戦の前哨戦となる作戦であったものの、
準備していたガソリン、重油など貴重な資源を消費してしまう。
日本軍側の優柔不断とも言える作戦指導から、何も得るところ無く終わった。
0469デフォルトの名無しさん
2013/08/14(水) NY:AN:NY.AN他のToolStrip系パーツと共通でぶち込むためだろ
0470デフォルトの名無しさん
2013/08/14(水) NY:AN:NY.ANアセンブリを読み込んで使いたいのだけど
どこにdllを配置すればいいでしょうか?
物理パスのルート直下ではダメでした
0471デフォルトの名無しさん
2013/08/14(水) NY:AN:NY.ANここじゃなくてIIS関連スレで聞いたほうがいいと思う
0472デフォルトの名無しさん
2013/08/15(木) NY:AN:NY.AN0473デフォルトの名無しさん
2013/08/16(金) NY:AN:NY.ANhttp://toro.2ch.net/test/read.cgi/tech/1369350072/
上記のスレで質問したところ、.NETのスレで聞いてみてはどうかと提案を受けました。
該当しそうなスレッドが見つからなかったため、こちらに質問させていただきます。
以下、上記スレに書いた内容の転載です。
今度、Visual C#でWindowsアプリの開発を行うことになりました。
当方C, C++, Visual C++(MFC)はある適度経験がありますが、C#や.netは全く未経験なので、本を買おうと思っています。
文法の本はどれを買うか決めたのですが、GUIプログラミングの本を決めかねています(近くに大きな本屋が無く、内容を
見ることができないのです)。
下記のような条件を満たす本がほしいのですが、お勧めはないでしょうか?
・GUI(.Net Framework)を使ったアプリ開発を扱う
・入門/初心者段階の人が読んで役に立つ(別に入門的内容オンリーでなくてもOK)
・各コントロール(と呼ぶのか?)などの基本的な使い方を、ある程度網羅的・リファレンス的・系統的に分類して、豊富な
サンプルを用いて見やすくまとめてある
・ステップbyステップで大きなアプリを完成させていくのではなく、各項目の説明のための最小限の小さなアプリを都度作る
ようなスタイル
・できれば翻訳書ではない
Visual C++でいうと、林晴比古氏の明快入門Visual C++シリーズのような、ぱらぱらとめくってどこに何が書いてあるのかが
わかるような本が理想的。ペゾルド本のようなじっくり読んでいくタイプの本はNGです。
よろしくお願いします。
0474デフォルトの名無しさん
2013/08/16(金) NY:AN:NY.ANVC++の学習時と同じつもりで身構えてるんだろうけど、VC#は分かりやすいしMSDNも丁寧なので
適当に触って細かいことは都度MSDNに当たればいける
0475デフォルトの名無しさん
2013/08/16(金) NY:AN:NY.ANコントロールごとにチュートリアルを用意してくれてたり
日本語訳も昔と比べればずっと改善されてるし
ヘタな参考書よりよっぽど丁寧
0476デフォルトの名無しさん
2013/08/16(金) NY:AN:NY.AN0477デフォルトの名無しさん
2013/08/16(金) NY:AN:NY.AN0478473
2013/08/16(金) NY:AN:NY.ANとはいえ、なんとなく本の体裁のものも欲しいので・・・。
>逆引き系を本屋で適当に選べばいいよ
逆引き本を買ってみようかとも思ったのですが、逆引き本だと断片的な内容になりがち(それこそネットで
調べられそうな事柄が多い)ため、ある程度体系的にまとまっているいい本はないかな、と思ったのです。
まあ、あまり悩んでいても仕方ないので、とりあえず適当に買ってみます。
ありがとうございました。
0479デフォルトの名無しさん
2013/08/16(金) NY:AN:NY.ANhttp://jk.nicovideo.jp/api/v2_app/getchannels
channel
radio_channel
bs_channel
の
0480デフォルトの名無しさん
2013/08/16(金) NY:AN:NY.AN0481デフォルトの名無しさん
2013/08/16(金) NY:AN:NY.AN0482デフォルトの名無しさん
2013/08/16(金) NY:AN:NY.ANやりたい事と C# でググれば
dobon が出てきて助けてくれる
本当助かるぜあそこは
0483デフォルトの名無しさん
2013/08/17(土) NY:AN:NY.AN0484デフォルトの名無しさん
2013/08/17(土) NY:AN:NY.ANTextBox1+TextBox2をlabe1.textに表示させるさい
TextBox1の数字をxに置き変える方法がわかりません
助けてください><
0485デフォルトの名無しさん
2013/08/17(土) NY:AN:NY.AN短時間で理解できるよう教える方法を教えてくださいorz
0486デフォルトの名無しさん
2013/08/17(土) NY:AN:NY.AN使い方全く違うじゃん
何が分からんのだ
0487デフォルトの名無しさん
2013/08/17(土) NY:AN:NY.AN気持ちの持ちようだよ
0488デフォルトの名無しさん
2013/08/17(土) NY:AN:NY.ANLINQでどう書けるかやってみただけだ
多分見ない方がいい
label1.Text = string.Join("", (textBox1.Text + textBox2.Text)
.Select(v => v >= '0' && v <= '9' ? 'X' : v));
Betweenが欲しいぜ
0489デフォルトの名無しさん
2013/08/17(土) NY:AN:NY.ANメソッドって必ずクラスに属しているものと思ってた
0490デフォルトの名無しさん
2013/08/17(土) NY:AN:NY.AN呼び出せるメソッドのこと
0491デフォルトの名無しさん
2013/08/17(土) NY:AN:NY.AN0492488
2013/08/17(土) NY:AN:NY.AN0493デフォルトの名無しさん
2013/08/17(土) NY:AN:NY.ANC#あたりの教科書だと、静的メソッドとか静的なになにとかしか記憶にない
計算機科学では一般的な言葉なんだ
>>482
性的だけに気持ちいいw
0494デフォルトの名無しさん
2013/08/17(土) NY:AN:NY.ANJavaは「スタティックメソッド」
C++から入った人は「スタティック関数」と言うかもしれない
0495デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN静的メンバ関数でしょ
0496デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANってprivateみたいな使い方もあるんだっけ?そんな使い方したことないや
0497デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0498デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANpublicな非staticからprivate staticを呼び出せたり出来る
0499デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANttp://bituse.info/c/27
これでprivateとして使うんだと
0500デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANクラスフィールドと普通のフィールドの違いを理解した方がいいと思うわ
0501デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANこいつあほすぎだろwww
0502デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANそうか、俺はあほだったんだ
てか、「あほっちゅうやつがあほやねん」って日本のことわざしらんのか?
あほ〜w
0503デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0504デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN「普通のメソッド」ってなんなんだよと思うのは当然だわ。
0505デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN文書から推測できないのかお前は
アスペ乙wwwwwwwwwwwwwwwwwwwwwwwwwww
0506デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0507デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN無知のくせに他人に要求だけする
0508デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN{
public static void StaticMethod(){}
public void InstanceMethod(){}
}
------------------
C.StaticMethod();
C c = new C();
c.InstanceMethod();
0509デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANnamespace hoge
{
void hoge2(){} //普通のメソッド=使えない。 error CS0116: 名前空間にフィールドやメソッドのようなメンバーを直接含めることはできません。
class C
{
public static void StaticMethod(){} //普通じゃないメソッド=使える
public void InstanceMethod(){} //普通じゃないメソッド=使える
}
}
0510デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0511デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANクソコード乙
0512デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0513デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0514デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANダメ
何をアプリケーションとするかなんて相対的なもので、まったく意味のない分類
グルーピングがしたければHogeアプリならHogeExceptionを継承するのが合理的
0515デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANじゃあ、.NET Framework標準のライブラリ群はクズということになるな。
標準のライブラリ群は絶対に使うなよ!
0516デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0517デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANふつうに考えて推測を要する時点でダメだと思うが
0518デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0519デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0520デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0521デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN煽りとかじゃなく真面目な話し、少しは自分がアスペって自覚しといた方がいいぞ
0522デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANコテ付けて
0523デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANいちいちからむなクズ
0524デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0525デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN悪口は自身の価値観の裏返し。
0526デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0527デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0528デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0529デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0530デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0531デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0532デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANこいつ日頃から文章書いてないし読んでないんだろうなと思う。
0533デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANいやいやw知らないんじゃないよwww
印象を柔らかくする為に省いてるんだよwww
50超えたら知らない人も居るかもだけどね
0534デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN文中と文末で押すキーをわざわざ変えるのか…
0535デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0536デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0537デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANおい、職業病やめろ
0538デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANいや、ほんとうに価値観を反映した良い見本でいらっしゃいますね。
0539デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0540デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0541デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANこんなのと一緒にしないで
0542デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANおい、職業病やめろ
0543デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0544デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0545デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANi〜j番目をn〜m番目と入れ替える方法はある?
0546デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN0547デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN値型でもいくらでもやりようはある
0548デフォルトの名無しさん
2013/08/19(月) NY:AN:NY.AN0549デフォルトの名無しさん
2013/08/19(月) NY:AN:NY.AN0550デフォルトの名無しさん
2013/08/19(月) NY:AN:NY.AN0551デフォルトの名無しさん
2013/08/19(月) NY:AN:NY.AN0552デフォルトの名無しさん
2013/08/19(月) NY:AN:NY.AN0553デフォルトの名無しさん
2013/08/19(月) NY:AN:NY.AN0554デフォルトの名無しさん
2013/08/20(火) NY:AN:NY.AN0555デフォルトの名無しさん
2013/08/20(火) NY:AN:NY.AN0556デフォルトの名無しさん
2013/08/20(火) NY:AN:NY.AN52秒くらいかかるんだけど?
どうすればいい?
0557デフォルトの名無しさん
2013/08/20(火) NY:AN:NY.AN0558デフォルトの名無しさん
2013/08/20(火) NY:AN:NY.ANメニューアイテムが何千個とかになる可能性があるなら仮想リストビューのような機構を考慮してみてはいかがか。
実際に追加するのを256個程度にとどめて、スクロールやキー押下時にアイテムを削除/追加する。
まあ1000個の時点でUIとしては破綻してるけどね……
0559デフォルトの名無しさん
2013/08/20(火) NY:AN:NY.ANIEのお気に入りなんかは>>557の方法。何万個お気に入りが記録されてても動作は普通
0560デフォルトの名無しさん
2013/08/20(火) NY:AN:NY.AN0561デフォルトの名無しさん
2013/08/20(火) NY:AN:NY.ANこれどっからきたんだ???
0562デフォルトの名無しさん
2013/08/20(火) NY:AN:NY.AN0563デフォルトの名無しさん
2013/08/20(火) NY:AN:NY.AN0564デフォルトの名無しさん
2013/08/20(火) NY:AN:NY.ANXMLとかに出来ればありがたいんだが
0565デフォルトの名無しさん
2013/08/20(火) NY:AN:NY.ANリフレクション使えば自分でも簡単にやれるけど
0566デフォルトの名無しさん
2013/08/22(木) NY:AN:NY.AN不可逆のほうがいいと思うのでMD5で保存しようと思うんですけど
それをJavaとC#で認証したいんですけど、これって普通ですか?
0567デフォルトの名無しさん
2013/08/22(木) NY:AN:NY.ANうん
> 不可逆のほうがいいと思うのでMD5で保存しようと思うんですけど
今時MD5?とは思うけどまあうん
> それをJavaとC#で認証したいんですけど、これって普通ですか?
どこで何を認証するのか分からないと何とも
0568デフォルトの名無しさん
2013/08/22(木) NY:AN:NY.AN画面で入力されたパスワードをMD5でハッシュ値を取得して
DBから取得した値と比較というのをJavaとC#でしたいんですが
どちらもMD5のハッシュ値なら同じ値になりますか?
0569デフォルトの名無しさん
2013/08/22(木) NY:AN:NY.AN0570デフォルトの名無しさん
2013/08/22(木) NY:AN:NY.ANありがとうございます。ではこれで行きます。
0571デフォルトの名無しさん
2013/08/22(木) NY:AN:NY.ANstring str="00010";
str=(int.Parse(str)).ToString();
ってやってるんですが
本当はどうやったらいいんですか?
0572デフォルトの名無しさん
2013/08/22(木) NY:AN:NY.AN文字列を代入した変数でした
0573デフォルトの名無しさん
2013/08/22(木) NY:AN:NY.AN方法は色々あって唯一の解ってのは特にない
0574デフォルトの名無しさん
2013/08/22(木) NY:AN:NY.AN0575573
2013/08/22(木) NY:AN:NY.AN0576デフォルトの名無しさん
2013/08/22(木) NY:AN:NY.ANありがとうございます!
これで型変換せずに済みそうです
0577デフォルトの名無しさん
2013/08/23(金) NY:AN:NY.ANウィンドウの左上のアイコンを右クリックしたときに出るやつです。
あれを自分で表示することってできないでしょうか?
systemmenu.show();
みたいな感じで。
0578デフォルトの名無しさん
2013/08/23(金) NY:AN:NY.ANC# "システムメニューを表示する”
0579デフォルトの名無しさん
2013/08/23(金) NY:AN:NY.AN0580デフォルトの名無しさん
2013/08/23(金) NY:AN:NY.AN0581デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN一般的にはどちらを使えばいいものでしょうか?あるいはこういう時はこっちがいいという考え方はありますか?
今は�@で実装してますが、見づらく再利用もしづらい気がしてきたので�Aに直すか迷っています
(実際は下記例と異なり、10個以上の引数を与えているので・・・)
�@案
//クラスAでクラスBを宣言してコントロールを引数にする
B = new B(button1, textBox1);
//クラスBでラムダ式でメソッドを実装
public B(Button button1,TextBox textBox1)
{
button1.Click += (sender, e) => button1_Click(textBox1);
}
//クラスBで同名のメソッドに処理を記載
void button1_Click(TextBox textBox1)
{
//処理
}
�A案
//クラスAでクラスBを宣言してコントロールをナンバー変数にする
B = new B();
B.button1=button1;B.textBox1=textBox1;
//クラスAでbutton1のクリックイベントを実装し、Bのメソッドを呼ぶ
private void button1_Click(object sender, EventArgs e){ B.button1_Click(); }
//クラスBに同名のメソッドに処理を記載
void button1_Click()
{
//処理
}
0582デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANクラスBのコントローラをクラスAのイベントに紐つける
0583デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0584デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN結局publicにするしかない
0585デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0586デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANクラス設計が悪いからそうなってる
GUIは最も設計が難しい問題の一つだから、
安易にプログラムを組んでるとすぐにグチャグチャな実装になるよ
つまり適当なGUI設計の解説文書に目を通しながらクラス設計を見直せということだ
0587デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0588デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANModel View Controller
http://ja.wikipedia.org/wiki/Model_View_Controller
> 特に構造が複雑となりがちなグラフィカルユーザインターフェース (GUI) をもつソフトウェアにおける有用性から他方面へ広がった。
0589デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANWikipediaをソースにすんな
クラス設計が複雑なケースはGUI関係なしに問題が起きやすい
0590デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN回りくどくもないし、変な設計でもない
ただしB.button1_Click();って名前が悪い。関数名の付け方をもう少し考えた方がいいと思う
0591デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0592デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0593デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0594デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0595デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANステートがねえ方がいいに決まってる
0596デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN初心者スレで、質問者も見るからに初心者じゃねーかよ
それに対してテストとか解説文書とか言ってるやつは池沼自覚しとけよw
0597デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0598デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANおれ「GUIはクラス設計が複雑になりがちな領域だよ」
↓
きみ「GUI関係ないだろ!」
↓
おれ「えっ」
↓
きみ「クラス設計が複雑ならGUI関係なく問題が起きやすいだろ!」
↓
おれ「???」
0599デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0600デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0601デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANそれができない事情があるなら、必要なインターフェイスを Class A 側で定義して、
それを実装した Class B のメソッドを Class A のイベントハンドラ内から呼び出す。
0602デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANボタンのイベントを記述しているだけのクラス
0603デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0604デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN人生終わってるアスペは静かにしとけ
0605デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANGUIのクラス設計をデザインパターンに頼らず独学でこなせる奴がいたら天才だわ
0606デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANhttp://ideone.com/h2oYGz
0607デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN分かったから静かにしとけ
心の電話にでも喋ってろチンカス
0608デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANそんで肝心の中身はゼロ
0609デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANこのコードの断片に何の意味があるんだ?
型安全も確認せずダウンキャストしてるからバグがあったらプログラムごと停止
こんなコードを製品に採用したらその会社は終わりですな
0610デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN初心者はとくに動けばいんだよ。実装の無駄さ、複雑さなんて気にするな
0611デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN失笑するしかない
ダウンキャストは無条件で危険って耳元で囁かれ続けて育ったんでしょうね
0612デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN>>581こんな短いコードの一部だけ見せられてクラス設計について具体的に指南する奴がいるとしたら
そいつは超能力者か大馬鹿者のどちらかだ
クラス設計について具体的に指摘するのなら全体の情報が必要になるのは当たり前
A, Bなんて局所的なクラスだけじゃ何とも言えねーよ
0613デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0614デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANぜひ語れや
酒の摘みに位してやるよ
0615デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN実際>>606のコードは動かないぜ?
ダウンキャストを安易に使う奴はこんな短いコードにすらバグを混入させる初心者だと白状してしまいましたな
正解は
((Button)sender).Text = "hogehoge";
0616デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANだんだんわかってくるよ
0617581
2013/08/25(日) NY:AN:NY.AN0618デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0619デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANでもこういうのを解決する上手い方法ないのも確か
0620デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0621デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANDebug.Assert( sender is Button );
とかしとけば
0622デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANその手のチェックはコンパイラがやってほしい
0623デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0624デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN何型なら良かったん?
0625デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0626デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANSystem.EventHandler()のオーバーロードがすごいことになりそうだ。
0627デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0628デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0629デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANCLRは言語レベルでイベントがあるからObjectが渡されるだけの話
0630デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0631デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANキャストすらせずにコンパイル時に解決する方法がないかなという話
0632デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANなんのためのデリゲートだよ
関数ポインタじゃねえんだからさ
0633デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0634デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANそんなことを疑ってたら怖くて一行もコード書けないわ
参照型変数にはnullが入ってるかもしれないから参照型は使ってはいけない
予期せぬ例外が出るかもしれないから外部のメソッドを呼んではいけない
とか言ってんのと一緒
0635デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANと書かずに
sender.ev += (s, e) sender.f();
と書けばいいだけの話
これが安全じゃないならsenderのクラス設計がおかしいから修正させろ
0636デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANダウンキャストよりよっぽど糞コードだと思う
0637デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANeがnullでないことやeが持ってるプロパティの値が正しいことをチェックするのか?
しないと片手落ちだ
0638デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANクロージャではなくメソッドとVSの話になるが
メソッドをイベント登録するとメソッドの呼び出し階層の表示で追えなくなるのが辛いと常々思う
0639デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANやるべきだと言ってるんじゃなくてだな、
せっかく型チェック機構があるんだから
使わないで解決するスマートな方法ないかなと言ってるだけだ
0640デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0641デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN自作イベントなら必ずチェックするな
0642デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.ANobject senderやeventargs eに期待しちゃ駄目よ
0643デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0644デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0645デフォルトの名無しさん
2013/08/26(月) NY:AN:NY.AN色々とレスありがとうございました
>>582はクラスBでイベントを作っておいて、クラスAのボタンコントロールを押した際にクラスBのイベントに飛ばせということですね
�Aのように考えたのはクラスBの処理はメソッド単位の方が再利用しやすいのかな?と思ったからです
コントロールがボタンに限らない(例えばメニュークリックからも同様の処理をさせたい)場合は�Aの方がいいですよね?
そこもイベントはBで記載して共通のメソッドに飛ばせば>>582でいいのかな
>>582がよい、>>590でいいというレスを頂けましたので、どちらかで書き直します
やっぱり�@は見にくいだけでメリットないですよね・・・
0646デフォルトの名無しさん
2013/08/26(月) NY:AN:NY.AN昨日は規制中だったから書けなかったけど、あなたの案、本当はどっちも論外なぐらい変だよ。
View(Form)がModel(データやメソッドを持つクラス)の参照を握るのは良いけど、
ModelがView(そのの中のGUI部品を含む)の参照を握るなんて最悪のダメ設計。
0647デフォルトの名無しさん
2013/08/26(月) NY:AN:NY.ANUIイベントをハンドリングするんだからコントローラかビューロジックと考えるのが普通だろう。
実際>>581がどう考えているのかは知らんが。
0648デフォルトの名無しさん
2013/08/26(月) NY:AN:NY.ANっていうか、Windows Formでそんな設計する人っているの?
そんな人はほとんどいないと思うけど、でもモデルだけはきっちり分けなきゃダメ。
0649デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.AN専ブラ開発についてどこで聞けばいいのかわからないのでまたここで質問させてもらいます
書き込んだレスを認識する方法ってなんでしょうか?
書き込んだレスの内容と、差分取得したレスの内容を評価して「たぶんこれっ」て決めるのはおかしいですし...
書き込んだ時間と取得したレスの時間を評価をしようにもPCのローカル時間と比較しても仕方ありません...
0650デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.ANソフトはおいといて、おまえは普段どうやって判断してる?レス内容、時間、ID見てたぶんこれ!ってやってるだろ?
ソフトもそれでやればいんだよ
>>649だっておまえの書き込みは投稿失敗してて、実は俺が書き込んだのかもしれないんだぞ。おかしくていんだよ
0651デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.ANそんなもんでいいんでしょーかねー
むむむ
0652デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.ANゲームなんだけど描画ってどうやればいいの?
0653デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.AN0654デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.AN0655デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.AN0656デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.AN0657デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.AN0658デフォルトの名無しさん
2013/08/28(水) NY:AN:NY.ANそれSyztem.Drawingより遅い
0659デフォルトの名無しさん
2013/08/28(水) NY:AN:NY.ANほんとに?自分で確認した?誰かの受け売り?
0660デフォルトの名無しさん
2013/08/28(水) NY:AN:NY.ANが勝手にRightになって戻らないんだけど?
0661デフォルトの名無しさん
2013/08/28(水) NY:AN:NY.ANタッチパネル使ってるだろ?
デフォルトの右利き設定だと、右手でメニューが隠れないように、左に出すようになるらしい。
マウスがメインなら、コンパネで左利きに設定しておけばいい。
0662デフォルトの名無しさん
2013/08/28(水) NY:AN:NY.AN0663デフォルトの名無しさん
2013/08/28(水) NY:AN:NY.ANMSの社員の発言が元だが自分でも試したことあるぞ
マジでゲロ遅い
WPFの典型的な間違った使い方だ
0664デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.AN1..Net2.0で作っておけばWindows XP以降のどのバージョンのOSでもWindows Updateから.Net入れなくても動くと考えていいでしょうか?理由も添えてください
2..Net4.0と.Net4.5は共存できないのでなるべくこれらのバージョンで開発はしないほうがいいと思うのですがこの考えは正しいですか?間違っている場合は理由も添えてください。
0665デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.AN0666デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.AN2.シラネ
0667デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.ANA君のOSには4.0が入ってる
B君のOSには4.5が入ってる
Z君のプログラムを動かせるのはA君のみです
MSは4.0と4.5を共存できるようにするべきだった
3.0と3.5は共存できるのに4.xだけ共存できないなんてマジでキチガイ
0668デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.AN0669デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.AN0670デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.ANただ一部コンポーネントが共有されてるから、その部分で互換性に問題生じてヤバイ可能性があるだけ、
普通は気にしなくていいと思ってる
0671デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.ANマイグレの仕事が増えておまんま食いっぱぐれないからね
0672デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.ANVS2012のC++/CLIは、C#と同じ様にプロパティを変えるだけの仕様になった?
0673デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.AN0674デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.AN*.exe.configに下記の指定をする。
<configuration>
<startup>
<supportedRuntime version="v2.0.50727" sku="client"/>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0,Profile=Client"/>
</startup>
</configuration>
4.5で作ったexeは*.exe.configがなければ4.0でも動こうとする。
増えた命令やライブラリを使ってなければ4.0でも動作する。
この辺は2.0-3.5の関係に近い。
4.5以降に限定したいなら、以下の指定を忘れずに。
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/>
</startup>
</configuration>
0675デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.AN奴らconfig読みませんよ
0676デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.AN0677デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.ANクラスライブラリのアセンブリ(DLL)の場合読み込むexeやCLRホストに依存するから問題なし。
ただGACに登録するCAS使ってるようなのは、透過セキュリティの4.x系で問題でるかな。
comというのはregasmで登録するようなのを言ってます?
0678デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.ANはい
0679デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.ANexcel.exe.configってやるだけ
0680デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.ANしかし、ハードウェアが少し特殊なのですが資料がなく困っています。
C#でシリアルポートと通信する方法は親切にもいくつも転がっているのでなんとかなりそうですが、
見ると文字列かバイト配列でデータを送信するとのこと。
とりあえず、テスト環境としてUSB-シリアルのケーブル2本とリバースの
シリアルケーブルを買って自分自身で送受信する環境を作りました。
C++のソースがあるのですが、C++がほとんどわからないので
大変なのですが、なんとか読んでみてポイントとなる部分を探しました。
で、そのC++のソースが以下の通りです。
int func(char CmdNo, char *Para, int Len){
int i;
char *p = sbuf;
//先頭3バイトは、データ長,0x01,コマンドコードをセットする
sbuf[0] = ( Len == 0 ? strlen( Para ) + 3 : Len + 3 );
sbuf[1] = 0x01;
sbuf[2] = CmdNo;
たぶん、上のコードのsbufはcharの配列を表していると思うのですが、
シリアルポートに送るにはbyteに変換しないとのこと。
これをC#で書こうと思い、これをbyte配列にしたいのですが、
仮にデータ長が3バイト、CmdNoが
const char num = 0x10;
だとすると、
byte[] buf = {0x03, 0x01, 0x10};
と書いたのですが、これを送ると受け手側はHEX表示で「c0」と表示されます。
何かが間違っているのでしょうが、上のコードをbyte配列で表す方法を教えてください。
0681デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.AN・「バイト」や「整数」の型サイズのことをきちんと把握する(serialは関係なし。メモリ内容などを見てチェック)
・文字をきちんと送信できるようにする
・文字をきちんと受信できるようにする
・任意のバイナリを送信できるようにする
・任意のバイナリを受信できるようにする
最低これを最初にやれ
送受信のテストは最初はテラタームなんかのソフトを相手にやれ
0682デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.ANチェックボックスとか画像が右側になるんだけど
どうすれば戻る?
0683680
2013/08/29(木) NY:AN:NY.AN時間がなく焦ってて勉強もそこそこに書き込んでしまいました。
「USB変換ケーブルを2本自分自身に挿す」というのを先週あたりに
思いついていればこんなことには・・・。
で、言われたとおりもう一度最初からテストしてみました。
Teratermで受信したデータをバイナリ表示するやり方がわからなかったので、
別のツールを探してきて、2つのcomに接続し通信しました。
もちろん、その状態でなら任意の文字列・バイナリは送れました。
自分のプログラムでも試すとうまくいかないのですが、
設定が間違っていたことに気がついて、文字列、バイナリそれぞれが送れる
ようになりました。
あとは上のプログラムの解釈が合っていればなんとかなりそうです。
もう少しがんばってみます。
0684デフォルトの名無しさん
2013/08/29(木) NY:AN:NY.ANc0=11000000
03=00000011
RS232Cってビットのエンディアン既定されてたっけ?
まあ、相手方と自分のエンディアン確認してみたら
0685デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANそれはさすがに決まってますw
っていうか、そのレベルの話は解決したって質問者言ってるじゃん
0686デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0687デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0688デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANシリアル転送なんだからエンディアンというかビットオーダーの概念はあるよ。
あんたシリアル転送がどういうものか知らないだろw
0689デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN普通にAPI叩いて通信するならそっちが勝手にやってくれるからビットオーダーは意識する必要なし。
int数値みたいに複数バイト単位のデータを送るならエンディアンは意識しないとダメだけど、
1BYTE単位で通信するならエンディアンは意識する必要なし
>>680の場合だと、ビットオーダーもエンディアンも意識する必要なし
0690デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANこれはハードウェアレベルで実装されていることだからポート叩いて云々って話もナンセンス。
0691デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANシリアル通信とは書いてあっても、232Cだとは書いてないし、相手が特殊なハードだと書いてあるからなぁ
それ以外で>>680のようにc0表示になる理由が思い浮かばんが
0692デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN>ポート叩いて自分で信号作り出す
そのハードウエアレベルのことをソフトでやるって意味だろjk
例えばワンチップCPUでよく使われてる手法
0693デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0694デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANそんなのWindowsでは無理。
マイコンでも今時そんなことやる奴はいないよ。
0695デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN相手は特殊なハードって書いてあるわけですが
0696デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0697デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANありえない(と思う)の域を出ないだろ
0698デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0699デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN今時やる人がいないなら誰のために売ってるのやら
0700デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANFPGAライターで今も使われてるぞw
0701デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANネスペもってますが、何か。
0702デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANGPIOって意味分かって言ってる?
0703デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0704デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANネスペって信号は扱わないでしょ
0705デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0706デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0707デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0708デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN扱わないわけねーだろ。一層もがっつり。
0709デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN無理矢理考えたとしてもドライバレベルで232Cをエミュレートしていないと成立しないわ
0710デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN>>684の発言は、以下のように訂正させていただきます
c0=11000000
03=00000011
RS232Cってビットオーダー規定されてたっけ?
相手方と自分(232C)のビットオーダー確認してみたら
0711デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANBYTE2 0x01固定
BYTE3 コマンド種
BYTE4〜通信長 データ
全部文字列じゃなくて、↑みたいな形式を特殊って言ってるとエスパーしてみた
0712デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN昔は知らないが少なくとも今の試験じゃほぼ出ないよ
0713デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANそれ、どの"特殊"に対するレスですか?
あいにくこちらはエスパーじゃないので
0714デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN必要があった時に声掛けるから
0715デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN232Cが軽く纏まっているから読んでみるといいよ
http://www.contec.co.jp/product/device/serial/basic.html
ビットオーダーなんて設定ないからw
0716デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANデバイスドライバ持ってくるか、作ればwinでもできる。
今でもwin上から直接ポート叩いてチップにコマンド送りつけることもある。
"WDK7600\general\portio\gpdread\Gpdread.c"なんかがそれ。簡単にできるよ。
マイコン=Arudino、PIC、PSoC系なら今でも一般的だよ。
0717デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0718デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN>232CはLSB firstって規格で決まってます
どっかそれを明示してあるHPとかないか?
今まで意識したことも無いから決まってるんだろうが、いざ探すとなかなか見つからん
>>715
そこにあるのが232Cの全てだとは思えんが
設定が無いって事は規格が決まってて変えられない事だとして
それが相手方とあってるかどうかが問題なんだが
自分が232Cの規定どおりだとしても、相手もそうである保証なんてないんだよ
だからまず>>680はそれを確認する必要があるんだがな
0719デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN業界標準のシリアル通信チップのスペックシートだ
http://www.ti.com/lit/ds/symlink/pc16550d.pdf
パソコンに繋げる以上コレに出来ない仕様は盛り込めないから穴が空くまで鑑賞してくれ
0720デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANhttp://www.arcelect.com/rs232.htm
http://en.wikibooks.org/wiki/Serial_Programming:RS-232_Connections
0721デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0722デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN特殊なハードのことなんて忘れないと
0723デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN今はRS232の話をしてんの!
0724デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0725デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0726デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0727デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANあほくさ。
0728デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0729デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANすまん、英語版のwikipedia見ると規格ではビットオーダーは決められてないと書いてあるねw
俺はマイコン関係も扱ってるんで手持ちのデータシートを見てみると、
確かにビットオーダーが設定できるものもある。
ただ、MSBから送信するデバイスは見たことないね。
規格で決まってなくてもLSBから送るのが事実上の標準だと思う。
>>716
無理だって。
1200bpsだって±3%以内の誤差で1/1200秒ごとにポート出力を変調する必要がある。
0730デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN頭の致命的な部分が短絡してるのか?
0731デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0732デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANついでに、マイコンでもソフトでUARTなんて普通はやらない。
理由は>>729に書いた通りタイミングがシビアだから。
ちょっと前はI2CやSPIじゃななくて「俺様シリアル転送」でデータをやり取りする必用がある
ICが結構あって、そういうのはもちろんソフトで実装するが、それがソフトで可能なのは
その手のシリアル通信はクロック付き(UARTじゃない)だから。
0733デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANだから使ってみろって。今でも使ってるから。
自分で実装するんじゃなくて、ソフトシリアルのライブラリ使う形になるけど一般的。
0734デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN馬鹿だろお前。
じゃあ具体的な型番とか製品名とか言ってみろ。
ソフト××(ハードウェアのシミュレート)っていうのは、コストの関係で
資源が限られたマイコンを使って製品を作る場合か、そうでなければ後はホビーストが
腕試しで遊びでやるぐらい。
ライブラリてw
そんなの買うぐらいなら普通にUARTがたくさん内蔵されたマイコン(そんなの今時
いくらでもある)使うよ。
何度も言ってるようにそうでなくても制約が大きいのに。
知ったようなこと言うなよ
0735デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0736デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANばーかばーか
0737デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0738デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0739デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANFIFOがついていたらその時点でソフトじゃないんだがカス
0740デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0741デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANねーよバカ
0742デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANへっ?
0743デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0744デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN異世界から書いてんだろ
0745デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANhttp://www.musashinodenpa.com/arduino/ref/index.php?f=1&pos=92
0746デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANArduionoは標準ライブラリ #include "SoftwareSerial.h"
PSoCは標準ライブラリTX8など
何に製品に使われてるかなんて知るかよ。完全にアスペじゃねーかwww
0747デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANこれは悪い夢です!
0748デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANだから、それはソフトであってソフトじゃないんだよ。
TeraTermのマクロで出力してるからソフト制御といっているのと同レベル。
0749デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN騙された
訴えたら勝てる?
0750デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0751デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANタイミングなんてちょっとくらい適当でも問題ない。
ソフト制御だなんて笑わせるなよw
0752デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0753デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANレベル的に、仕事じゃないよな?
0754デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANさっき事実上の標準とか苦しい言い訳をしゃxべった人に言われてもね〜ww
0755デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN完全論破されたからって見苦しいぞクズ野郎
0756デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANお前らのせいでMakerFesから多様性が失われて腐っただろうが
0757デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN事実上の標準だと思うんですぅ〜
0758デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANそれは.NETで言ったらSerialPortクラスみたいなもの。
ハードウェアを隠蔽して使いやすくしてるだけ。
当たり前だがシリアル転送そのものをソフトで制御してるんじゃありませんよ。
何度も言うように、今時そんなことをする意味なんかまったくない。
0759デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0760デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANお前半年くらい前にVIPで同じこと言ってなかったか?
0761デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN調歩同期がどういうものかも
0762デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0763デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANハードウエアを使うのはこれとは別にあるんだよ。シリアル転送そのものを制御してる
ttp://pastebin.com/rKhasPHu
0764デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANシリアル転送のハードを制御してる
の間違いだな
0765デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANその通り
0766デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN例えばReadだったら↓みたいに、1ビットずつポート呼んでBYTEにしてるんだよ。だからハードのUART扱うのは別にあるって・・・
// confirm that this is a real start bit, not line noise
if (digitalRead(_receivePin) == LOW) {
// frame start indicated by a falling edge and low start bit
// jump to the middle of the low start bit
delayMicroseconds(bitDelay / 2 - clockCyclesToMicroseconds(50));
// offset of the bit in the byte: from 0 (LSB) to 7 (MSB)
for (int offset = 0; offset < 8; offset++) {
// jump to middle of next bit
delayMicroseconds(bitDelay);
// read bit
val |= digitalRead(_receivePin) << offset;
}
0767デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANだからハードから読んでるんだろ?
0768デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0769デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANホビーストがそういうコードを書くケースはあるよ。
それは否定してない。
否定してるのは>>692が言うほど、よく使われる手法なんかじゃないってこと。
そういうので言ったら、マイコン使ってソフトでNTSC信号を合成してブロック崩しとか
作っちゃう人もいるけど、あれは遊びでやってるんであってよく使われる手法じゃない
0770デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANお前の世界ではホビーなんだろうな。
ならば、世の中ホビーだらけだけどな。
0771デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANだから、じゃあ遊び以外でそれをやる意義はどこにあるんですか?
どこの企業だってコスト意識厳しくなってるのにどこにそんな無駄を許す理由があるんだ。
本当馬鹿だな。馬鹿でなきゃガキだ
0772デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0773デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANもちろんやって出来ないことはないが、リソースを使いまくるから普通はやらない。
ソフトでUSBは遊びでやってる人もっと多いと思うが、こっちもあくまで遊びであって
実用にはなりません。
0774デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0775デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANできるのかよ
騙された
0776デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANあれもソフトだよな。あれをハードとか言われたら困るし。
0777デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.AN0778デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANそういうのって一般的な製品に組み込む場合じゃないの?
生産設備とかなら多少リソース食うくらい気にならないし
多少高くなっても余裕があるほうがいいし。
0779デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANだから馬鹿馬鹿しくてソフトなんかだやらないんですよ。
UARTが3つも4つもついてる32bitマイコンが300円とかで買える時代に
ソフトでUARTってそれどんな罰ゲームだよって話。
0780デフォルトの名無しさん
2013/08/30(金) NY:AN:NY.ANなんだ。そういう話か。
UARTがついてない高性能マイコンを想定してたけど
そんなマイコン無いわなw
0781デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0782デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN>>735
0783デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0784デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.ANテラタームの設定で送受できるレベルだ
0785デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0786デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0787デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0788デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0789デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0790デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.ANhttp://www.amazon.co.jp/dp/4822247570/
0792デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN具体的に
0794デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0795デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0796デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0797デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0798デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.ANC++(ネイティブ)のDLLをC#で使うソリューションを作ってます
C++でビルドしたDLLをC#のフォルダに出力するには、C++で出力先をC#のフォルダに設定するしかないですか?
参照の追加 → 今回は.netのDLLでないからこの方法使えない
DLLをC#プロジェクトに追加して出力ディレクトリにコピー設定 → ビルドによるDLL変更が反映されないからこの方法は使えない
0799デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0800デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.ANC#のプロジェクト側から何が使われてるかひと目で分かるようにしたいというのが発端です
0801デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.ANrobocopyを使うか、MinGWやCygwinについてるcpを使うのが手軽
自前で用意してもいいけどさ
0802デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.ANしたあと、csproj直接修正してパスにマクロ混ぜれば行けたような
0803デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.ANlinkタグを追加で行けました。ありがとう
<Content Include="../hogehoge.dll">
<Link>hogehoge.dll</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
0804デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0805デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.ANxcopy /D
0806デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.ANどのAPIを使えばWP用のアセンブリを作れますか?
0807デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.ANwindows phone 開発環境構築
0808デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0809デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN壮大なギャグだねぇ!
0810デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.ANC#はダメだなこれ
0811デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0812デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN何に変わると思う?
0813デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.ANそういった処理はどうすれば可能なのでしょうか
自分が思いつく限りではウィンドウハンドルを取得してメッセージを送信してGUI操作を真似する事なのですが
定石になってるような、より良い方法はありますか?
0814デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0815デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.ANおれはしらん
0816デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.ANこれのAPI
別にWM系メッセージ送りつけてもいいけど、ダメなアプリもあるから。
0817デフォルトの名無しさん
2013/08/31(土) NY:AN:NY.AN0818デフォルトの名無しさん
2013/09/01(日) 09:00:59.35UIAutomation
0819デフォルトの名無しさん
2013/09/01(日) 14:06:29.590820デフォルトの名無しさん
2013/09/01(日) 17:54:50.760821デフォルトの名無しさん
2013/09/02(月) 11:50:33.10myRequest1.ContentType = "application/x-www-form-urlencoded";
myRequest1.Method = "POST";
byte[] data = Encoding.UTF8.GetBytes("mail=メールアドレス&password=パスワード");
myRequest1.ContentLength = data.Length;
//ここでエラー
myRequest1.GetRequestStream().Write(data, 0, data.Length);
myRequest1.GetResponse();
このコードをループで実行したら3回目ぐらいで myRequest1.GetRequestStream().Write(data, 0, data.Length);
ここでタイムアウトしますなんでかわかりますか?
教えてください!よろしくお願いします><
0822デフォルトの名無しさん
2013/09/02(月) 11:53:35.28myRequest1.ContentType = "application/x-www-form-urlencoded";
myRequest1.Method = "POST";
byte[] data = Encoding.UTF8.GetBytes("mail=メールアドレス&password=パスワード");
myRequest1.ContentLength = data.Length;
//ここでエラー
myRequest1.GetRequestStream().Write(data, 0, data.Length);
myRequest1.GetResponse();
このコードをループで実行したら3回目ぐらいで myRequest1.GetRequestStream().Write(data, 0, data.Length);
ここでタイムアウトしますなんでかわかりますか?
教えてください!よろしくお願いします><
0823デフォルトの名無しさん
2013/09/02(月) 11:56:09.490824デフォルトの名無しさん
2013/09/02(月) 11:58:34.93リンゴ、リンゴ、バナナ、トマト、リンゴが合った場合
"リンゴ" --> ringo, ringo (サイズ2の配列)
"バナナ" --> banana (サイズ1の配列)
"トマト" --> tomato (サイズ1の配列)
var sortedFruits = from fruit in fruits
group fruit by fruit.Name into fruitNames
みたいな感じでお願いします。
0825デフォルトの名無しさん
2013/09/02(月) 12:06:47.820826デフォルトの名無しさん
2013/09/02(月) 14:03:01.94ふざけないで下さい
0827デフォルトの名無しさん
2013/09/02(月) 14:31:17.33タイムアウトって書いてあるじゃん。鯖側の接続MAXに達してるとか?
0828デフォルトの名無しさん
2013/09/02(月) 14:41:47.11var sortedFruits= fruits.OrderBy( f => f.Name ).GroupBy( f => f.Name ).Select( g => g.ToArray() ).ToArray();
かな
知らんけど
0829デフォルトの名無しさん
2013/09/02(月) 15:05:33.11マジで宿題じゃねーか。知恵遅れで聞いてろよ
0830デフォルトの名無しさん
2013/09/02(月) 20:15:39.220831デフォルトの名無しさん
2013/09/02(月) 23:19:59.00GetRequestStreamで取ってきたStreamをCloseすればどう?
0832デフォルトの名無しさん
2013/09/04(水) 10:14:45.15EclipsでJavaをいじってみたのですが、あまりに不安定過ぎて挫折しかかってます。
VSが優秀過ぎるってのもあるのでしょうが。
0833デフォルトの名無しさん
2013/09/04(水) 12:01:40.270834デフォルトの名無しさん
2013/09/04(水) 15:18:39.10COM1(使用中でなければ)変更できます。
これをC#でやることはできますか?
0835デフォルトの名無しさん
2013/09/04(水) 15:28:17.780836デフォルトの名無しさん
2013/09/04(水) 15:41:45.22アスペか
0837デフォルトの名無しさん
2013/09/04(水) 16:23:21.100838デフォルトの名無しさん
2013/09/04(水) 16:41:45.460839デフォルトの名無しさん
2013/09/04(水) 16:56:29.350840デフォルトの名無しさん
2013/09/04(水) 17:38:04.910841デフォルトの名無しさん
2013/09/04(水) 18:00:15.800842デフォルトの名無しさん
2013/09/04(水) 18:01:42.080843デフォルトの名無しさん
2013/09/04(水) 18:07:42.590844デフォルトの名無しさん
2013/09/04(水) 18:16:47.770845デフォルトの名無しさん
2013/09/04(水) 19:16:52.96面白そうだからやってみたが途中で詰んだ。難しいなw
0846デフォルトの名無しさん
2013/09/04(水) 22:26:01.58ttp://www.shinko-music.co.jp/gakufu/1_3.html
Cフラットは、=C♭=B# となる。
C#は「シーシャープ」だぞ。
C#=D♭(ディーフラット) だ。
0847デフォルトの名無しさん
2013/09/04(水) 22:31:27.41音は同じだけど音楽ではC#と表記すべきところをD♭と表記することはない
C#はCに調号#を付けたものであり、Dにフラットを付けたものではないから
0848デフォルトの名無しさん
2013/09/04(水) 22:59:31.330850デフォルトの名無しさん
2013/09/04(水) 23:41:30.94意味不明。
ところでスレタイの"ふらっと"は♭のことじゃないのかな。
0851デフォルトの名無しさん
2013/09/04(水) 23:46:02.250852デフォルトの名無しさん
2013/09/04(水) 23:51:36.80「ふらっと立ち寄る」みたいに使う「ふらっと」と、♭をかけてる。
0853デフォルトの名無しさん
2013/09/05(木) 00:09:25.94そうなのか。ずっとC++を斜め上にしたものかと思ってた。
0854デフォルトの名無しさん
2013/09/05(木) 00:14:27.940855デフォルトの名無しさん
2013/09/05(木) 00:23:24.06これが一番納得行った
0856デフォルトの名無しさん
2013/09/05(木) 01:32:39.320857デフォルトの名無しさん
2013/09/05(木) 01:52:31.08++
++ → ♯ って事なんだろうね
0858デフォルトの名無しさん
2013/09/05(木) 02:47:30.23知らなかったw
0859デフォルトの名無しさん
2013/09/05(木) 03:22:10.22その♭がどこからやって来たのかが分からない
0860デフォルトの名無しさん
2013/09/05(木) 03:46:36.84「♭」は音楽記号「♯」つながりで、
「ふらっと」は初心者でも気軽にってとこからじゃないかな。
0861デフォルトの名無しさん
2013/09/05(木) 04:12:17.98なんで C# が♭と繋がるのか分からない
0862デフォルトの名無しさん
2013/09/05(木) 05:47:50.160863デフォルトの名無しさん
2013/09/05(木) 06:18:18.72ふらっとやってきたのさ
0864デフォルトの名無しさん
2013/09/05(木) 06:19:04.260865デフォルトの名無しさん
2013/09/05(木) 07:40:56.18音楽のこと知らないならC#=D♭(ディーフラット) とか馬鹿な知ったかしない方がいいよ
音楽記号覚えたての小学生がはしゃいでるように見えるから
0866デフォルトの名無しさん
2013/09/05(木) 07:59:01.96え、どう違うんですか?まさか周波数(笑)ですか?
0867デフォルトの名無しさん
2013/09/05(木) 08:08:49.02まったく同じだったら2つの表記方法は必要ないだろ馬鹿か
半音上がると半音下がるで音の表現方法がぜんぜん違うんだよ
具体的には#は明るい音、♭は暗い音になるように表現する
0869デフォルトの名無しさん
2013/09/05(木) 08:15:16.36でも音は同じでしょ?
意味わからないですね
0870デフォルトの名無しさん
2013/09/05(木) 08:15:53.72好みの釣り餌がバレたようだ
0872デフォルトの名無しさん
2013/09/05(木) 10:05:30.91平均律の楽器のが少ないけどね。
0873デフォルトの名無しさん
2013/09/05(木) 10:39:30.83表現方法の違いが生まれることは事実だが、
それは経験者にしか理解できない話だから言及を避けた
言ってもどうせ理解されないばかりか「そんなのオカルト」という反論が目に浮かぶからな
>>869
「楽譜の目的には音の高さを示すだけでなく音の役割を示すことも含まれているから」というのが答え。
例えば↓の楽譜がわかりやすい。
http://xn--i6q789c.com/gakuten/img/keikaon.gif
右にシャープが二つあるが、これをフラットで書き換えたら音が連続的に上昇しているという楽譜の意図が伝わりにくくなるだろ。
もう一つの答えもある。
ダブルシャープやダブルフラットという記号もあるが、これらは音の高さという見地からは全く必要のない記号だと言えるだろう。
ではなぜこんな記号が用意されているのかという点にもシャープとフラットの使い分けの答えは含まれている。
0874デフォルトの名無しさん
2013/09/05(木) 10:57:38.960875デフォルトの名無しさん
2013/09/05(木) 11:05:08.59半角#はシャープじゃなくて単価記号だよ、
とか言い始めたら簿記スレになるのだろうか
0876デフォルトの名無しさん
2013/09/05(木) 12:14:31.36さっぱり意味が分らない。
ここの技術板住人でも分るようにピアノやキダーでどう弾き分けるのか説明してくれ。
0877デフォルトの名無しさん
2013/09/05(木) 13:05:00.690878デフォルトの名無しさん
2013/09/05(木) 13:05:54.950879デフォルトの名無しさん
2013/09/05(木) 13:16:51.250880デフォルトの名無しさん
2013/09/05(木) 13:57:59.05フレットがあるから厳しい
0881デフォルトの名無しさん
2013/09/05(木) 14:11:20.220882デフォルトの名無しさん
2013/09/05(木) 14:43:36.540883デフォルトの名無しさん
2013/09/05(木) 16:39:06.03C#とD♭は周波数的に同じだがニュアンスが違うってことか。
まあそれはそうなのかと感心する。
しかし、だからといってそれがC#がフラットと関連する説明に
なっているのか?
0884デフォルトの名無しさん
2013/09/05(木) 16:47:54.330885デフォルトの名無しさん
2013/09/05(木) 16:49:28.930886デフォルトの名無しさん
2013/09/05(木) 16:53:42.14初心者ってニュアンスを出すのに「ふらっと」って言葉を使っているんだと説明されただろうに・・・
0887デフォルトの名無しさん
2013/09/05(木) 16:55:35.01周波数が同じなのに、明るいだの暗いだの全然具体的な表現じゃない。
さっさと具体的にピアノで明るい音(C#)と暗い音(D♭)の引き分け方を教えろ。
0888デフォルトの名無しさん
2013/09/05(木) 17:01:09.61純正律こそが調和のとれた音楽だ。
0889デフォルトの名無しさん
2013/09/05(木) 17:08:17.860890デフォルトの名無しさん
2013/09/05(木) 17:10:58.50ピアノでどうやって弾き分けるか聞いてんだが。馬鹿なの?
できないならできないと言えよ。具体的に表現できるんじゃなかったのか? この嘘つきが。
0891デフォルトの名無しさん
2013/09/05(木) 17:16:51.150892デフォルトの名無しさん
2013/09/05(木) 17:37:12.240893デフォルトの名無しさん
2013/09/05(木) 18:09:38.430894デフォルトの名無しさん
2013/09/05(木) 18:11:15.99時報は A (ラ) = 440Hz と、1オクターブ上の A (ラ) = 880Hz であるが、
この間の音階の周波数を列挙するプログラムを書け
ヒント
・1オクターブ上がるという事は、周波数が2倍になるということである
・A → 1オクターブ上の A
の間には、
A#, B, C, C#, D, D#, E, F, F#, G, G#
がある
0895デフォルトの名無しさん
2013/09/05(木) 18:18:44.68>ダブルシャープやダブルフラットという記号もあるが、
どちらかというと調性がらみだねえ。Des-dur と Cis-dur はどう説明する?
>純正律こそが調和のとれた音楽だ。
しかし転調ができない
転調がない音楽など糞の役にも立たん
0898デフォルトの名無しさん
2013/09/05(木) 21:55:51.520899デフォルトの名無しさん
2013/09/05(木) 22:02:23.720900デフォルトの名無しさん
2013/09/05(木) 22:03:35.250901デフォルトの名無しさん
2013/09/05(木) 22:10:20.98しかもデータベースの研修を受けたのは自分しかいない状況でのチーム開発だってさ
トランザクションとかもう訳分かめだぜ
クラス図もあんまりよく分かってないのにこれから6画面分の書けってそりゃねえよ
何からもうどうしていいか分からない状態なんだけど、何からどうしたらいい?
一応外部設計の仕様書は出来合いのがある
0902デフォルトの名無しさん
2013/09/05(木) 22:11:48.200903デフォルトの名無しさん
2013/09/05(木) 22:14:37.33その時既にプログラムの実行は終わっているんだッ!
0904デフォルトの名無しさん
2013/09/05(木) 22:14:56.51>>894をCで書いたけど、こういうのをC#で書くとどうなる?
0905デフォルトの名無しさん
2013/09/05(木) 22:15:29.54だってselect句とか使ってただけだぜ?
しかもマネジメントスタジオでいじってたからコーディングだとどうやるのかとかまた別問題だろうし
あ、c#でコーディングします
0906デフォルトの名無しさん
2013/09/05(木) 22:16:23.920907デフォルトの名無しさん
2013/09/05(木) 22:19:54.28そのぐらいの分量のコードでC系言語で
呼び出す関数とか配列の宣言の仕方とかぐらいしか差が出る余地がないじゃん…
0908デフォルトの名無しさん
2013/09/05(木) 22:27:27.770909デフォルトの名無しさん
2013/09/05(木) 22:28:28.60まあコンパクトさを競うんじゃなきゃ、きちんと音階クラスを定義してそいつに
仕事させるのがC#というかOOP言語らしい書き方かな。
インクリメント/デクリメント演算子で値が変る幅を半音にするか1音階にするか悩みそうだ
0910デフォルトの名無しさん
2013/09/05(木) 22:29:57.43客が一番技術レベル高いのではないか。
0911デフォルトの名無しさん
2013/09/05(木) 22:30:03.697月から言語研修受けてる新人5人グループでございます
うち一人は入社前はエクセルすら触ったことなくコピペも知らなかった人間で、
もう一人はググったり自分で勉強したりが全くできなくてすぐ混乱パニック居眠りをする人間
まともな残り二人もフォームアプリケーションでのコーディングは1、2回程度
そして残された自分
0912デフォルトの名無しさん
2013/09/05(木) 22:31:54.61だから上司すらよく分かってない可能性があるんだぜ\(^o^)/
書くの忘れてたごめんなさい
0913デフォルトの名無しさん
2013/09/05(木) 22:32:49.57こんなこともC#はできないの?
0914デフォルトの名無しさん
2013/09/05(木) 22:34:37.260915デフォルトの名無しさん
2013/09/05(木) 22:37:14.210916デフォルトの名無しさん
2013/09/05(木) 22:42:10.74最初にちゃんと書くべきだったね、ホントごめんなさい
こんな状況で全13画面あって、誰一人やったことないXMLも使わないといけなくて、
今月末に仕上げろですよ、マジ助けて
>>915
ホントにこういうのがデフォなの?
それって力がつくからとかそういう理由…じゃないよね?
0917デフォルトの名無しさん
2013/09/05(木) 22:43:41.15月末までなら楽勝じゃん
0918デフォルトの名無しさん
2013/09/05(木) 22:47:06.32ゆとりだと辞めちゃうんだろうな。
0919デフォルトの名無しさん
2013/09/05(木) 22:50:25.48……?
0920デフォルトの名無しさん
2013/09/05(木) 22:54:00.05みかかでーたとか丸投げ会社の研修か?
0921デフォルトの名無しさん
2013/09/05(木) 23:01:12.73フォームの使い方から教えないといけないのがいても?
自分でも勉強足りてないから勉強しながらでないとできないのに
でも、案ずるより産むが安しなのかな
>>919
使ったことないと言えばいいのか作ったことないと言えばいいのか、、基本情報の知識程度にしか知らない
>>920
いや、調べてるんだけどさ
なんかもう色々やることとか多すぎて目移りして何から手をつけていいかが困ってる
0922デフォルトの名無しさん
2013/09/05(木) 23:03:09.44うちは
10 NEW CMD
20 CMD PLAY "C+D-"
だったかな
0923デフォルトの名無しさん
2013/09/05(木) 23:04:29.00なんのかんの言いながら部活に近い感覚あるからそこはぬるいと思ってるよ
いや、部活のがまだ教育体系しっかりしてたなw
0924デフォルトの名無しさん
2013/09/05(木) 23:38:41.40ググればわかるさ
0925デフォルトの名無しさん
2013/09/06(金) 00:06:21.65ただただMSDNだけを読め。
0926デフォルトの名無しさん
2013/09/06(金) 00:10:17.54個別のことはググればいくらでも資料が出てくるんだし。‥‥いい時代になったもんだよな。
0927デフォルトの名無しさん
2013/09/06(金) 08:00:25.39ありがとう
今日クリティカルパスとか作るから、そこでの役割に沿って頑張る
変に周りのことを気にしたりしないようにするよ
0928デフォルトの名無しさん
2013/09/06(金) 09:04:05.56そういう状態で「頑張る」のは危険だよ
素人ががむしゃらに頑張ってもソフトウェア開発は上手くいかない
今やるべきことは、ネットか書籍で既存のシステムの設計やアーキテクチャを参考にして作ること
テストやってるわけじゃないんだし、既に存在してる答えを探さずに自分でダメな解答作ることに意味はない
0929デフォルトの名無しさん
2013/09/06(金) 18:15:21.09複数の似たようなフォームを大量に扱う場合、MDIが良いのでしょうか?
今まではSDIに子フォームを追加してて親フォームの枠に囚われずに使えて便利だと思っていたのですが、
Excel等がMDIなのでそっちの方が楽なのかなとも思うようになってきました。
よろしくお願いします。
0930デフォルトの名無しさん
2013/09/06(金) 18:18:26.070931デフォルトの名無しさん
2013/09/06(金) 18:23:39.81ですよね・・・。
イマイチMDIの利点が思いつかなくて。
0932デフォルトの名無しさん
2013/09/06(金) 18:25:31.17どっちが便利かはケースバイケースだからそれだけの情報じゃ分からね
0933デフォルトの名無しさん
2013/09/06(金) 18:49:51.99すいません、複数の監視カメラを制御します。
カメラの数が増えるかもなので、Pictureboxを並べるよりはカメラ毎にフォームを用意した方が楽かなと思いまして。
0934デフォルトの名無しさん
2013/09/06(金) 18:53:13.15大きさが同じならListBox使ってみたら?
0935デフォルトの名無しさん
2013/09/06(金) 18:55:45.59カメラ数設定したら動的にコントロール作って並べる
で、D&Dで1つのカメラ画像だけ1つのフォームにするみたいな取り出しにも対応させとく
0936デフォルトの名無しさん
2013/09/06(金) 19:10:15.12アドバイスありがとう
今日いきなり研修一抜けして来週から社内業務入ってって言われたわ
内容は全く分からないからそのアドバイスは活かせるかは微妙だけど、
ダメな解答を作らず、素人のうちは出来合いのものを組み合わせて作りながら勉強していくよ
0937デフォルトの名無しさん
2013/09/06(金) 19:11:12.51動的コントロール並べるのもいいですね!
ありがとうございます。
0938デフォルトの名無しさん
2013/09/06(金) 20:13:54.95わざわざ車輪の再発明をするのは無駄だ、
ということを今のうちに覚えておくんだ
ライブラリってそういうことだろ?
0939デフォルトの名無しさん
2013/09/06(金) 20:36:47.980940デフォルトの名無しさん
2013/09/06(金) 20:57:45.190941デフォルトの名無しさん
2013/09/06(金) 21:02:15.11これで大丈夫かな?
0942デフォルトの名無しさん
2013/09/06(金) 21:45:44.860943デフォルトの名無しさん
2013/09/06(金) 21:51:38.190944デフォルトの名無しさん
2013/09/06(金) 21:54:05.72教えてもらおうか
0945デフォルトの名無しさん
2013/09/06(金) 22:18:03.48意味が解らん
0946デフォルトの名無しさん
2013/09/06(金) 22:34:00.280947デフォルトの名無しさん
2013/09/06(金) 22:52:40.80タグの中身を同時に書き換えるとかそんな使い方?
0949デフォルトの名無しさん
2013/09/06(金) 23:39:54.57<p>aaa</p>
<b>bbb</b>
<p.>ccc</p>
ってあったら
1行目と2行目の<p>の次にキャレットがあるものとして
複数の位置から文字が入力できるようにしたいんです
こういう仕組みはSublime Textにあります
0950デフォルトの名無しさん
2013/09/06(金) 23:40:28.05×1行目と2行目の<p>の次にキャレットがあるものとして
○1行目と3行目の<p>の次にキャレットがあるものとして
0951デフォルトの名無しさん
2013/09/06(金) 23:45:16.830952デフォルトの名無しさん
2013/09/06(金) 23:45:30.790953デフォルトの名無しさん
2013/09/06(金) 23:45:53.710954デフォルトの名無しさん
2013/09/06(金) 23:50:02.59キャレットって普通1個しかねえんじゃ?
0955デフォルトの名無しさん
2013/09/06(金) 23:55:38.99こういうのはどういう入力仕様にするかの方が重要。
俺が作ったらたんにミラーリングするだけの無意味な機能になるわ
0956デフォルトの名無しさん
2013/09/06(金) 23:58:16.50べたに追加していくというのは?
http://www.sublimetext.com/のトップのアニメーション画像にその複数入力の場面がのっているので見てください
これは技術的に加納でしょうか
0957デフォルトの名無しさん
2013/09/07(土) 00:02:11.64例えばTextChangeされたときに追加されてる文字と場所を見て、それが1行目だったら同じ文字を2行目に追加。
2行目だったら無視するとかそんな処理。
糞処理だけどこんなだったら誰にでも実装できるだろ
0958デフォルトの名無しさん
2013/09/07(土) 00:10:08.35加納店名
0959デフォルトの名無しさん
2013/09/07(土) 00:18:55.09キーワードを教えてください
0960デフォルトの名無しさん
2013/09/07(土) 00:21:15.120961デフォルトの名無しさん
2013/09/07(土) 00:23:06.96キャレットの位置って取得出来るの?
0962デフォルトの名無しさん
2013/09/07(土) 00:27:48.430963デフォルトの名無しさん
2013/09/07(土) 00:28:02.51キャレット位置 取得
0964デフォルトの名無しさん
2013/09/07(土) 00:29:09.25Controlクラス。これにそういう仕組みを自分でゴリゴリ書く
TextBoxは既製品だからそういう改造は出来ない
>961
WinAPIのGetCaretPosを使えば出来るが、正直取得する必要があるとは思えない
0965デフォルトの名無しさん
2013/09/07(土) 00:29:11.15当たり前だけどTextBoxは>>956みたいな拡張なんか想定してないからTextBoxを
ベースに改造しようという発想そのものが無理。
データの構造(>>956みたいなエディタがべたテキストでデータ持ってるはずがない)も
描画も全部スクラッチで書かなきゃ無理。
単純に文字列の複数個所を同じ文字列で置き換えるだけなら例えばString.Formatで出来るけど
0966デフォルトの名無しさん
2013/09/07(土) 00:30:20.64ヒント:オーナードロー
オーナードローしなくてもがんばれば位置取得ぐらいできそうな気はする
0967デフォルトの名無しさん
2013/09/07(土) 00:31:07.67作ってみるべきだよな
0968デフォルトの名無しさん
2013/09/07(土) 00:32:16.860969デフォルトの名無しさん
2013/09/07(土) 00:36:57.530970デフォルトの名無しさん
2013/09/07(土) 00:38:34.18まともに作るならキャレット描画をしないと操作性が悪い
0971デフォルトの名無しさん
2013/09/07(土) 06:49:28.68http://recyclebin5385.blog13.fc2.com/blog-entry-31.html
を参考にしたのですが
webBrowser.Document.Body.ScrollTop
を見ても常に0が取得されてしまいます。
何か原因が思い当たれば教えてください。
0972デフォルトの名無しさん
2013/09/07(土) 08:28:45.61こういうバカが副作用でバグを大量生産する
0973デフォルトの名無しさん
2013/09/07(土) 09:02:46.81それ、ソフトに限らず全てに言える。
気取ってエラそうなバカが増えてきて困っている。
以前から居たが、少なかったので余所に回せば良かった。
でも今は……多すぎる。
0974デフォルトの名無しさん
2013/09/07(土) 09:19:13.65(自覚のない)偉そうな馬鹿って
0975デフォルトの名無しさん
2013/09/07(土) 09:23:58.64お前はイーサネットも物理層も理解した上でHTTP通信を使っているのか?
0976デフォルトの名無しさん
2013/09/07(土) 09:25:02.41きちんと理解して使うには時間が足りなすぎる
0977デフォルトの名無しさん
2013/09/07(土) 09:25:11.150978デフォルトの名無しさん
2013/09/07(土) 09:25:56.55知らないで使ってるの?
0979デフォルトの名無しさん
2013/09/07(土) 09:26:55.40APIなんて呼び出し方とトラブル例だけ知ってればいいんだよ。
0980デフォルトの名無しさん
2013/09/07(土) 09:28:52.740981デフォルトの名無しさん
2013/09/07(土) 09:29:24.97じゃ教えてよ
聞きかじった用語の意味じゃなくて俺がそれ聞いて実装できるようにな
0982デフォルトの名無しさん
2013/09/07(土) 09:31:18.480983デフォルトの名無しさん
2013/09/07(土) 09:35:28.38次スレよろ
0984デフォルトの名無しさん
2013/09/07(土) 09:35:31.630985デフォルトの名無しさん
2013/09/07(土) 09:36:04.17原理から把握して使うにはこの言葉がC#にも当てはまるからな
0986デフォルトの名無しさん
2013/09/07(土) 09:46:40.06http://toro.2ch.net/test/read.cgi/tech/1378514566/
0987デフォルトの名無しさん
2013/09/07(土) 09:52:08.87>何か原因が思い当たれば教えてください。
・スクロールしていない
0988デフォルトの名無しさん
2013/09/07(土) 09:55:34.26乙
0989デフォルトの名無しさん
2013/09/07(土) 09:59:53.07http://www.tek-tips.com/viewthread.cfm?qid=1490344
0990デフォルトの名無しさん
2013/09/07(土) 10:24:24.70乙
0991デフォルトの名無しさん
2013/09/07(土) 10:45:08.24これみたいです
0992デフォルトの名無しさん
2013/09/07(土) 10:50:26.740993デフォルトの名無しさん
2013/09/07(土) 12:48:08.19最近の若者はそれすら知らずに使うからこわいよね
0994デフォルトの名無しさん
2013/09/07(土) 12:56:09.99何でそういう話になるんだよw
最近の若者がどうだか知らんけど、あんたは2ch脳にありがちな「昔」(というより、
自分の狭い世代)だけを美化したがる若年寄だろ
0995デフォルトの名無しさん
2013/09/07(土) 13:20:05.35取得できる神技術者はいないものか
0996デフォルトの名無しさん
2013/09/07(土) 13:54:13.620997デフォルトの名無しさん
2013/09/07(土) 14:02:23.340998デフォルトの名無しさん
2013/09/07(土) 14:03:32.580999デフォルトの名無しさん
2013/09/07(土) 14:04:19.04だからそれは出来るでしょ。
出来ないのは、スクロール可能な部分がネストされていたり複数存在したりする場合に
「スクロールの位置」とやらを一意に決めること
1000デフォルトの名無しさん
2013/09/07(土) 14:05:27.05猫缶はこれを利用している
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。