ふらっとC#,C♯,C#(初心者用) Part21
■ このスレッドは過去ログ倉庫に格納されています
0001ななしぃ#
2007/11/18(日) 15:53:41「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。
ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問など、
勇気をもって書き込んでください。
内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。
前スレ: ふらっとC♯, C#(初心者用) Part20
http://pc11.2ch.net/test/read.cgi/tech/1191036844/
0068デフォルトの名無しさん
2007/11/22(木) 14:59:25たぶん>>66は
string value = str[0] + ',' + str[1] + ',' + str[2] + ',' + str[3] + ・・・・・
これが高速だと言いたかったんだろ。
forループ回して+=で結合するのや
StringBuilder インスタンスのロスなどを考えても
今回の配列50個程度の文字列結合だと、
速度の点で言えばどの方法でも大差なさそうだけどね。
>>59の
string value = str[0] + ',' + str[1] + ',' + str[2] + ',' + str[3] + ・・・・・
見た目はカコワルイが、これが一番高速ってことかなwww
0069デフォルトの名無しさん
2007/11/22(木) 15:10:110070デフォルトの名無しさん
2007/11/22(木) 15:14:33将来配列の個数が増えたときも対応が利くし
+=よりは速い。
そして何よりもスマートに記述できる。
0071デフォルトの名無しさん
2007/11/22(木) 15:36:23すまんすまん、60=62だが、ここに突っ込んだんだよw
0072デフォルトの名無しさん
2007/11/22(木) 15:45:350073デフォルトの名無しさん
2007/11/22(木) 16:03:113ページ目の中にはDataGridViewがあります。
タブページ外のボタン(タブコントロールと同じフォーム内)を
クリックしたときに、3ページ目のコピーを4ページ目として、
新たにタブページを作成するメソッドって何かありませんか?
007473
2007/11/22(木) 16:11:41>新たにタブページを作成するメソッドって何かありませんか?
新たにタブページを作成するスマートな方法をご存知ないですか?
に訂正します。
0075デフォルトの名無しさん
2007/11/22(木) 17:13:26データ舐めて新規につくれとしか
>>66
,ィ⊃ , -- 、
,r─-、 ,. ' / ,/ } ち
{ ヽ / ∠ 、___/ |
署 ヽ. V-─- 、 , ',_ヽ / ,' ょ
ヽ ヾ、 ',ニ、 ヽ_/ rュ、 ゙、 /
ま \ l トこ,! {`-'} Y っ
ヽj 'ー'' ⊆) '⌒` !
で , 、 l ヘ‐--‐ケ } と
ヽ ヽ. _ .ヽ. ゙<‐y′ /
来 } >'´.-!、 ゝ、_ ~ ___,ノ
| −! \` ー一'´丿 \
い ノ ,二!\ \___/ /`丶、
/\ / \ /~ト、 / l \
007673
2007/11/22(木) 17:26:01すんません、説明不足でした。
DataGridViewのデータはコピーできなくてOKです。
3ページ目のDataGridViewの列タイトル・列幅など
プロパティのコピーができれば充分です。
何とかなりませんかね?
0077デフォルトの名無しさん
2007/11/22(木) 17:52:25それはピーポw
007873
2007/11/22(木) 18:13:03DataGridView dgv = dgvLog; ← dgvLog:3ページ目のDataGridView
tabPage4.Controls.Add(dgv);
たぶんこれで問題ないと思われます。
007973
2007/11/22(木) 18:18:44DataGridView dgv = dgvLog;
tabPage4.Controls.Add(dgv);
これを実行するとナゼか
3ページ目のDataGridViewが消えるorz
0080デフォルトの名無しさん
2007/11/22(木) 18:45:22当たり前w
試しに、
DataGridView dgv = new DataGridView();
して、それをAdd してみ。
0081デフォルトの名無しさん
2007/11/22(木) 18:50:10DataGridView dgv = new DataGridView();
DataGridView dgv = dgvLog;
tabPage4.Controls.Add(dgv);
このようにやっても3ページ目が消えます;;
どうやらdgvLogそのものをコピーするのは無理っぽいですね。。。
0082デフォルトの名無しさん
2007/11/22(木) 19:03:580083デフォルトの名無しさん
2007/11/22(木) 19:18:01008473
2007/11/22(木) 19:24:25これって何かヤバい記述なのでしょうか?
超初心者ですみません;;
0085デフォルトの名無しさん
2007/11/22(木) 20:34:49C#3.0で開発するとクライアントでは.net3.0/3.5が必要なの?
.net2.0の開発にC#3.0は使えないんですか?
0086デフォルトの名無しさん
2007/11/22(木) 20:41:280087デフォルトの名無しさん
2007/11/22(木) 20:48:243.0/3.5で追加されたライブラリを使わなければ、
C# 3.0で追加された言語仕様を使っても.NET Framework 2.0で動くはず。
86も言っている通りLinqはだめだな。
まあ、こういうことも不可能ではないみたいだけど。
http://d.hatena.ne.jp/NyaRuRu/20071121
0088デフォルトの名無しさん
2007/11/22(木) 23:09:27C# 3.0というかVisual Studio 2008で書くと、常に.NET 2.0 SP1を想定してコンパイルする点は注意。
.NET 2.0→2.0 SP1でいくつか互換性が無くなる変更が行われているので、
それらの型やメソッドに依存してるプログラムは互換しない。
例
1) .NET 2.0にのみに存在し、SP1で無くなったメソッドを使っている
→.NET 2.0 SP1環境で動かない、Visual Studio 2008ではコンパイルが通らない
2) .NET 2.0 SP1で追加されたメソッドを使っている
→.NET 2.0無印環境で動かない、Visual Studio 2008ではコンパイルが通る
0089デフォルトの名無しさん
2007/11/22(木) 23:34:220090デフォルトの名無しさん
2007/11/22(木) 23:40:37,ィ⊃ , -- 、
,r─-、 ,. ' / ,/ } だ
{ ヽ / ∠ 、___/ |
署 ヽ. V-─- 、 , ',_ヽ / ,' か
ヽ ヾ、 ',ニ、 ヽ_/ rュ、 ゙、 /
ま \ l トこ,! {`-'} Y ら
ヽj 'ー'' ⊆) '⌒` !
で , 、 l ヘ‐--‐ケ }
ヽ ヽ. _ .ヽ. ゙<‐y′ /
来 } >'´.-!、 ゝ、_ ~ ___,ノ
| −! \` ー一'´丿 \
い ノ ,二!\ \___/ /`丶、
/\ / \ /~ト、 / l \
っ
て
0091デフォルトの名無しさん
2007/11/22(木) 23:49:130092デフォルトの名無しさん
2007/11/23(金) 00:14:570093デフォルトの名無しさん
2007/11/23(金) 00:23:56市ね糞が
0094デフォルトの名無しさん
2007/11/23(金) 00:38:370095デフォルトの名無しさん
2007/11/23(金) 00:51:080096デフォルトの名無しさん
2007/11/23(金) 03:51:10ここのスレで質問させて下さい。
C#で下記VB6の処理と同じ事をしたいのですが、
VB6+DAO接続のようにうまくいきません。
(Oracleの社員マスタをmdbにインポートする)
Dim db1 As Database
'DSN接続文字列
Const DSN As String = _
"ODBC;DSN=abc;SRVR=orcl;UID=USER;PWD=Admin;"
'DAOでOracleに接続
Set db1 = Workspaces(0).OpenDatabase("", True, False, DSN)
Dim strSQL As String
’社員マスタのインポート
strSQL = "SELECT * INTO USER_SHAIN " & _
"IN '" & "C:\abc.mdb' from SHAIN"
db1.Execute strSQL
mdbにODBCでOracleにリンクして上記SQLを発行すれば
うまくいきそうなんですが
空のabc.mdbに直接Oracleのデータをインポートするには
C#+ADO.NETではやはり無理なのでしょうか?
VB+DAOでできてC#+ADO.NETではできないのは
何か悔しいです。
0097デフォルトの名無しさん
2007/11/23(金) 06:54:06そういうDAOべったりのことをしたいなら、C#からDAO使えばいいじゃね
0098デフォルトの名無しさん
2007/11/23(金) 10:26:16お前VB6のソース貼っただけで質問かよ
DAOでMDBへの接続ならこんなのがあった
http://park15.wakwak.com/~u-konko/denno/c_sample/ado.htm
0099デフォルトの名無しさん
2007/11/23(金) 11:30:52多種DB間での単一SQLって・・・
プログラム的には接続を別に持って
DB1からObjectとして取得
DB2へ取得Objectをインサート
がスマートなんじゃね?
0100デフォルトの名無しさん
2007/11/23(金) 15:30:270101デフォルトの名無しさん
2007/11/23(金) 15:39:200102デフォルトの名無しさん
2007/11/23(金) 15:54:15レスありがとうございます。
そのような感じではなくロガー用途で使いたいのです
ttp://mixlogger.the-ninja.jp/
このような感じです。
情報を小出しにしてしまい申し訳ありません。
プログラムは常駐していて、IEでなにかサイトにアクセスすると
URL、あとタイトルとアクセス時間をログにして出力すると考えています。
0103デフォルトの名無しさん
2007/11/23(金) 19:19:550104デフォルトの名無しさん
2007/11/23(金) 19:25:23何が上手くいかないか書いていない。
c#上のコーディングミスの可能性があるのにソースが貼ってない。
それにもかかわらず
>C#+ADO.NETではやはり無理なのでしょうか?
なんだそれ?
ゆとり?
0105デフォルトの名無しさん
2007/11/23(金) 20:09:470106デフォルトの名無しさん
2007/11/23(金) 20:41:21この板で久しぶりにワラタwwwww
0107デフォルトの名無しさん
2007/11/23(金) 22:32:59まあプログラマって笑いのツボ(に限らないけど)が中学生な奴が多いのかもな。
0108デフォルトの名無しさん
2007/11/23(金) 22:42:490109デフォルトの名無しさん
2007/11/23(金) 23:02:54aとbは親子の場合もあるしそうでないときもあります。
これをaからbへの相対パスに変更する簡単な方法はありますか?
0110デフォルトの名無しさん
2007/11/23(金) 23:07:40クイズ風に質問すな
0111デフォルトの名無しさん
2007/11/23(金) 23:09:04でググればいくらでもでてくるだろうに。
Uri.MakeRelativeUri
0112デフォルトの名無しさん
2007/11/23(金) 23:23:06無くてもアルゴリズムを自作できる程度のものが多い。
0113デフォルトの名無しさん
2007/11/23(金) 23:28:15どうもありがとうございます。
Uriクラスとは気が付きませんでした・・
0114デフォルトの名無しさん
2007/11/23(金) 23:33:41RS232Cの通信というのはかなりのCPU負荷をかけるものなのでしょうか?
1chでの受信ではデータの取りこぼしもほとんどなく転送速度もそこそこ出ているのですが
3chでのプログラムではPentium MのPCでは動作が不安定になってしまいました。
Core 2 DuoのPCでは普通に動くのでCPUパワーの問題かなと思ったのですが・・・。
Serialportクラスを3つ並べてそれぞれをDataReceivedイベントで監視するという
安直な考えで組んだプログラムですのでプログラムにも問題があるのでしょうが
純粋にCPU負荷がかかる処理であることが原因なのでしょうか?
0115デフォルトの名無しさん
2007/11/23(金) 23:42:36ふいたw
0116デフォルトの名無しさん
2007/11/23(金) 23:46:28同期、非同期から勉強することをお勧めする。
0117デフォルトの名無しさん
2007/11/24(土) 00:16:22イベント内でファイル開いたりしてないよね?
0118デフォルトの名無しさん
2007/11/24(土) 00:28:45>DataReceivedイベントで監視する
通信のプロトコルが分からないので断定はできないが、
たぶん設計としてここがまずいと思う。
必ずしもフリースレッドでやる必要はないんだけど、定期的にバッファをポーリングする
やり方の方がほとんどの場合適合的じゃないのかな。
0119デフォルトの名無しさん
2007/11/24(土) 14:14:11VS2005で、VSTOは持っていません。Excelは2003です。
あらかじめ、申請書のフォーマットのxlsファイルを用意し、そこに作成するWindowsアプリで
COMでExcelを操作して申請者の氏名などの情報を書き込んで、xlsを別名で保存するつもりです。
困っているのが、申請書に、Excelのフォームコントロール(チェックボックス、コンボボックス、
ラジオボックス)があり、これらをC#から操作(選択)する方法がわからないことです。
現在、VS上でどのオブジェクトを操作したらいいのかもわからない状態です。
ご存じの方がいらっしゃったら、お教えいただけないでしょうか。
0120デフォルトの名無しさん
2007/11/24(土) 16:55:300121デフォルトの名無しさん
2007/11/24(土) 17:39:56たぶん正攻法じゃないとは思うけど、
VBA側の処理で特定のセルの値とコントロールの状態をリンクするコードを書いておけば、
C#のコードからはその特定のセルの値を操作すれば間接的にコントロールを操作できるんじゃないの?
0123デフォルトの名無しさん
2007/11/24(土) 19:11:25あれば教えていただけないでしょうか?
フレームワーク2.0です。
0124デフォルトの名無しさん
2007/11/24(土) 19:22:180125デフォルトの名無しさん
2007/11/24(土) 19:34:19VBAより、用意したWSHのスクリプトを呼び出す方がかっこよくね?
0126123
2007/11/24(土) 19:37:55ありがとうございます。
うまいことクラスが用意されてる感じではなさそうってことですね。
最終的に方法が見つからなければその方法でいきたいと思います。
0127デフォルトの名無しさん
2007/11/24(土) 19:43:110128デフォルトの名無しさん
2007/11/24(土) 22:37:31ただ大量に出力する時はCOM経由は遅いのがネックだね
0129デフォルトの名無しさん
2007/11/24(土) 23:50:500130デフォルトの名無しさん
2007/11/25(日) 00:14:15System.Net.WebClientクラスのDownloadFileメソッド等で
例外処理をする以外の方法はありませんか?
0131デフォルトの名無しさん
2007/11/25(日) 00:15:03間隔よく表示したいのですけれども、方法ありますか?
0132デフォルトの名無しさん
2007/11/25(日) 00:21:24普通にGETかHEAD投げてステータスコード見ろよ
0133デフォルトの名無しさん
2007/11/25(日) 00:33:43webBrowserコントロールに読み込んで
webBrowser1.DocumentTitleでOKっぽいよ
0134122
2007/11/25(日) 01:16:09ありがとうございます。
VBScriptを直に使えるみたいですね。
完成したxlsファイルにはマクロを残したくないので、プログラム中でマクロを除去しようと考えていましたが、
WSHを使う方がスマートですね。
0135デフォルトの名無しさん
2007/11/25(日) 13:03:13Form2のボタンをクリックしたときFontDialogを表示します。
しかし、FontDialogを閉じたらForm2も一緒に閉じてしまいます。
狙いとしては、FontDialogで選択したフォントをForm2に配置してある
テキストボックスのFontプロパティに入れたいのです。
何か解決策はあるのでしょうか?
0136デフォルトの名無しさん
2007/11/25(日) 13:03:35HttpWebRequestクラスのGetResponseメソッドを使う
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/cpref/html/frlrfsystemnethttpstatuscodeclasstopic.asp
の方法ですか?
この方法では404のとき例外が発生するのですが,例外を発生させない方法はありませんか?
0137デフォルトの名無しさん
2007/11/25(日) 13:25:00寿命を永らえされる方法を考えよう。
0138デフォルトの名無しさん
2007/11/25(日) 13:28:57Form2
{
0139135
2007/11/25(日) 14:47:07FontDialog fd = new FontDialog();
if (fd.ShowDialog() == DialogResult.OK)
{}
this.DialogResult = DialogResult.None;
こんな感じでフォームが閉じないように出来たのですが、これで良いのでしょうか?
というか、わざわざ最後の行を書かないといけないのが釈然としません。
0140デフォルトの名無しさん
2007/11/25(日) 14:59:290141デフォルトの名無しさん
2007/11/25(日) 15:00:570142デフォルトの名無しさん
2007/11/25(日) 15:40:35ボタンのDialogResult?
イミワカランwwww
0143135
2007/11/25(日) 15:46:14なぜFontDialogのDialogResultがFom2のDialgResultになるのか
その動作と理由が全く分かりません・・・。
後学のためにももう少し一連の動作の説明をお願いします。
0144デフォルトの名無しさん
2007/11/25(日) 15:56:33>>140は寝言だから忘れていいと思う。
想像だけど、原因はたぶんForm2に存在するボタンが、デザイナで
Form2のAcceptButtonになってるんじゃないの?
0145デフォルトの名無しさん
2007/11/25(日) 16:16:47Form.AcceptButtonではそうはならない。
寝言とか言う前にMSDNライブラリくらい読んどけボケ
0146デフォルトの名無しさん
2007/11/25(日) 16:25:27環境は.NET Compact Framework 2.0上で以下
class From1 : Form
{
public Form1()
}
0147デフォルトの名無しさん
2007/11/25(日) 16:28:49>ButtonクラスにDialogResultというプロパティがあって、
そんなプロパティーないってw
0148デフォルトの名無しさん
2007/11/25(日) 16:38:05ほらよ
http://msdn2.microsoft.com/ja-jp/library/system.windows.forms.button.dialogresult.aspx
0149デフォルトの名無しさん
2007/11/25(日) 17:27:14それは分かったから、FontDialogのDialogResultとForm2のDialogResultとの因果関係は?
0150デフォルトの名無しさん
2007/11/25(日) 17:30:500151デフォルトの名無しさん
2007/11/25(日) 17:50:21Form2をShow()で呼べばFontDialogを閉じてもForm2は閉じないことを確認しました。
つまりはそういうことなんですね。
0152デフォルトの名無しさん
2007/11/25(日) 19:34:000153デフォルトの名無しさん
2007/11/25(日) 22:32:43>>144
>>147
0154デフォルトの名無しさん
2007/11/26(月) 00:20:120155デフォルトの名無しさん
2007/11/26(月) 00:22:39相談室に来るレベルじゃないってこと
0156デフォルトの名無しさん
2007/11/26(月) 14:50:16値のチェックとかしてないけど。
private const int prefixDigits = 48;
public static int ToInt32(this char c){
return (int)c - prefixDigits;
}
public static char ToChar(this int n){
return (char)(n + prefixDigits);
}
0157デフォルトの名無しさん
2007/11/26(月) 15:07:510158デフォルトの名無しさん
2007/11/26(月) 16:33:45冗談だよね
0159デフォルトの名無しさん
2007/11/26(月) 16:40:540160デフォルトの名無しさん
2007/11/26(月) 17:00:34おかしな所があったら指摘してね。
>>159
なるほど、その発想は無かったわ。
0161デフォルトの名無しさん
2007/11/26(月) 17:03:350162デフォルトの名無しさん
2007/11/26(月) 17:18:500163デフォルトの名無しさん
2007/11/26(月) 17:19:400164デフォルトの名無しさん
2007/11/26(月) 17:54:44(char)n.ToString()
一旦stringのインスタンス作ってるのが気持ち悪いYO
0165デフォルトの名無しさん
2007/11/26(月) 18:00:45’A' とかの文字が入ったときはどうすんの?
0166デフォルトの名無しさん
2007/11/26(月) 18:12:570167デフォルトの名無しさん
2007/11/26(月) 18:21:24■ このスレッドは過去ログ倉庫に格納されています