1 名前:最凶VB厨房 mailto:sage [2006/08/11(金) 19:40:44 ] [前スレ]VB.NET質問スレ (Part16) pc8.2ch.net/test/read.cgi/tech/1149432480/
369 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 14:21:46 ] そのお礼が366宛てだったら笑えるなw
370 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 14:28:15 ] >>369 すまん今日一番ワロタ
371 名前:365 [2006/09/11(月) 15:33:13 ] 何度もすいません。 例えば「abcABC」を「ABCabc」ではなく「aAbBcC」と並び替えるには、 どうすればいいでしょうか? 宜しくおねがいします。
372 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 15:35:58 ] >>371 ORDER BY
373 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 18:43:03 ] >>371 Public Class MyCompare : Implements IComparer(Of Char) Public Function Compare(ByVal x As Char, ByVal y As Char) As Integer Implements IComparer(Of Char).Compare Dim xLow As Char = Char.ToLower(x) Dim yLow As Char = Char.ToLower(y) If xLow = yLow Then Return -x.CompareTo(y) End If Return xLow.CompareTo(yLow) End Function End Class Array.Sort(c) の代わりに Array.Sort(c, New MyCompare())
374 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 00:08:39 ] なんでそんな面倒なことしてんだ?
375 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 00:18:57 ] 簡単にやる方法をよろしく
376 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 00:36:43 ] どぼんとかのサンプルのクラスをコピペして"Windows フォーム デザイナで生成されたコード"を 直接直した(例えばnew DataGridをnew DataGridExにするとかした)時に、そのままデザインビューが 表示出来る場合もあれば、タスクにエラーが山程出てデザインビューでDataGrigが全く表示されず コードがボコボコ消えて当然デバッグしてもマトモに動かない場合がありますが、やはり直接修正は しちゃいかんのでしょうか? (フォームのLoadに書けばいいのかな)
377 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 01:05:55 ] DataGridExとやらのクラスがきちんと定義されてれば可。 存在しないクラス名にしたらエラーが出るのは当たり前 ようするに分かってないうちはデザイン部は触るなってこった。 まあ触って学ぶってのもありだけど。
378 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 02:06:44 ] StringComparer.CurrentCultureIgnoreCase とか、元から使えるやつあるやん。
379 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 02:09:23 ] おっと、もし2.0じゃないならCaseInsensitiveComparer.Defaultとか。
380 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 02:17:32 ] >>379 それで書いてみろよ
381 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 02:23:16 ] ?? Array.Sort(c, New MyCompare()) ↓ Array.Sort(c, CaseInsensitiveComparer.Default) ってことじゃなくて?? なんか勘違いしとる俺?
382 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 02:52:02 ] おおっ勘違いしとったわwwすまんすまん。
383 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 13:01:37 ] >>377 いやもちろんクラスはあるんだわ でないと絶対動かんし 要はただ起動しただけで動いたり動かなかったりするのは何でなんだろ?と (動かない時ってのはコードがごっそり無くなって結果まともに動作しなくなる) もう一つ、DataGridなんだけど、行ヘッダクリックすれば複数行選択出来るけど、 セルからme.select(row)みたいにすると、CtrlやShift押しててもその都度選択が解除されて 新規選択になっちゃいますよね あれを回避する方法は無いでしょか? (要はアクセスのリストボックスの複数選択モードみたいにしたいんです)
384 名前:383 mailto:sage [2006/09/12(火) 15:26:23 ] 自己解決 カレントセルの列を-1にしてselectすれば出来た shiftの時は前回の選択行からfor-nextで回してやればOK
385 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 20:49:08 ] VB2003にて質問です。 現在MDIアプリを作成中なのですが 子Formを2つ作成しActiveな子Formを切り替えた際に 切り替えたFormのActiveControlのValidatingが起きなくなりました。 子Form内の別のControlにFocusを移すと動作はもとに戻るのですが なぜこのような動作するかが不明です。 どなたか教えていただけないでしょか? またFocusを移動させる事なくValidatingをハンドルできるようにする方法も合わせてよろしく お願いします。
386 名前:デフォルトの名無しさん [2006/09/12(火) 22:00:47 ] 不明も糞もそれがWindowsのGUIの仕様というかお作法でしょう。
387 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 22:50:48 ] イベントでやらずに、自分で任意のタイミングでやればいいじゃん。 イベントの発生タイミングは>>386 のとおりなんだから。
388 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 11:43:45 ] VB.NET2005の正規表現について質問です。 時間に対して正当性のチェックをしたいと思っています。 許す文字列の例 0:00 0:0 12:00 12:59 23:0 23:59 許さない文字列の例 0:000 12:61 122:00 24:00 これをやろうと思い以下のようにやりましたが、だめでした。 dim pt as string = "([0-1]{,1}[0-9]|2[0-4]):([0-5][0-9]|[0-9])$" dim time as string = ""'これはいろいろな時間の文字列 If Not Regex.IsMatch(value, pField.mPatternString) Then Throw New Exception("パターンに一致しません。") End If 正規表現に問題が有るようなので、ご指導お願いします。
389 名前:388 mailto:sage [2006/09/13(水) 11:56:03 ] 自己解決 ^([0-1]?[0-9]|[2][0-3]):[0-5]?[0-9]$ ハットを入れないとだめでした
390 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 14:06:27 ] VB.net2003で質問です。 フォームのActiveControlプロパティが変更された時に起きるイベントは無いでしょうか? フォーカスが移る度に起きるイベントをフォーム側に組み込もうと考えています。
391 名前:デフォルトの名無しさん [2006/09/13(水) 18:29:10 ] VB.NET2003です。 最大化されたForm1からForm2を下記のようにダイアログとして 呼び出しました。 Dim DialogForm As New Form2 DialogForm.ShowDialog() この時、Form2は最小化できてもForm1が最小化できない状態に なるのですが、最小化できるようにする手段はありますか?
392 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 18:31:47 ] ShowDialogはモーダルですよ Showを使えばいいけどモーダルじゃなくなりますよ
393 名前:デフォルトの名無しさん [2006/09/13(水) 18:38:43 ] うーん、打つ手なさそうですか。 とはいえForm2はモードレスにすると色々と不都合が出るし…。 ともかく、ありがとうございました。
394 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 20:51:55 ] >>393 なんつーか思い込みが激しすぎるというか、頭が硬すぎないか? Form2をモーダルで表示することには目的があるはずだが、 その目的を達成する手段はForm2をモーダルにする以外にいくらでもあるんじゃないの? 例えばForm1のコントロールを全部Enabled = Falseにするとか。(フォームは自分の コントロールのコレクションを持ってるから簡単にできる) あるいはForm2が表示されているときにForm1がアクティブになったらForm2.BringToFront するようにしといて、Form2側にForm1を最小化するためのボタンを付けるとか。
395 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 20:52:54 ] まぁ、仕様(目的)をはっきりさせろっちゅうことだな
396 名前:akl [2006/09/13(水) 23:49:17 ] 今 VB.NETで開発してるんだけど、 それを J# とか java の.NET 語の変換(コンバート) したいのだけど、 VB.NET から C# とかは 結構あるんだけど、 javaは無料で コンバートできる とこ(サイトか ソフト) ないかなぁ?
397 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 23:57:24 ] 日本語でおk
398 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 06:36:08 ] >>393 なるほどな。 いわゆる操作性の悪いソフトって、こうやって作られていくんだろう。 アプリ特有の動作とか操作体系は気持ち悪いと思うのは俺だけか? 一般的なアプリと一貫性のある動作でシンプルに動くほうが直感的にわかりやすいだろうに。
399 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 06:46:43 ] >>396 VBの開発なら、J#に変換する必要なし。そのままお続けください。 J#の開発でVBのソースを移植あるいは流用したいなら、J#のとこ行って聞きなさい。
400 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 08:24:19 ] >>398 一般論としては同意するけど>>391 の言うことも理解できるところがあるよ。 モーダルダイアログだすと元のウィンドウは移動も最小化もできず、これが 非常に鬱陶しい仕様だと思うことはある。 Windowsの操作にあまり慣れてないユーザーは特にそう感じるらしい。 (デスクトップ上のマイドキュメントをクリックしたいのにできない!みたいな感じw)
401 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 08:42:04 ] >>400 なら、別の方法を手動で操作をすればいいのでは? AddOwnedForm辺りを使って。
402 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 10:04:47 ] Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim DialogForm As New Form2 DialogForm.ParentForm = Me DialogForm.ShowDialog() End Sub [Form2] Private Sub Form2_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Resize Me.ParentForm.Visible = Not (Me.WindowState = FormWindowState.Minimized) End Sub と、最小化の際にForm1を非表示にすることで対処しました。
403 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 10:52:53 ] あ、名前入れ忘れ。>>402 =>>391 です。
404 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 17:24:50 ] PDAとActiveSyncをゲスト接続してファイルをコピーする場合 PDA本体内フォルダのパスをどう指定していいかわかりません 誰かわかる人がいたら教えてください。
405 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 21:34:51 ] モーダルなのに他の窓を弄れるとかさぁ、独自仕様は不気味じゃない? しかも非表示状態とか・・・正直ありえん。 そんな変な仕様が必要な理由は何?
406 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 22:39:33 ] arrayListに数値ばかりをデータベースからセットして同じのはListから省きたいのだけど いい関数ないかな・・。
407 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 22:51:07 ] DBから読み込む時にDISTINCTを使えばいいじゃん。
408 名前:デフォルトの名無しさん [2006/09/14(木) 22:59:20 ] >>405 最近この手の馬鹿増えたよな。 ちょっと前の話題をすぐに忘れて、何度でも同じ疑問を提示して 話を延々飽きずにループさせる奴 お前さんは鶏頭かw
409 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 23:02:42 ] DISTINCTって集約する値のみselect文に追加できるんですよね・・。 (当たり前か・・) 違うフィールドも参照したいのです。 そういうときって入れ子みたいにするんですかね・・・ select 登録月 from 利用テーブル Where ID=A in (select * from 利用テーブル Where 住所 = "東京") こんな感じかな・・・。
410 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 23:06:23 ] 間違えた Select DISTINCT 登録月 from 利用テーブル Where ID = A IN (select * from 利用テーブル Where 住所 = "東京")
411 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 23:09:21 ] 間違えた逆か・・・ select * from 利用テーブル Where 登録月 IN (Select DISTINCT 登録月 from 利用テーブル Where ID = A) こんな感じですかね・・・。
412 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 23:53:20 ] どうでもいいけどVB.NETと何の関係が。
413 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 00:07:20 ] >>411 わざわざ副問い合わせしなくても、住所="東京" AND ID="A"を抽出 条件にしたらあかんの?
414 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 07:02:06 ] >>413 それじゃあ抽出内容が変わってしまうと思います。 >>412 初めはDataset(またはdatagrid)とかでやれないかと思ったのですが、 SQLでできるなら関係なかったです。すみません・・・。
415 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 08:17:08 ] 何がやりたいのかしらないけど、同じテーブルを2度も読む必要なんてないよ
416 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 09:18:04 ] >>414 >>それじゃあ抽出内容が変わってしまうと思います。 どう変わるのか具体的に説明してくれないか?
417 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 10:32:34 ] 414は、まともな質問もできないくせに自論を展開して自己解決。 人の話なんて最初から聞くつもりないんだよ。 「登録月」って時点で、今年のことしか考えてないダメ設計なDBかもしれないし。
418 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 12:02:54 ] 間違いなくSQL素人だし
419 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 23:06:20 ] いやね、プログラムの中でも特にSQLは、あんたがやりたいことをきちんと日本語で説明しろと。 プログラムだと、Windowsの用語とか、プログラムの技量があるから若干難しいけど。 データをどのように集計したり抽出したいか、日本語で相手に伝わらないようなことを、SQLなんかにできっこないじゃん。w
420 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 10:26:48 ] ここっていつみても答えるほうがバカだなw
421 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 12:06:27 ] 聞くほうもバカだからな。
422 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 12:22:54 ] >>420 >414乙
423 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 19:40:56 ] #Region ディレクティブはファイルを開いたときに折りたたまれていますが マウスを使わずに一気に開くとか規定値を開いた状態にするとか出来ますか? #Region をやたらと使っているプログラムがあってソースファイルを開くと 折りたたまれたRegionが5〜10個くらい表示されているだけで いちいちマウスでクリックして開かないといけないので鬱陶しくてかなわん。orz
424 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 19:53:07 ] どっちもできたはず。
425 名前:デフォルトの名無しさん [2006/09/16(土) 20:32:51 ] キーボードショートカット使えよ そんなのいちいちマウスでやってたら腱鞘炎になっちゃうよw
426 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 21:52:06 ] >>423 開いてるソースのほうがうっとうしいと思うが。 綺麗に関数化されていて、それが綺麗にRegionでまとまってれば、そんなに開くことが無い。 コントロールから作ったイベント関数とかが逆にうざい。 人がせっかくきれいにRegionわけしてるのに、かってに最後に追加しやがる。
427 名前:デフォルトの名無しさん [2006/09/17(日) 00:35:17 ] >>425 キーボードからRegionの折りたたみを開けましたっけ? >>426 本人は綺麗にRegion化しているつもりだろうけど他人から見たらオレオレRegionです。 折りたたみなんてウザイだけ。 RegionなんてFormのところだけで十分。
428 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 01:26:11 ] ///のコメントだけ展開してくれる機能とかあったらいいのに。
429 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 01:39:49 ] >>425 あー、おれも知りたい。 あとコメント付けたり外したりするショートカットもあればいいなぁ。
430 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 01:58:37 ] 知りたいも何も、自分で設定しろよ
431 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 04:13:37 ] c-ml(c-lmだったかも) c-kc c-ku てか調べろよ。
432 名前:デフォルトの名無しさん [2006/09/17(日) 12:06:07 ] >>429 msdn2.microsoft.com/ja-jp/library/cftd38f0.aspx キーボードのスキームをVB6にしてると微妙に違うかもね。
433 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 13:57:31 ] >>432 おお、さんくす。 使いそうなのを印刷して貼っておくよ。
434 名前:デフォルトの名無しさん [2006/09/17(日) 22:37:54 ] パスワードの条件がアルファベットと数字の混合である基本的な フォームを作りたいんですが、IsLetterOrDegitを使わずに作る にはどうしたらいいでしょうか。Select Caseで作れないでしょうか。
435 名前:デフォルトの名無しさん [2006/09/17(日) 22:59:42 ] >>434 プログラミング以前にまず正しい日本語をマスターすべきじゃないかと思うよ。
436 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 23:00:24 ] >>434 もっと詳しく「何がやりたいのか」を書いてくれ。 おまいさんの言う「フォーム」の意味もわからん。
437 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 23:25:50 ] >>436 テキストボックスにパスワードを入力させる際に、 数字のみ、もしくは英語のみではエラーになる仕組みの 簡単なアプリケーションが作りたいんです。 そのエラー判定をどうしたらいいか悩んでるんです。
438 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 23:27:32 ] そんなロジックのことで悩んで人に聞く程度ならやめちまえ、と思う。
439 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 23:44:20 ] MaskedTextBox
440 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 23:50:31 ] >>439 ありがとうございます。 でも、書式・形式じゃなくて 判定方法が知りたいんです。
441 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 23:59:40 ] 1文字づつ見て数字と英字の数を数えりゃいいだろ
442 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 00:02:52 ] こういう人ってプログラムすることって何だと思ってるんだろう・・・。 せめて入門書は1冊、最近だとネットで入門サイトあるんだから@ITとか見ればいいじゃん。
443 名前:デフォルトの名無しさん [2006/09/18(月) 00:04:43 ] >>440 この機会に正規表現を使ってみるのがいいと思うよ。 テンプレの「いきましょ」と「@IT」に分かりやすい解説がある
444 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 00:06:18 ] >>440 select passwd case "A" case "AA" case "AAA" 中略 case "AAB" case "AAC" 1〜10文字くらいでエラーになる文字列を全てCASE文で 並べれば出来るだろう。 正しい文字列をCASE文で並べて、それ以外をエラーにしても良いと思う。
445 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 00:08:33 ] >>444 それだ!
446 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 00:10:07 ] >>444 おまいノーベル賞並みの天才だな
447 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 00:19:12 ] 皆さんありがとうございます。 >>444 実は Case "a" To "z", "A" To "Z" hasAlpha = True Case "0" To "9" hasNum = True で If hasAlpha = True And hasNum = True Okメッセージ これでやってるんですが、うまくいかないんです。
448 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 00:21:19 ] まず、どうやったら良いかを考える前に、 それの何がいけないのか、どうしてこんな馬鹿なことを考えたのか、 それらが解るようになるまで勉強し直しておいで。
449 名前:デフォルトの名無しさん [2006/09/18(月) 00:25:16 ] >>447 まあこのスレは精神的幼児が多いから無視していいよそういうのはw VBのSelect Case はC系のとそれと違ってマッチする条件があるとそのままBreakするから それでは正しく動かない。
450 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 00:31:02 ] >>449 やっとひとつ理解できました。 ということは、Select Caseを使ってアルファベットと 数字を別々に判定することは無理なんですかね。
451 名前:デフォルトの名無しさん [2006/09/18(月) 00:33:59 ] そうだから正規表現覚えるのが結局一番早いよ。 今後の応用範囲も広がるし
452 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 00:35:13 ] 正規表現っていうのはこの場合何でしょう?
453 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 00:36:06 ] この場合もクソもないでしょ
454 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 00:39:23 ] >>447 そのSelectは何に対してやってるんだ? パスワード全体に対してやっても意味無いぞ。 ループの中でパスワードの1文字ずつに対してやればうまく行くんじゃないの?
455 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 00:42:00 ] 甘やかしな教えた君が増えると、努力もしない教えて君が調子ぶっこいて何でも聞いてくるようになるから嫌だよな。
456 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 00:50:36 ] ここ質問スレなんだけどw
457 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 00:52:48 ] つってもvb以前の質問はねー
458 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 00:53:15 ] まあ質問者が自分で考えもしない超低レベルなら、回答者も馬鹿揃いだから、丁度いいんじゃね?
459 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 02:06:09 ] C#スレみたいに本スレと初心者スレ分ければいいんじゃね? C#のほうはあんまり機能してないけど
460 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 07:36:09 ] 質問とか初心者以前だろ? どうしたらいいか? 正規表現。 これで終わってる話。 それを調べて判らない点が出たら再質問。それが常識。 会社の新人で、ここにいる質問の人みたいのいたらケリだよ。
461 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 09:44:33 ] 434じゃないけど便乗質問。 自分の頭では"(全部数字)|(全部英字)|(全部英数字)"にマッチして、 グループ1と2が空でグループ3が空じゃなかったらOKというのしか思いつかなかった。 マッチしたかどうかで一発で判定できる正規表現って書ける?
462 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 11:30:18 ] 検索文字列がパターン化できないのであれば正規表現は使いにくいよ。 「英字が入ってる AND 数字が入ってる」でチェックして、外れたの はやり直しって感じでいいんでない? ttp://homepage1.nifty.com/rucio/main/technique/InputChk2.htm
463 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 12:56:04 ] 最低・最悪のユーザー・エクスペリエンスと評判の .NETアプリ こんな素晴らしいクソ言語の学習に皆さんがんばって下さい
464 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 13:08:45 ] 学習、なんて言っているうちは何を言っても説得力無し。
465 名前:デフォルトの名無しさん [2006/09/18(月) 13:51:11 ] すいません、上記の方々と別件なのですが、正規表現で質問です。 「?:@123xxxxx」という文字列を含むinstrを「@123」へ変換したいと思っています。 ※「?」「:」「@」は普通の文字として扱う。 以下のような正規表現で変換しようとしたら、resultがNothingになってしまいます。 result = System.Text.RegularExpressions.Regex.Replace(instr, "\?\:\@(\d\d\d)(\w+)","\@$1") ちなみに以下のようにしたら、例外が発生。 result = System.Text.RegularExpressions.Regex.Replace(instr, "?:@(ddd)(w+)","@$1") VB.netの正規表現ではどのように表現すればよろしいでしょうか。 よろしくお願いいたします。
466 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 13:54:33 ] エスケープする必要がある文字とない文字を MSDN で調べれ
467 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 14:37:58 ] 検索パターンに余計な\を入れても無視されるだけで戻り値がNothingになることは無いと思うんだが。
468 名前:465 mailto:sage [2006/09/18(月) 15:05:20 ] >>466 以下のように変更したら、キチンと値が帰ってくるようになりました。 どうもありがとうございまいした。 work = System.Text.RegularExpressions.Regex.Replace(instr, "\?:@(\d\d\d)(\w+)","@$1") >>467 私も今までPerlやJavaでは465のように書いていて問題なかったため、 VB.NETでも同様だと思ったのですが、Nothingになってしまいました。 VB.NETでは厳密にエスケープ文字を判定しているようですね。。。
469 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 19:11:55 ] >>411 select * from 利用テーブル Where 登録月 でdatasetに書き込み その後datavviewでID=Aとかいくらでも抽出しればいくね。
470 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 19:15:04 ] 正規表現文字クラスの[]指定内で前方参照する方法ってある? (['"])[^\1]+\1 みたいな(ここの2つ目の[]のやつね)。 上のは、'か"で囲まれた文字列の検索。
471 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 19:15:46 ] ここって思うし、質問する人間と回答する人間、経験何年と年収いくらか一緒に記載すると、 返答も相手のレベルに合わせられるし、質問した方も、回答の理解の仕方が上がるんじゃない? 普通会社では相手が見えるから、お互いのレベルを分かった上で話すじゃん。 そう思うのは私だけかい?
472 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 19:56:36 ] >>471 そんなの質問に必要ない。 適切な日本語で質問を表現できること、会話になること。 本人が言われたことに対して試してフィードバックできること。 それだけ。
473 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 20:01:22 ] >>471 日本語でお願いします
474 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 20:23:21 ] >>472 ほぼ同意。 それに加えて「雑音を聞き流す大人の対応」もできれば大吉。 煽るだけで有益な情報のない脊髄レスは脳内フィルタリングするべし。
475 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 20:23:23 ] >>471 たった数行のレスで相手のスキルを推測し真性なのか釣りなのか即座に 判断できないようでは一流のSEとは言えん。
476 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 20:34:31 ] エスパー乙。 今後も行間を読みまくって適切な解答を書いてください。
477 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 20:41:20 ] このレスの住人はユーモアを理解せぬようだの。
478 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 20:54:08 ] レスには住めんのう…
479 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 20:58:10 ] >>478 面白くない。 Debug.Print()百回やって出直してこい。
480 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 21:10:04 ] ループでまわしていいですか?
481 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 21:17:58 ] >>480 gotoにしとくと飯が旨く感じるらしいぞ
482 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 21:35:53 ] 残念、オレはconsole.writeline()だ
483 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 21:51:54 ] >>479 ドトネトらしく System.Diagnostics.Debug.WriteLine() を使えよ!!
484 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 21:54:38 ] うーん、ここって高度な技術者なのかな・・全然日本語がわからない。
485 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 22:22:32 ] >>470 ベタに書けばこんなんだが (?<quote>'|")(?<match>(?!\k<quote>).+)\k<quote> 最長一致じゃ拙いように思うがね // グループに名前付けてるのはわかりやすさを優先したから
486 名前:デフォルトの名無しさん [2006/09/19(火) 03:57:27 ] VB.netで、画像加工のアプリを作ってるんですが、 ブラシを使って塗りつぶして、保存した後、フォトショップで開くとエラーが出て開けません。 あと、mixiのプロフィールの画像に指定しようとアップロードすると、 「画像が壊れています」とエラーが出て失敗してしまいます。 他のアップローダでアップするとちゃんといけて、表示もされました。 原因が分かる方教えてください。
487 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 14:21:10 ] どうやって、どんな形式で保存しているのか。 それが問題だ。
488 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 15:34:53 ] クソ言語 VB.NET
489 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 22:01:40 ] VB6からのイメージだけで思ってないか? まあ漏れも使ったことないけど
490 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 22:17:57 ] VB6ユーザーを何とか移行させたくてどんどんクソ言語になって来てるのは事実
491 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 23:30:46 ] 2003までで乗り換えがうまくいかなかったからか、2005では驚くほど 6.0ユーザーに擦り寄ってるの見え見え。
492 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 23:46:59 ] 諦めてVB6を再販すれば無問題。
493 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 00:07:33 ] マクロの DTE.Find.Execute() で検索を実行すると末尾まで検索すると 先頭に戻って検索を繰り返すのですがどうやったら止めれるのでしょう?
494 名前:デフォルトの名無しさん [2006/09/21(木) 15:21:36 ] リストビューのcontextmenuを使ってポップアップメニューを作る際、 右クリックされたのが、 カラムヘッダーのときと、 リストのアイテムのときと、 アイテムの無いリスト部分のときとで、 ポップアップメニュー表示非表示を切り分けるってことできます? どうしても、どんな場合でも右クリックしたらメニューが表示されてしまいます。 同一コントロール内で、どこでクリックされたかの判断したいです。
495 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 16:51:39 ] >>494 できるよ。 >どうしても、どんな場合でも・・・(ry それは嘘だろー どうやったのか書いてくれ。 何もしてないんだろ?
496 名前:494 mailto:sage [2006/09/21(木) 17:41:33 ] >>495 申し訳ない。 私がウソコでした。 ContextMenuプロパティから操作しようというのが間違えていました。 素直にMouseUpイベントからGetItemAtメソッドでできました。 ありがとうございました。
497 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 08:51:17 ] MDIについての質問です。 UserControlから呼び出すフォームを親フォームのMDIに表示しようとして躓いています。 Parentプロパティを送るときに例外「トップレベルのコントロールをコントロールに追加できません」が発生します。 Me.ParentFormのIsMdiContainerはTrueになっています。 UserControlのイベント内で、 Dim f as New Form f.Parent = Me.ParentForm←ここでエラー f.Show()
498 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 09:40:28 ] ParentじゃなくてMdiParentじゃないの?
499 名前:497 mailto:sage [2006/09/22(金) 10:01:51 ] >>498 あああああっ 俺、何やってんだぁぁぁ(T.T ども、ありがとです
500 名前:デフォルトの名無しさん [2006/09/22(金) 11:19:37 ] ComboBoxで質問ですが Itemsで追加した文字列のほかに任意の数値(文字でも可)を指定する方法ってありますか? 例えば、 aaaa,0 bbbb,3 cccc,4 ドロップダウンに表示するのはaaaa、bbbb、ccccで SelectedIndexが2のときにはccccと4が抽出できるような・・・
501 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 11:38:11 ] DataSource DisplayMember ValueMember
502 名前:デフォルトの名無しさん [2006/09/22(金) 12:26:51 ] >>501 それはデータベーを使わなくても使えますか? つか、以前のVBで言うところのItemDataって奴があればいいとおもって調べたら SetItemDataってのがNETにはあるっぽいのでやってみたらエラーに・・・ これどうやって使えばいいのかな・・
503 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 12:49:05 ] >>502 それくらいMSDN嫁
504 名前:デフォルトの名無しさん [2006/09/22(金) 13:24:45 ] >>503 ('д`)えー あのエスパーにしか解読できないヘルプをですか・・・ こっちがヘルプしてほしいくらいのヘルプだよねMSのって(´・ω・`)
505 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 13:28:38 ] >>504 ならぐぐるとか。
506 名前:デフォルトの名無しさん [2006/09/22(金) 13:55:04 ] >>595 ぐぐってみました。 どうやらVB6からアップデートしたらSetItemDataが使えるらしいですが 新規でNETならそれはできないらしいですね。 ちょっと>>501 のアレをみてみるかな
507 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 23:24:17 ] >>504 自分の読解力を棚に上げてる可能性が5割。 英語の原文読めばいいのに読んでない可能性が5割。
508 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 23:30:02 ] createobjectでIEのオブジェクトを作成しているのですが 最前面で表示されない場合があります。 最前面で表示される方法はないでしょうか? よろしくお願いします。 dim ie as object ie = createobject("InternetExplorer.Application") ie.visible = true ie.navigate2 "www.google.co.jp" '最前面へ
509 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 23:31:37 ] >>507 MSDNの日本語訳は原文にある重要な説明が省略されていたり酷いもんだな〜 で、結局、原文の方を読まないと使い物にならない。 あんな訳なら自動翻訳のがマシ。
510 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 23:38:01 ] >>508 SetForegroundWindow
511 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 00:45:33 ] >>492 MSDNライブラリで再販というか公開再開されてたな。MSJava部分を削除して。 よっぽど需要が多かったんだろう。 >>509 さすがに「宇宙天啓データベース」よりは… まあ人間が「意図的に」重要な部分を脱落させる方がたちが悪いかもだけど
512 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 08:16:55 ] Int32からIntPtrへキャストする方法教えてください。
513 名前:512 mailto:sage [2006/09/23(土) 08:26:39 ] 事故解決しました。
514 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 08:28:02 ] コンストラクタ
515 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 10:40:45 ] これだけ乗換えが進まないってことは、 オブジェクト指向が糞ってことだよな。
516 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 10:50:49 ] VB脳には高度すぎたんだよ
517 名前:デフォルトの名無しさん [2006/09/23(土) 12:26:57 ] >>509 実際にオリジナルの英語版と日本語の翻訳を読み比べたことがないのがバレバレ MSDNの翻訳は極めて適切だっつーにw わかりにくいのは翻訳のせいじゃないし
518 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 12:49:28 ] >>517 Platform SDK 辺りのは強ち間違いでもない。 絶対数としてはそう多くはないが、やはり間違いは印象に残るからな。 MSDN2 では極めてと言っても良いぐらいに質が高くなったね。
519 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 15:41:17 ] OleDbでFirebirdを使うプログラミングをしてるのですが、 ExecuteNonQueryメソッドやExecuteReaderメソッドで、 「指定されたキャストは有効ではありません。」という例外が発生します。 Dim oConn As OleDb.OleDbConnection Dim com As OleDb.OleDbCommand Dim oCmd As OleDb.OleDbCommand Dim oReader As OleDb.OleDbDataReader oConn = New OleDb.OleDbConnection oConn.ConnectionString = "File Name=C:\test.udl;" oConn.Open() oCmd = oConn.CreateCommand() oCmd.CommandText = "select * from country where country = 'USA'" oReader = oCmd.ExecuteReader() While oReader.Read() Debug.WriteLine(CStr(oReader("COUNTRY")) & "," & CStr(oReader("CURRENCY"))) End While oReader.Close() oConn.Close() 何か間違えているところはありますか?
520 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 15:49:39 ] GetHogehoge メソッド使って .NET の型で取得すれ。
521 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 20:32:10 ] >>517 昔のMSDNはwsprintf()の1,024バイト制限の記述が日本語の方では漏れていたり 結構酷いもんだったよ。こんなの致命的でしょ。 で、最近は英語の方しか見ないのでいちいち対比なんてしてません。w
522 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 20:49:56 ] 化石 乙
523 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 21:22:46 ] 3年で化石か。
524 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 22:06:17 ] この場合msdn2に移行というイベントがはっきりしてるわけで
525 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 22:40:01 ] 英語版MSDN2をローカルに入れられるインストーラはありますか?
526 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 23:05:45 ] でも、MSのサイトでみる自動翻訳はやっぱりむごいよ。 てにおはが間違ってるんだもん。読んでて疲れる。
527 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 23:16:56 ] 自動翻訳に文句言っても仕方ないだろw
528 名前:デフォルトの名無しさん mailto:sage [2006/09/24(日) 03:48:46 ] どうでもいいがMSDNでまともに探せないとか見つけても理解できない奴は VBに限らず何やっても相当苦労すると思う。 むしろ対話式で質疑応答しないと出来ない奴がプログラミングしてるってのは凄いと思う。 どれほど難しく見えてるのか想像つかん。まじで
529 名前:デフォルトの名無しさん mailto:sage [2006/09/24(日) 06:46:48 ] ああ、違いない。どうでもいいことだな。
530 名前:デフォルトの名無しさん mailto:sage [2006/09/24(日) 09:21:11 ] VB.NET 2005 の TreeViewコントロールに関して教えていただきたいのですが、 Shiftキーを押しながらマウスがホイールされたら一度に表示可能な項目数分を スクロールさせたいのですが、どうやったら良いでしょうか。。。 イメージとしては下記のコードのような感じです・・・・(コンパイルできませんが;;) Private Sub TreeView_MouseWheel(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TreeView1.MouseWheel If CBool(Control.ModifierKeys And Keys.Shift) Then Select Case e.Delta Case Is < 0 '下に TreeView1.VisibleCount 分スクロール e.Delta = TreeView1.VisibleCount * -1 '←ReadOnlyなので値を入れられない Case Is > 0 '上に TreeView1.VisibleCount 分スクロール e.Delta = TreeView1.VisibleCount '←ReadOnlyなので値を入れられない End Select End If End Sub
531 名前:デフォルトの名無しさん [2006/09/24(日) 12:25:58 ] お前らの言いたいことはわかったから、おれのマシンの 「問題が発生したため、Microsoft(R) Visual Basic Compilerを終了します。 ご不便をかけて申し訳ありません。」 をどうにかしてくれ。 謝る前に直せよ、ビル・ゲイツ。
532 名前:デフォルトの名無しさん mailto:sage [2006/09/24(日) 15:29:46 ] まあ、2chで文句言ってる暇あったらインストールしなおすよな。OSから。
533 名前:デフォルトの名無しさん mailto:sage [2006/09/24(日) 23:01:07 ] 俺のマシンは夏休みと冬休みにバックアップ&初期化&フルインスコ してるよ。95OSR2時代からの癖みたいなもんだ。
534 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 15:08:31 ] MAPIでOutlook2002sp3以降にアクセスした際の警告ダイアログ、 プログラムが、Outlook 内に保存されている電子メールアドレスに アクセスしようとしています。よろしいですか?」ってやつ。 あれってExchangeServerの設定いじる以外にどうしようもないですかね。 クライアントのレジストリいじくれば何とかなりそうなんだが。
535 名前:デフォルトの名無しさん [2006/09/25(月) 15:41:12 ] ComboBoxのSelectedIndexChangedイベントでは変更後のSelectedIndexですが このSelectedIndexの変更前の値を知る方法を教えてください
536 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 16:01:27 ] Enterで値確保しとけば?
537 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 16:38:35 ] 初期値をフィールドに入れといて SelectedIndexChangedの度にそのフィールド更新したらいいじゃん
538 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 17:24:58 ] PostMessageを使って別のEXEにメッセージを送りたいんだけど Spy++で見てもなぜかメッセージがPostされてません 同じように宣言と設置をしてるFlashWindowはちゃんと動作してるので ハンドルの取得ミスとかではないと思うのですが、、、 PostMessageには何か特殊なやり方があるのでしょうか? 宣言↓ Public Declare Function PostMessage Lib "user32" Alias "PostMessageA" _ (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
539 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 17:27:28 ] それVB6用だろ
540 名前:538 mailto:sage [2006/09/25(月) 17:38:33 ] >>539 もしかしてLongのところ全部Integerですか?? と思って全部換えたら動きました ありがとうございました! 日ごろVC++ばっかり使ってたのでVBの仕様の違いをしりませんで、、 すいませんでしたorz
541 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 20:39:13 ] >>540 つ ttp://www.pinvoke.net/default.aspx/user32/PostMessage.html
542 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 21:09:44 ] デバッガでStringとかの値が16進値で表示されないんですが仕様ですか?
543 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 21:36:54 ] 仕様です て言うかその16進値ってのは何を指してるんだ
544 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 22:29:02 ] >>543 CR/LFとかのコードが入ってるか見たいわけよ。
545 名前:デフォルトの名無しさん mailto:age [2006/09/25(月) 22:30:19 ] お世話になります。 Asp.netでボタンを押下した時にクライアントサイドに メッセージボックス表示、そして 処理の途中にもう一度メッセージ表示するには どうしたらいいでしょうか?
546 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 22:58:50 ] ngen.exe の使いかたがよくわからないんだけどどうやるの?
547 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 23:10:50 ] ngen /?
548 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 23:46:34 ] 「フォームの作成」と「プロシージャの記述」とは主にどのような作業のことを指すのですか? できれば、簡潔にまとめてほしいです。
549 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 23:48:56 ] まあ簡潔にいうと君はプログラマには向いてないってことでしょう。
550 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 23:55:12 ] だな。 最近多いよね。基本的な入門書も読まずにプログラム組む新人。
551 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 00:04:32 ] >>550 組むわけではないんですが、都合上どうやるのかを知っておかなくては行けないんです。
552 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 00:21:46 ] フォームの作成 フォームのインスタンスをコンストラクトすること プロシージャの記述 プロシージャをディスクライブすること
553 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 00:27:37 ] >>552 上は分かりますが、下はそのままじゃないですか。 もうすこし、詳しく教えていただけませんか?
554 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 00:32:26 ] プロシージャの記述 プロシージャをコンポーズするステートメントをディスクライブすることによって プロシージャとしてのファンクションをコンポーズすること
555 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 01:42:14 ] もうやめれw
556 名前:デフォルトの名無しさん [2006/09/26(火) 09:38:07 ] ・フォームの作成 フォームを精魂込めて我が子を育てるがごとく作成すること。 ・プロシージャの記述 関数の記述は一関数入魂が基本です。血の出るほどの魂を込めて記述しましょう。
557 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 11:01:55 ] >>548 「フォームの作成」 ボタンやテキスト・フィールド、コンボ・ボックス等のGUI部品を並べて画面を作る事です。 「プロシージャの記述」 フォームの作成で作ったボタン等が押された時に何かの計算をするとかデータベースから 値を読み込むとかのプログラム処理を記述します。 # >>548 がのクライアントだったらどうするよ? しかもおエラいさん。 # いい加減なことを吹き込んで苦労するのはおまいらだ。w
558 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 11:03:02 ] 日本語が変だ。orz
559 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 11:05:52 ] 思ったより簡単に沢山釣れましたので満足です。 どう見ても釣堀りです。ありがとうございました。
560 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 15:08:14 ] VB.NET2003でコントロールのサブクラス化がしたいのですが サンプルをいただけないでしょうか?
561 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 15:17:55 ] support.microsoft.com/default.aspx?scid=kb;ja;311317
562 名前:560 mailto:sage [2006/09/26(火) 15:32:27 ] すみません。事故解決しました。
563 名前:560 mailto:sage [2006/09/26(火) 16:01:29 ] Protected Overrides Sub WndProc(ByRef m as System.Windows.Forms.Message) If m.Msg = &h201 Then 'WM_LBUTTON_DOWN If Msgbox("キャンセルしますか?") = vbYes Then Return End If End If MyBase.WndProc(m) End Sub としてキャンセルのときは左クリックを無かったことにしたいのですが 上記のようにただのReturnですと左クリックのメッセージが うまくキャンセルできていません。 次の左クリックが無効になってしまいます。 綺麗なキャンセルのやり方があれば教えてください。 よろしくお願いします。
564 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 21:13:15 ] >>563 釣り? そりゃクリックとキー入力じゃメッセージ違うでしょ。 っていうか、ドトネトじゃそういうやり方はどっちかというと邪道。 OnClickをオーバーライドした方が簡単だしわかりやすい。
565 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 21:16:15 ] つーか、そんな糞UI誰が喜んで使うんだと小一時間
566 名前:563 mailto:sage [2006/09/26(火) 21:19:58 ] すみません。事故解決しました。
567 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 21:22:40 ] 完全に頭おかしい奴だなw
568 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 11:34:38 ] PictureBox1.ImageLocationに、 リファラーを設定してWeb上の画像を表示する方法を教えてください。
569 名前:デフォルトの名無しさん [2006/09/27(水) 11:48:38 ] リファラーを設定を設定します
570 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 12:36:18 ] PictureBox1.ImageLocationに、 リファラーを設定してWeb上の画像を表示する方法を教えてください。
571 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 12:42:09 ] 572 :570 :2006/09/27(水) hh:mm:ss すみません。事故解決しました。 って来る予感w
572 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 12:42:39 ] PictureBox1.ImageLocationに、 リファラーを設定してWeb上の画像を表示する方法を教えてください。
573 名前:570 mailto:sage [2006/09/27(水) 13:08:42 ] みません。事故解決しました。
574 名前:568 mailto:sage [2006/09/27(水) 13:14:20 ] PictureBox1.ImageLocationに、 リファラーを設定してWeb上の画像を表示する方法を教えてください。 誰も解らないのですか?
575 名前:563 mailto:sage [2006/09/27(水) 13:24:06 ] HTTPで画像を取ってきてPicutureBox1にロードすればいいのでは?
576 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 13:33:04 ] 画像の置き場の管理者に 「リファラみんじゃねーぞ(゚ロ゚)モルァ!! 」 ってメール打て
577 名前:568 mailto:sage [2006/09/27(水) 14:20:36 ] PictureBox1.ImageLocationに、 リファラーを設定してWeb上の画像を表示する方法を教えてください。 ここはラベルの低いスレですね
578 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 15:31:46 ] ヒント インターネットRFC辞典を読め
579 名前:568 mailto:sage [2006/09/27(水) 16:19:56 ] PictureBox1.ImageLocationに、 リファラーを設定してWeb上の画像を表示する方法を教えてください。 ほんと皆さんにはがっかりです
580 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 16:30:18 ] 池沼?
581 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 16:44:45 ] エロ画像Browserでも作ってるんだろうな
582 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 17:09:32 ] PictureBox1.ImageLocationに、 リファラーを設定してWeb上の画像を表示する方法を教えてください。 全然役に立たないですね
583 名前:568 mailto:sage [2006/09/27(水) 17:58:37 ] PictureBox1.ImageLocationに、 リファラーを設定してWeb上の画像を表示する方法を教えてください。 オナニーは抜いた後にしてください。
584 名前:真の568 mailto:sage [2006/09/27(水) 18:10:19 ] みんな興味深々じゃんwww 教えたれよ
585 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 18:10:27 ] 解答もらえてる質問ともらえてない質問には大きな差がある。 質問するなら他の質問の仕方を見てみろ。
586 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 18:18:55 ] 解答もらえてる質問 →簡単な質問 もらえてない質問 →難しい質問
587 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 18:49:31 ] >>568 なぜリファラーが必要だと思うのか説明してくれよ。 本当はリファラーかどうかもわからないんだろ? >>586 典型的な答えてもらえないタイプだな。
588 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 19:18:28 ] PictureBox1.ImageLocationに、 リファラーを設定してWeb上の画像を表示する方法を教えてください。 無駄なレスは不要です
589 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 19:21:13 ] しばらく構わずに放っておいたらどこまで続くだろうな。
590 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 19:21:54 ] PictureBox1.ImageLocationに、 リファラーを設定してWeb上の画像を表示する方法を教えてください。 質問する時間帯が悪かったみたいですね
591 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 19:47:23 ] PictureBox1.ImageLocationに、 リファラーを設定してWeb上の画像を表示する方法を教えてください。 荒らしてた厨房は今頃宿題ですかね
592 名前:真の568 mailto:sage [2006/09/27(水) 20:06:50 ] >>587 例えば、ITMadiaはリファラーを設定しないと画像直リンできません。 image.itmedia.co.jp/bizid/articles/0609/27/top_news091.jpg とかをフォーム上で表示したい場合、 リファラーに www.itmedia.co.jp/ を指定するとDLできます。 なので、リファラーは必要です。 ターゲットURLとリファラーURLを引数として、 ターゲットURLにリファラーURLをセットしてPOSTし、 対象をDLするSubプロシージャーを作りたいのです。 どなたかテンプレを。。。
593 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 20:30:57 ] HttpWebRequest 調べれ 自前で取ってくる必要がある
594 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 11:02:57 ] クソ言語 VB.NET
595 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 18:30:30 ] >>594 馬鹿とハサミは使いよう。 言語も同じく。
596 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 19:15:50 ] 言語つーより、このツール自体ゴミですね。 なにこの操作性?まともな開発ツールじゃないよ? どこかの素人学生がつくったようなツールだ
597 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 19:20:48 ] スレ違い
598 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 19:21:56 ] いやVB.NETの事なのでスレ違いじゃないですよ
599 名前:596 mailto:sage [2006/09/28(木) 19:31:47 ] あ、開発ツールの話は、 Visual Studio 2005スレ Part16 pc8.2ch.net/test/read.cgi/tech/1159099219/ ですね^^ すいません。私の頭にウジが沸いているんです。許してください。
600 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 03:11:25 ] vb.netで、DataGridのカラムヘッダーのソート方向を表す▲の色ってどのオブジェクトで変更できます? DataGridのBackgroundColorとHeaderBackColorを同じ色にしたら三角が見えなくなったので、 別の色に変更したいです。
601 名前:デフォルトの名無しさん [2006/09/29(金) 14:39:57 ] DataSetの中に、Tableがあるかないかを取得するには、どうしたらいいですか?
602 名前:601 [2006/09/29(金) 14:59:01 ] Dim tb1 As DataTable Dim str1 As String For Each tb1 In ds.Tables str1 = tb1.TableName If str1 = "Table1" Then MsgBox("Table1は、ないです。") Exit Sub Else MsgBox("Table1は、あるです。") End If Next tb1 ↑みたくしてみました。 もっと、うまい方法があるのかな?
603 名前:デフォルトの名無しさん [2006/09/29(金) 15:02:54 ] あ!↑あるとない逆でした///。
604 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 15:16:11 ] >>601 つds.Tables.Contains(テーブル名) あと602のコードだけど実行したら ないです→ないです-(以下見つかるまでループ)→あるです ってブラクラみたくなると思うんだが
605 名前:デフォルトの名無しさん [2006/09/29(金) 15:22:08 ] そんなあるか無いか調べないと駄目っていう状態で作りたくないな。 質問者の設計が糞だと思う。
606 名前:600 mailto:sage [2006/09/29(金) 15:39:14 ] help me, please...
607 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 16:21:30 ] >>606 自前で描画
608 名前:デフォルトの名無しさん [2006/09/29(金) 16:39:23 ] VB.NET始めて2ヶ月の初心者です 学習用のサンプルで CInt(x) と CType(x, integer) というのが出ていたのですが、これって同じ結果になるものですか? それとも状況によって使い分けたりするものなのでしょうか
609 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 17:01:48 ] >>606 描画がいやなら、別の色組み合わせを検討してみよう。
610 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 17:14:01 ] >>608 VB.NETのキャストは何種類かある CType(val, T)は汎用。ちなみに失敗するとInvalidCastExceptionが出る。 CIntとかCLngとかは6.0以前の遺産じゃないかな?まあ型指定の手間省けるけど。 これらも変換できないときはInvalidCastExceptionを投げる。 ちなみにTryCast(obj, T)だと失敗したときはNothingが返される。ただし参照型限定。
611 名前:デフォルトの名無しさん [2006/09/29(金) 17:38:09 ] >>604 Containsで、できました!嬉しいです。ありがとうございました。 ソースをコピペしたとき、なにげなしに、<> のとこを = に変更しちゃったので、 ブラクラになってしまいました。ホントは、Exit Subは下の段です。。 すみませんでした。。
612 名前:600 mailto:sage [2006/09/29(金) 17:40:25 ] >>607 >>609 サンクスです。 基本的に逃げ道は無いということですね…。
613 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 20:18:33 ] >>610 System.Convertと言うのもあるな。
614 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 22:45:52 ] 行き先の型が確定してるなら、DirectCastが良い。
615 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 23:34:24 ] 質問スレと関係ねえけど、先進性を売りにしてるドトネト諸言語でも キャストと変換が峻別されてないのはどうにかならんかねと思う。
616 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 03:32:23 ] >行き先の型が確定してるなら、DirectCastが良い。 おかしなことをゆうな。
617 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 06:08:03 ] 元先って表現が正しかったかね。 あいまいさのない変換ならって意味。
618 名前:608 mailto:sage [2006/09/30(土) 09:07:27 ] >>610 ,613,614 回答ありがとうございます 色々試して使い分けられるように頑張ります
619 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 14:37:58 ] 検索をしようと、ctrl+Fを押下したのですが、検索ボックスが表示されません。 昨日までは、表示されていたのですが・・・ どうしたら表示されるようになるでしょうか?
620 名前:619 mailto:sage [2006/09/30(土) 15:08:17 ] タスクバーをけしてみたら、画面の下の方に出ていました。 くそ質問ですみませんでした。
621 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 17:29:14 ] >>620 IDEのツールボックスやウィンドウレイアウトは、オプションから初期 設定に戻すことができるよ。今回のが該当するのか不明だけど、同僚 がいっつもツールボックスを紛失するんで、俺も覚えてしまった。
622 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 18:29:41 ] VB.NETで非同期イベントってどうやればいいんですか? C#だとこんな感じでできるのですが //delegate設定 public delegate void testDelegate( object sender, EventArgs e ); //イベント設定 public event testDelegate Tested; //非同期イベント発行 Tested.BeginInvoke(this, EventArgs.Empty, new AsyncCallback(TestedCallback), Tested); //コールバック関数 private void TestedCallback(IAsyncResult ar) { testDelegate callback = ar.AsyncState; callback.EndInvoke(ar); } VBだとTested.BeginInvoke()でエラーがでます。
623 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 19:12:09 ] >>622 同じようにやればいいんじゃないの? VBでどう書いてどういうエラーが出たんだ?
624 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 19:21:32 ] >>623 //delegate設定 Public Delegate Sub testDelegate(ByVal sender As Object, ByVal e As EventArgs) //イベント設定 Public Event Tested As testDelegate Tested.BeginInvoke()で「Testedはイベントであるため、 直接呼び出すことはできません。」のエラーがでる。
625 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 19:47:06 ] Testedをイベントじゃなくて単なるデリゲートにしたら? イベントハンドラがいらないならイベントである必要はないんだけど。
626 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 19:49:14 ] >>622 おま、そのC#のほうも、内容わかってないだろ。 内容をまず理解したほうがいい。そうすれば簡単にわかる話だ。 まずはそれからだ!
627 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 20:06:24 ] てきとーに、イベントに関数を与えるのはAddressofでやるのでは?
628 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 21:15:08 ] >>622 ああ、C#だとそういう風にイベントをデリゲートとして扱えるのか。。 VBだとたぶんそのコードを「直訳」することはできないね。 ばかばかしいことだけど、RaiseEventでイベントを生成するメソッド(OnTested) を、別のデリゲートで非同期呼び出しする必要がありそう。 この変はイベントを簡単に扱えるようにしているVB.NETの暗黒面かもしれん。 ちなみに、どうでもいいんだけどそういうの非同期イベントっていうのは 正式な用語法なのかな?
629 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 21:25:09 ] >>628 > ちなみに、どうでもいいんだけどそういうの非同期イベントっていうのは > 正式な用語法なのかな? いんや。 つか 622 のコードはイベントをデリゲートとして扱えてしまう C# の暗黒面。 BeginInvoke はあくまで非同期デリゲートなんだから。
630 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 21:31:14 ] >>629 それ君の倒錯だと思うけどね俺は。 実際問題、たとえば何らかのデバイスなりストリームなりを監視する ワーカースレッドから、UIスレッドに同期したイベントを生成したいって場合は 少なからずあるんだよ。 そういう場合はVBだと>>628 に書いたような非常にばかばかしいコードを書かなきゃならん。
631 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 21:36:02 ] ちょっとC#勉強してくるノシ
632 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 04:17:33 ] てかよ、デリゲートの非同期呼び出しはマルチキャストできないんじゃなかったっけ? つまりそもそもイベント発火すんのにそんなもん使っちゃだめってことだろよ。 UIに同期したいなら面倒でもメソッドいっこかませりゃ済む話でそ?
633 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 12:26:44 ] >>632 どこにそんなこと書いてあるんだよw
634 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 15:04:35 ] マイクロソフト公式解説書「プログラミング Visual C# 2005 言語編」 にはっきりと書いてある。
635 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 15:18:13 ] 書いてあるわけねーw だってそんなの事実に反するからね だいいちデリゲートにとっちゃ自分のケツを誰が叩いているかなんて 全然関係のない話だろw
636 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 15:25:07 ] おまえ言ってること勘違いしてないか? デリゲートの非同期呼び出しはマルチキャストでは使えない(これは上記の本に書いてある)。 イベントはマルチキャストすることが普通にある。 よってイベントをデリゲートの非同期呼び出しで呼び出すのはまずい。 って言ってるんだが。 イベントの発火をデリゲートの非同期呼び出しでやったらまずいってのは 上記からの俺の見解だからlこれは書いてないけどな。
637 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 15:58:56 ] >>636 勘違いしてるのはたぶん君だと思うよ。 推測でしかないけど、たぶんEndInvoke使って返り値を取れるのは デリゲートが一番最後に呼び出したメソッドだけ、って話とどっかで 混同してるんじゃないの?
638 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 16:07:08 ] 人によって Control.BeginInvoke を言ってるのか Delegate.BeginInvoke を言ってるのか バラバラでグダグダになってるな。 非同期デリゲートなんだから Delegate.BeginInvoke の話のはずだが。 EventHandler handler = delegate { Console.WriteLine("a."); }; handler += delegate { Console.WriteLine("b."); }; IAsyncResult ia = handler.BeginInvoke(null, null, delegate(IAsyncResult ar) { handler.EndInvoke(ar); }, null); ia.AsyncWaitHandle.WaitOne(); > ハンドルされていない例外: System.ArgumentException: > デリゲートに指定するターゲットは 1 つでなければなりません。 匿名メソッドは楽じゃのう。
639 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 16:23:19 ] どうみても>>636 が正しいです。 本当にありがとうございました。
640 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 16:34:27 ] >>637 だから書籍に書いてあるってんのに何をどう勘違いするってんだ。 「BeginInvokeメソッドは、シングルキャストデリゲートに対してのみ使用できます」 って書いてあるっての。
641 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 16:37:08 ] ああ…つまりそういうことだw
642 名前:637 mailto:sage [2006/10/01(日) 17:35:49 ] なんか勘違いしてるのは俺の方だったみたいね。。 なんか恥ずかしいなw ってことは、結局非同期的にマルチキャストなイベントを起動しようと思ったら OnXXXを非同期的に呼び出さないとダメってことなのか? C#でもイベントに対してBeginInvokeなんて迂闊に使ったらまずいわけか。
643 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 19:05:36 ] んーたいていの場合、イベントソースの方が非同期で処理してるんだろうから、 そのままイベント投げればいいと思うんだけどな。 非同期でイベントを発火しなきゃならん状況があんまりうかばないんだが。
644 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 19:11:58 ] >>643 制御系とかでユーザ操作に関係なく発生するイベントとかは?
645 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 19:21:40 ] んーじゃなくてさ 非同期で発生するイベントはいろいろ考えられても、 イベントソースの方が非同期でイベントを発火することはあまりないんじゃ?てこと。 ※ソース側のスレッドからさらに非同期でイベントを発火するって話ね。 そりゃ制御系とか、その他、ソース側のワーカスレッドをブロックしては困る場合とかは あるだろうけど、そういうのは少ないんじゃ?ってこと(ないとは言ってない)
646 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 20:08:57 ] >>645 たとえばHWバッファが貧弱なために一定の時間間隔以下で必ずreadしてやらないと バッファがオーバーフローしてしまうようなデバイスをスレッドでバッファリングしているとして、 特定の値を受信した場合にそのスレッドからイベントを生成したいような場合。 ってちょっと強引な設定か。
647 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 20:37:37 ] うん、そういう場合は必要だけど、そういう場面はあんまりないんじゃ?ってだけね。
648 名前:デフォルトの名無しさん [2006/10/03(火) 03:11:24 ] System.IO.File.Copy("C:\Hoge.txt", "C:\Foo\Bar.txt", True) 上記の場合に、C:\Hoge.txtが存在しなかったら強制終了してしまうんですが ファイルが存在しない旨のメッセージを表示させたいときはどうすれば良いんでしょうか? VBです。
649 名前:648 [2006/10/03(火) 03:12:09 ] すみません。↑は誤爆です。 気にしないでください!!
650 名前:デフォルトの名無しさん mailto:sage [2006/10/03(火) 14:34:39 ] プログラム初心者で、簡単な質問かもしれないですがお願いします。 VB.NETの質問で申し訳ありませんが、イメージを貼り付ける時に ImageBox1.Image = Image.FromFile("gazou.gif") ImageBox2.Image = Image.FromFile("gazou.gif") ImageBox3.Image = Image.FromFile("gazou.gif") ImageBox4.Image = Image.FromFile("gazou.gif") ImageBox5.Image = Image.FromFile("gazou.gif") というプログラムを、IfやForを使ってもっと簡潔にまとめられないでしょうか? いろいろと試してみましたが、エラーばかりでうまくいかなくて…よろしくお願いします。
651 名前:デフォルトの名無しさん mailto:sage [2006/10/03(火) 14:50:08 ] >>650 for each
652 名前:デフォルトの名無しさん mailto:sage [2006/10/03(火) 14:55:30 ] >>650 homepage1.nifty.com/rucio/main/dotnet/shokyu/standard20.htm 上から下まで全部読んだら、方法がいくつかわかると思う。
653 名前:デフォルトの名無しさん mailto:sage [2006/10/03(火) 15:01:43 ] >>651-652 とりあえず紹介されたサイトのほうに目を通したいと思います 早い返答ありがとうございました
654 名前:デフォルトの名無しさん mailto:sage [2006/10/03(火) 17:25:00 ] >>652 650じゃないですが、ちょうど同じ内容を探してました 感謝です
655 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 06:46:51 ] ローカルネットワークのActive Directory上動くアプリを作っています。 そのアプリの認証にWindows認証を取り入れたいのですが、 どのように認証すればよいのでしょうか?
656 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 09:51:12 ] VB.Net2003 + .NetFrameWork1.1 で、ListVIewのListVIewItem(i).Textプロパティに改行文字を含んだ文字列を 指定したらTextのAlignがCenterになってしまいます。 しかも妙に左右に空白ができてしまいます。 Viewプロパティは smallicon にし、48x48pxlのアイコンを使用しています。 ┏━┓ abc ┃ ┃ あいうえお ┗━┛ 123456 これを ┏━┓abc ┃ ┃あいうえお ┗━┛123456 このように表示したいのです。 イメージとしては、windows(XP以降)のFileExplore右側リストビューにて 「並べて表示」した時の感じです。 ListViewにはTextAlignプロパティは無いし、Alignmentプロパティは アイコンの並び方を変えるだけでした。 どのような方法で実現できるでしょうか? また、Textプロパティの1行目のフォント色は黒で、2行目以降はグレーで表示したいのですが どのようにすれば実現可能でしょうか? そもそも、WindowsのFileExploreのListViewは.NetFrameWorkのListViewとは 異なるものなのでしょうか?
657 名前:デフォルトの名無しさん [2006/10/04(水) 14:12:27 ] 同じ型の構造体をコピーする方法を教えてください
658 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 14:15:16 ] コピーしたい構造体を反転選択、 Ctrl-c
659 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 14:16:24 ] A4白黒あたりで良ければ、 コンビニで10円
660 名前:デフォルトの名無しさん [2006/10/04(水) 14:21:10 ] うっ、この時間って馬鹿しかいなかったか・・・
661 名前:デフォルトの名無しさん [2006/10/04(水) 14:24:04 ] 質問の仕方も知らない馬鹿をからかっているだけだと思われ。
662 名前:デフォルトの名無しさん [2006/10/04(水) 14:30:51 ] 答えれないと煽るか誤魔化す馬鹿しかいない時間帯だってわかってるよ
663 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 14:34:49 ] >>660 その通り。 この時間、回答者も質問者も馬鹿しかいない。
664 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 14:37:21 ] >>663 違うだろ。 馬鹿な質問者にはそれなりの馬鹿しかレスしねえだけだ。
665 名前:656 mailto:sage [2006/10/04(水) 15:10:25 ] 事故解決です。 どーやら.NetFrameWork2.0のListViewコントロールには View.Tilingというビューモードが追加になってるみたいですね。 やりたかったことはそれなので、2.0導入するまでちょっと我慢します。
666 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 15:17:25 ] >>664 だからお前がレスしてるのね
667 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 15:20:29 ] >>666 ようこそ。
668 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 15:37:15 ] >>657 Struct1 struct1 = struct2;
669 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 15:39:31 ] まあおまいら、またーりするんだ。 ttp://up2.viploader.net/pic/src/viploader320467.jpg
670 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 18:50:41 ] 次はオシッコして感電死するショット?w >>665 俺自身は自分でやったことないのにえらそうに言うけど、 たぶんListViewのOnPaintをオーバライドすれば1.1でもできるんじゃない? GetItemRectなんてメソッドを使えば、テキストの部分だけのRectangleが取得できるから 先にベースクラスのOnPaint呼んどいてテキストの部分だけ自分で上書きしてしまえばいい。
671 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 18:52:35 ] プロセスIDからそのプロセスのファイル名をフルパスで得る方法ってありませんか。 VB2005です。
672 名前:656 mailto:sage [2006/10/04(水) 19:51:25 ] >670 さんくす。 オーバーライドやGetItemRectなんて具体的なやりかたが全然想像つかないので ちょっと調べてきます ノシ
673 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 20:09:07 ] >>656 2003でもいいけどさ、 .NetFrameWorkは2.0にできないの? まったく別物で上位互換でもないしさぁ
674 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 20:19:39 ] >>670 そりゃ無理だろ。やるならAPI使ってオーナードロー。
675 名前:656 mailto:sage [2006/10/04(水) 20:22:33 ] >>673 1.1で開発してるシステムが完成してから2.0にしようかと。 開発途中で2.0にしてしまうと作成途中のソースに あちこち手を入れることになんね?
676 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 20:27:06 ] >>674 あんたVB6な人だろ .NETは違うんだよw
677 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 20:35:13 ] >>676 OnPaintでどのアイテムを描画するかどうやって判断するの?
678 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 20:40:41 ] >>675 手入れが必要なら、さっさと乗り換えたほうが良くない? たとえばオーバーライドやGetItemRectをつかってまで1.1でつくりあげて、 それから2.0にする意味は? 一刻も早く2.0にして、もっとスマートな仕様で作っていくべきと思うけど。 他の様々な部分でも改善の余地があるなら早いほうがいいと思うし。
679 名前:670 mailto:sage [2006/10/04(水) 20:41:52 ] >>672 継承知らないとなると前途多難かもしれんねw 既存のコントロールを継承して独自の機能を実装する方法はここにやさしい解説があるよ pclabo.org/vb_net/14/main.htm あと、オーナードロー(OnPaintを乗っ取って自分で描画しちゃう)については、 たしか「どぼん」にコンボボックスをイメージコンボに改造するサンプルがあったと思う
680 名前:670 mailto:sage [2006/10/04(水) 20:43:18 ] >>678 俺もそうだけど、たとえば中小企業でチマチマコード書いてる身分だとそうもいかんでしょ。
681 名前:656 mailto:sage [2006/10/04(水) 21:07:52 ] >>678 いま2.0を入れずに頑張って1.1で手間ヒマかけてやるつもりはないです。 大変そうならとっととあきらめて余裕のできたときに2.0に移行していきます。 >>680 ウチの会社は作ったシステムを運用する人はイパーイいるけど、 開発する人間はオレともう一人だけなんだよね。 でも、今作ってるシステムは全くオレ一人でやってる。 だから完成間近のシステムを今の段階で2.0とかに対応していくことは とても厳しい。 ユーザにはもうすぐリリースできそうってアナウンスしてあるしw >>679 ありがとう。 継承とかは気になっていたんだけど、まだ必要になってなかったので 勉強できてません。 教えてもらったサイトを参考に勉強してみます。
682 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 22:25:05 ] >>671 Process クラスと ProcessModule クラス使えば用は足りるだろう。
683 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 00:59:42 ] Function関数を使って、 グローバル変数のようにモジュール内のどの関数内からでも呼び出せて、 同様に(変数をValueとすると) Value = 3 Value += 4 Dim rr As Integer rr = Value + 5 といった感じで使いたいのですが…… 色々と試してみたのですが、さっぱり上手くいきません。 初歩的な質問なら申し訳ございませんが、よろしくお願いします。 質問が下手ならすみません。
684 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 01:07:23 ] もうちょっと具体的に書いてくれる?
685 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 01:17:25 ] >>684 Function Total(ByVal tt As Decimal) As Decimal Static rr As Decimal = 50 rr -= tt Return rr End Function 上のようなプログラムを使おうとすると、 Total(x) と表記するだけで返り値を増やす事は出来るんですが その値の初期化が出来なくて困っています。 どうにかして別の関数内からも望む時に値を初期化ないし変数rrに直接代入できないでしょうか?
686 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 01:18:58 ] >>685 すみません、上記のプログラムでは返り値を増やす事ではなく減らす事は出来る……です。 説明が下手ですみません。
687 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 01:28:32 ] 値を設定するメソッドも用意しとけば良いだけじゃん つかまあ見事な非 OOP だな
688 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 01:34:06 ] Staticについてちょっと勉強不足かも……ちょっと調べて試してみます こんな夜にわざわざありがとうございました
689 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 01:44:09 ] >>687 普通に解決しました……すみません、プログラムの考えってすごく苦手で…… すごく助かりました、本当にありがとうございます。
690 名前:デフォルトの名無しさん [2006/10/05(木) 23:17:58 ] VBほぼ初心者で、VB6.0でほぼ完成のソースもらったんですけど、 2005しかなくて、勝手に変換されて泣きそうです。 で、質問です。 1.2005のままどうにかならないのか? このまま1個1個エラー潰していくしかないのか? 2.フリーのVB6.0が動く開発環境ってありますかね? 2003とか。 明らかにウザイ質問と自分でもわかっているので、罵倒する感じでお願いします。
691 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 23:30:41 ] >>690 1、自力でごりごりコンバートしたほうが、後々役に立つと思われる。 2、6.0のフリー環境はさすがに無いかと。 5.0のControl Creation Editionで解釈できるコードなら、そっちで 動かせるかもしれない。2003と互換性のあるSharpDevelopにいく という手もあるけれど、それなら2005にしたほうが大吉。
692 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 23:38:58 ] >>691 即レスサンクスです。 結局自分でガンガルのが最短路ってことですね。 どーもです。 頑張ります。
693 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 23:43:41 ] >>690 何度も何度も何度も既出
694 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 00:16:02 ] 既出厨乙
695 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 01:27:43 ] 最近始めたばかりの初心者で、環境は2003を使っています。 >>650 のような感じで、例えば Dim x As Integer Private Sub ABC1() x = 1 End Sub Private Sub ABC2() x = 2 End Sub Private Sub ABC3() x = 3 End Sub 上のようなプログラムの Private Sub ABC1()〜ABC3() をもっと簡潔に表記する事はできませんか?
696 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 01:37:40 ] private void ABC( int arg ) { x = arg; }
697 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 01:52:47 ] >>696 ありがとうございます、参考書にvoidが無かったので検索していますが・・・見つからず苦戦しています・・・ ちなみにその方法で Private Sub ABCBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ABCBox1.Click のようなボタンを押した時などのPrivate Sub 〜〜 もまとめる事はできますか? 質問ばかりですみません。
698 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 02:08:18 ] >>697 >>696 は違う言語。 そのイベントを起こすコントロールが何か分からんが 大体senderがそのコントロールそのものだな。 Handles ABCBox1.Click, Button1.Click, Button2.Click みたいにして senderとそのボタンなりなんなりと比較して分岐。
699 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 02:10:54 ] Handles の記述上限っていくつだろ
700 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 02:12:14 ] >>696 コピペするとエラーが出るのですが・・・ C#ではないですよね・・・せっかく教えていただいたのにすみません どこか分かり易いサイトなどありましたら教えていただけると助かります
701 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 02:15:35 ] >>698 HandlesとSenderですか、調べて何とか理解できるよう頑張ります それでも分からなければ、すみませんがまた手を煩わせる事になるかもしれないですが そうならないように頑張ります 丁寧にありがとうございます
702 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 02:18:38 ] Buttonと書こうと思っていたのにBoxと書いてしまってますね・・・ コントロールが分からなくてすみませんでした 改めてありがとうございました
703 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 02:35:26 ] MenuItemやNotifyIconにInvokeRequiredって無いんでしょうか・・・ 別スレッドからNotifyIconのTextを変えたりしたいのに出来ない・・・orz
704 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 02:50:07 ] Controlじゃないからね。 本スレッドのウインドウにメッセージでも送ってやってもらうが吉
705 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 02:59:07 ] どういう風にすれば良いでしょうか・・・ Textを変更しようとしているスレッドはループを回しているのでRunWorkerCompletedじゃだめだし・・・分からないorz
706 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 03:03:43 ] VB2005です。 MenuStripに項目をいっぱい追加して、そのウィンドウの幅を小さくすると、 はみ出たぶんのメニュー項目が表示されない、クリックできない状況になっちゃうんですが、 これを改善するにはどうしたらいいですか。 VB6の用に折り返させたり、メニューの一番左に▼←こんなのが表示されて、クリックすると 続きが表示されるようにしたりしたいんです。
707 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 05:06:03 ] >>706 menuStrip.GripStyle 初期値はHidden
708 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 05:27:37 ] >>707 HiddenからVisibleに変えてみましたが、メニューの一番右に点が3つ表示されるだけで、 はみ出たぶんのメニュー項目は依然選択できないままです。
709 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 09:34:58 ] >>705 BackgroundWorker 使ってんだったら ProgressChanged で良いじゃん
710 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 10:48:21 ] >>709 こんなイベントあったんですか・・・知りませんでした。ありがとうございます。 .netは奥が深いな・・・
711 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 11:36:07 ] >>708 CanOverflow つーかドキュメントくらい読めよ禿
712 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 15:12:27 ] >>711 CanOverflowをTrueにしても、はみ出たぶんのメニュー項目は依然選択できないままです。
713 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 15:46:19 ] >>712 LayoutStyle をFlowに
714 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 17:15:34 ] >>713 おお、ついにできました。 ありがとう。 LayoutStyleだけで折り返し表示できました。これではみ出た部分のメニューも選択できます。 >>707 、>>711 は質問の意図を勘違いされちゃったのかな。
715 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 18:54:55 ] 何様?
716 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 19:00:14 ] 俺俺
717 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 22:42:50 ] フォームのキーアップイベントでファンクションキーの処理をしているのだが、 テキストボックスでIME変換中のファンクションキーもイベントで拾ってしまう。 テキストの編集中のファンクションキー処理か見分ける方法ってあります?
718 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 23:39:37 ] 正攻法じゃなく姑息な方法だけど、 (1) KeyUpイベントで特殊キー以外だったらIME変換中のフラグを立てる (2) TextChangedイベントでIME変換中のフラグを下げる あくまでKeyUpイベント中でIMEが変換中かどうか知りたいということなら これでいけるんじゃないかな。 特殊キー以外が押された(放された)のであれば、IME変換中でなければ Textはかならずかわっているはずだから。 もちろんフラグを立てる処理はKeyUpの一番最後にもっていく必要がある。 っていうか、ずいぶん変則的なことがしたいんだね。
719 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 23:39:48 ] 該当コントロールに、IME 入力開始時に WM_IME_STARTCOMPOSITION、終了時に WM_IME_ENDCOMPOSITION が来る。 適当なクラスに IFilterMessage を実装させてこの二つのメッセージを拾えば良いんじゃない?
720 名前:デフォルトの名無しさん [2006/10/07(土) 23:48:27 ] アップデートしようとすると「Visual Studio .NET 2003 セットアップで 必要なファイルをダウンロード中にエラーが発生しました。 Webブラウザ構成の設定および接続ハードウェアを確認してから、やり直してください。」 出てきて、アップデートできないのですが、どうすれば解決できますか?
721 名前:デフォルトの名無しさん [2006/10/08(日) 00:08:36 ] 今インスト中なのですが最後の4段階目のService Releaseで 上手く進めません。 必要なファイルをダウンロード中にエラーが発生しました。 Webブラウザ構成の設定および接続ハードウェアを確認してから、やり直してください このポップアップメッセージが出てきて進めないです。 誰か親切でエロイ方教えてくださいーーー。
722 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 00:09:51 ] ファイアーウォール
723 名前:デフォルトの名無しさん [2006/10/08(日) 00:15:20 ] >>722 ファイアーウオールを実装しても解除しても両方できません。
724 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 00:21:01 ] >>721 ServiceReleaseをキャンセルしても、とりあえずインストールは完了 するから安心しろ。
725 名前:デフォルトの名無しさん [2006/10/08(日) 00:22:50 ] >>724 いいえ。そこを完了しないとPCに.NETのソフトが入ってないです。 どこを探してもインストールされていません。
726 名前:デフォルトの名無しさん [2006/10/08(日) 00:25:20 ] >>724 ありましたぁ!! ServiceReleaseをキャンセルしても、問題はないですか?大丈夫でしょうか?
727 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 00:53:33 ] >>717 >>679
728 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 00:55:16 ] >>726 ちゃんとキャンセルされてるから安心しろ。
729 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 03:48:27 ] datagridview のあるセルに、コードベースでハイパーリンクを設定するのってどうやるんでしょうか?
730 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 04:05:07 ] 取りあえずデザイナで配置してみて、それで作られたコードを参考にしろ
731 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 10:40:56 ] >>726 職場のオフラインパソコンで何度もやってる俺が言うんだから間違いない。
732 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 11:31:36 ] ComboBoxでエディットボックス部分のメッセージってどうやって拾ってます?
733 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 11:41:06 ] ComboBox.Text プロパティを参照ではあかんの?
734 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 12:17:26 ] Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load For Each c As Control In ComboBox1.Controls If TypeOf c Is TextBox Then MsgBox("ComboBox内にTextBoxを発見しました。") Exit Sub End If Next MsgBox("オメエに喰わせるTextBoxはネエ !") End Sub
735 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 12:23:36 ] ↑ なにこれ?
736 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 15:36:33 ] >>733-734 テキストボックスコントロールじゃなくて、 エディットエリアに流れているウィンドウズメッセージです。
737 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 15:51:30 ] だから内部的にエディットボックスなんて使ってないんだってば
738 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 17:17:48 ] >>737 エディットボックスじゃないよ。 エディットエリアの部分だって。 spyで確認すると、ハンドルもメッセージもコンボボックスとは別のものが流れてるけど、 そのエディットエリアに流れているメッセージを取得したいのです。
739 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 17:40:28 ] まあ実際 Edit コントロール使ってんだけどな。 CB_GETCOMBOBOXINFO を送るか、Win32API の GetComboBoxInfo を使うかすればエディットのハンドルが手に入る。 あとは NativeWindow の派生クラス作ってサブクラス化すればいい。
740 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 18:02:25 ] こんな感じだな www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=28307&forum=7&4
741 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 19:20:53 ] >>739-740 さんくすです
742 名前:デフォルトの名無しさん mailto:sage [2006/10/11(水) 12:37:37 ] 直接VBの話では無いのですが開発環境がVB.NET2005なので、質問させてください。 今度、新しく作成するアプリのDBをSQL Server2000と2005のどっちにするかを悩んでいます。 VB.NET2005(Pro)から見てSQL Serverの2000と2005が変わりがないのであれば、 会社で所有している2000をそのまま使おうと思っているのですが、 SQL Server2005で魅力的な何かがあれば購入協議に出して買ってもらおうかと思っています。 見積もりで容量が10GBを超えるのでExpressは考えていません。 SQL Server2005とVB.NET2005の組み合わせで何か幸せになれる事ってあるのでしょうか?
743 名前:デフォルトの名無しさん [2006/10/11(水) 12:48:12 ] >>742 自分で考えれば?それだけの条件じゃなんにもわからんし。
744 名前:デフォルトの名無しさん [2006/10/11(水) 14:58:28 ] VB.NET 2005 の Express Editionを使っているのですが 配布パッケージを作成はどうすれば良いのでしょうか? 6時代のディストリビューションウィザードみたいなのが見当らないのですが
745 名前:デフォルトの名無しさん mailto:sage [2006/10/11(水) 16:15:55 ] >>744 ClickOnceが嫌ならStandard以上が必要
746 名前:デフォルトの名無しさん mailto:sage [2006/10/11(水) 16:35:22 ] 744じゃないけど、Standard以上だとどんなディストリビューションウィザード的なものがある?
747 名前:デフォルトの名無しさん mailto:sage [2006/10/11(水) 16:51:55 ] どんなと言われても困るがセットアッププロジェクトというものがある。 詳しく知りたければここでも見てくれ。 msdn2.microsoft.com/ja-jp/library/2kt85ked.aspx
748 名前:742 mailto:sage [2006/10/11(水) 19:27:14 ] >>743 確かに曖昧だったな。 とりあえず開いているサーバにSQL Server2005developerをつっこんで弄ってみるは。
749 名前:デフォルトの名無しさん [2006/10/11(水) 21:16:17 ] ずっとVBをやってたんだけど。出向先がいきなりVBC#になるとのこと。 明日からいきなりいくんだけど、随分違うものなの??
750 名前:デフォルトの名無しさん mailto:sage [2006/10/11(水) 21:44:09 ] VBC#なんてのが出来たのか
751 名前:デフォルトの名無しさん mailto:sage [2006/10/11(水) 21:45:40 ] >>749 たいして変わらん
752 名前:デフォルトの名無しさん [2006/10/11(水) 23:20:48 ] >>750 VBC#は結構前からあるよ。J#なんてのもあるからねー
753 名前:デフォルトの名無しさん mailto:sage [2006/10/11(水) 23:33:50 ] VisualBasicC#?
754 名前:デフォルトの名無しさん mailto:sage [2006/10/12(木) 00:16:22 ] VisualBasicCompiler#と予想
755 名前:デフォルトの名無しさん mailto:sage [2006/10/12(木) 00:45:13 ] VisualBasiC#
756 名前:デフォルトの名無しさん mailto:sage [2006/10/12(木) 01:24:40 ] ぶびちゅ
757 名前:デフォルトの名無しさん mailto:sage [2006/10/12(木) 09:32:50 ] ぶいびー丼?
758 名前:デフォルトの名無しさん mailto:sage [2006/10/12(木) 16:34:49 ] VB.net2003のツリービューでノードを一意に 認識したくtagにguidをいれているのですが このtagを指定して一発でそのノードを取得したいのですが 可能でしょうか? こんな感じであればよいかなと思います。 Dim hoge As TreeNode hoge = TreeView1.selectSingleNode("123304-32-434-3-3-35") もし可能であればやり方を教えてください。 よろしくお願いいたします。
759 名前:デフォルトの名無しさん mailto:sage [2006/10/12(木) 18:37:07 ] >>758 そんなことするぐらいなら最初からHashtableに突っ込んで管理すりゃいいじゃん。 っていうか、うまくいえないが何か根本的に「考え違い」をしていると思うぞw 何ていえばいいかな、guidで識別したいってことはguidをインデックスにノードを 取得したいってことだが、そのguidは何をインデックスに取得するつもりかね?w
760 名前:デフォルトの名無しさん mailto:sage [2006/10/12(木) 19:48:52 ] >>759 なるほどー ツリーを構築するときにハッシュテーブルにguidとノードをインサートしておけばいいわけですね。 こりゃすごい
761 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 08:26:13 ] 2つ質問したいことがあります。 1つめは、 vb.net と vb2005の違い なんですが、 イメージとしては、vb2005は、.net を vb6に近づけた感じというのがあるのですが どうなのでしょうか? 2つめは、 VB.net をこれから、学び始めようと思うのですが、 今ある知識は、VB6 を少しかじったくらいなので 初心者から 学べる おすすめの本があればお教えてください。
762 名前:デフォルトの名無しさん [2006/10/13(金) 09:20:13 ] vb.net .netフレームワーク上で動くVB vb2005 .net2,0を開発できるVisualStudio2005のvb部分 初心者は@ITでも読破しとけば?
763 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 10:50:44 ] >>イメージとしては、vb2005は、.net を vb6に近づけた感じというのがあるのですが あながち間違いじゃない。 2003で思うように移行が進まなかったためか、2005はVB6.0に擦り寄 った内容になっている。
764 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 11:19:40 ] >>761 [暗黙のインスタンス] でググるよろし。
765 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 11:22:12 ] >>762 まず始めに @ITの方を読破して それから、必要に応じて、本を探そうと思います。 >>763 .net 〜2005 までの変更があまりわかってなかったのですが、 明確になりました。 質問に答えていただき、ありがとうございますした。
766 名前:761 mailto:sage [2006/10/13(金) 11:30:05 ] >>765 ちょっとタイプミスw >>764 分かりやすい説明でたすかります。 質問に答えていただき、ありがとうございました。
767 名前:デフォルトの名無しさん [2006/10/13(金) 11:43:45 ] 暗黙のインスタンスが使えるから何?って思うんだけどね。 VBは2の頃からやってるけど、普通にすんなり.netやってるし。 逆にあんな糞仕様が何故復活するのか理解ができん。
768 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 11:59:49 ] いまだに6.0ベースの開発案件が続いてることに、MSが危惧を抱いてる んでないの? 「サポート切れたよ! 動作保証しないよ!」って言い 続けてるわりには、一向に転換が進まないしさ。 うちなんか「6.0でSP3まで」っていう環境の縛りがあるくらいだし。
769 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 13:32:51 ] .NETでWindowsMessage一覧が定数化してあるクラスが欲しいのですが、 今現在落とせる場所ってありますか? 昔は【渋木宏明(ひどり) blog 】や【Sugi@ぱぱんぶぃびぃ Blog】で落とせたみたいなんですが、 今は落とせないみたいので、現在ある場所知っている方教えてください。
770 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 16:05:11 ] そういえば、VB6時代の末期は、 超優秀な人から超無能な人までVB6を使っていたが、 その全てが.netを理解できるはずが無かった。 そうなると、VB6を使い続けるしかないんだよな。 会社としても、皆が.netを理解できないのにVB6を切るわけにも行かないし。 また、理解できたとしても、顧客には.netを本筋にするから、 VB6アプリはサポートしないなんて言えないし。
771 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 18:12:27 ] >>769 SDKからWinUser.h抜いて エディタで正規表現つかって書き出せば簡単
772 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 11:02:50 ] 公開よろ
773 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 11:34:47 ] ウンコに行きたいんだが、我慢した方が良いか?
774 名前:773 mailto:sage [2006/10/14(土) 11:35:50 ] 誤爆ゴメン
775 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 12:04:09 ] >>769 ありがちな発想だけど、そんなクラス使いにくくてしょうがないでしょ。 必要なメッセージだけその都度定数なりEnumなりで定義してればこそ インテリセンスの有難味も効いて来るのに。
776 名前:デフォルトの名無しさん [2006/10/14(土) 18:39:40 ] 超初心者なんですが VisualBasic2005 Express editionでWindowsアプリを作ったのですが EXEにするにはどうしたらよいのでしょうか? 昔少し開いたVBにはコンパイルとかあったような気がしたんですが¥けど・・
777 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 18:47:30 ] ビルド
778 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 18:48:00 ] ビルドすれば作られてるだろ
779 名前:776 [2006/10/14(土) 18:50:36 ] あ、ありました。 >>777-778 ありがとうございました。
780 名前:デフォルトの名無しさん [2006/10/15(日) 01:02:15 ] ショッピングWEBなどのhtml中のセッションIDの取得が出来ずに悩んでいます。 <!-- jsessionid=925366B2850A358E66BCF2C091402219.tom18 --> というセッションIDがあり、アクセスの毎に変わります。 このセッションIDを取り出す方法でつまづいています。 オーバーライド関数GetSessionを実装して、適当な変数(Sidなど)に代入出来るようにしたいのですが、 どうすればよろしいのでしょうか。 いろいろぐぐっても解かりませんでした・・・ よろしくお願いします。
781 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 01:06:18 ] どっかの掲示板で見たなこの質問
782 名前:デフォルトの名無しさん [2006/10/15(日) 12:40:38 ] VB.NETの変数名のつけ方のガイドラインってあるんでしょうかね? たとえば、クラス内の変数名の先頭にはよくm_を付けている事が多いですが。
783 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 13:22:15 ] >>782 MSDNにもあるし、本も出てるし。
784 名前:デフォルトの名無しさん [2006/10/15(日) 13:49:06 ] N88Basicしか知りません。まったくのVB初心者です。 VB.NETでそこそこのソフトを作れるようになるにはどのくらい勉強すればいいのでしょうか?
785 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 13:58:45 ] 俚諺に曰く、石の上にも三年
786 名前:783 [2006/10/15(日) 14:07:50 ] >>783 MSDNには”Visual Basic の名前付け規則”っていうのがありましたね。 書籍の方も見てみたいのですが、本のタイトル教えてもらえませんか?
787 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 14:11:19 ] そこそこのソフト わかるかぼけぇ
788 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 14:17:18 ] >>786 手元に無いので正確なのはわからんが、 「VB.NETルールブック」だったかな?
789 名前:782 mailto:sage [2006/10/15(日) 15:03:49 ] >>788 ありがとうございます。 そのタイトルの本がありました。
790 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 15:13:35 ] でも正直、あの本に限らずあの手の本に書いてあることって大概単なる 「村の掟」以上の物ではないんだよな。 ルールの背後に納得できる合理性が感じられない単なる俺様ルールを 金払ってまで受け入れる気がしない。
791 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 17:06:57 ] >>790 ま、参考にってとこでしょ。
792 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 18:24:29 ] 独自につくる方がよっぽど俺様ルールなわけで
793 名前:デフォルトの名無しさん [2006/10/15(日) 20:54:35 ] 質問させてください。 VB6.0のpictureに計算結果を表示させたり、 C言語でコンソールに結果表示をさせるのは 自動的に順番に隣へ表示するので 結果の表示が重なる事はないですが、VB.NETのpictureに結果を出そうと思えば 座標を指定しなくてはならないので、座標を一つしか指定しなければ 当然同じところへ重なりますよね? 現在、再帰のアルゴリズムのところで順列表示結果をさせたいと考えているのですが picutreに表示させる方法が思いつきません。繰り返し処理させようとしても その i がどうしても1に戻ってしまうのです。 だから順列の結果がすべて同じ位置に重なってしまいます。 何かうまい方法はないでしょうか?
794 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 20:59:04 ] お願いですから日本語を喋ってください
795 名前:デフォルトの名無しさん [2006/10/15(日) 21:04:51 ] すいません、訂正です。 分かりにくいと思いますので。 >>793 の続き 現在、再帰のアルゴリズムを使って順列表示結果をさせたいと考えているのですが picutreに表示させる方法が思いつきません。 何かうまい方法はないでしょうか? 1 2 3 4 の順列の結果は24個あるわけですがこれが重なってしまうのです。 1234 1243 ・・・・って表示してほしいのですけど。
796 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 21:24:10 ] picutreって何?
797 名前:デフォルトの名無しさん [2006/10/15(日) 21:25:39 ] pictureboxのことです。
798 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 21:34:41 ] 今どうやってんのか分からんとアドバイスのしようもない。コードを書け。
799 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 21:41:54 ] MDB内のフォーム名を取得するには、どうすれば良いのでしょうか? 親切な方、ヒントだけでも教えてください。
800 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 21:47:37 ] >>799 AccessのApplicationオブジェクトからFormオブジェクト抜き出せば良いやん。
801 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 22:03:27 ] >>800 ありがとうございます。
802 名前:デフォルトの名無しさん [2006/10/15(日) 22:30:31 ] >>798 以下のようなコードです。全部は書ききれませんので、次レスで。 Const N As Short = 4 Dim p(N) As Integer Private Sub perm(ByRef i As Integer, ByVal e As PictureBox) Dim g As Graphics = e.CreateGraphics() Dim t As Integer Dim j As Integer If i < N Then For j = i To N t = p(i) p(i) = p(j) p(j) = t perm(i + 1, Picture1) t = p(i) p(i) = p(j) p(j) = t Next j Else For j = 1 To N Dim centuryFont As Font = New Font("century", 8, FontStyle.Regular) Dim blackBrush As SolidBrush = New SolidBrush(Color.Black) g.DrawString(p(j), centuryFont, blackBrush, p(j) * 20, j * Font.Height) Next j End If End Sub
803 名前:デフォルトの名無しさん [2006/10/15(日) 22:31:14 ] Private Sub Command1_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command1.Click Display(Picture1) End Sub Sub Display(ByVal e As PictureBox) Dim g As Graphics = e.CreateGraphics() Dim i As Integer g.Clear(Color.White) For i = 1 To N p(i) = i Next i perm(1, Picture1) End Sub End Class
804 名前:デフォルトの名無しさん [2006/10/15(日) 22:32:58 ] g.DrawString(p(j), centuryFont, blackBrush, p(j) * 20, j * Font.Height) ここの座標設定は適当です。 とにかくここをどうやってするかが難しいのです。
805 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 22:58:51 ] まあ、色々突っ込み所満載なわけだが、とりあえずy座標に関して言えば クラスメンバにy座標を持って、最初の再帰呼び出しの前でクリアして 1行描画したら1行分足せばいいんじゃないか。 あとx座標も変だぞ。それじゃ全部1234になっちまう。
806 名前:デフォルトの名無しさん [2006/10/15(日) 23:02:57 ] >>805 そうです。だから座標は適当にしているだけなんです。 今までのVBのように p(i)を一つ一つ並べればきちんといくはずなんですが・・。 クリアというとつまりはどういうことなんでしょうか?
807 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 23:19:05 ] Dim p(N) As Integer の下に Dim y As Integer を追加 描画を g.DrawString(p(j), centuryFont, blackBrush, j * 8, y) に修正 その下の Next j の下に y += 12 を追加 Displayメソッドの perm(1, Picture1) の前に y = 0 を追加
808 名前:デフォルトの名無しさん [2006/10/15(日) 23:22:44 ] >>805 y座標はうまくいきました。 ありがとうございます。
809 名前:デフォルトの名無しさん [2006/10/15(日) 23:27:02 ] >>807 丁寧にありがとうございます。 perm(i + 1, Picture1)の前に k=k+1といれて g.DrawString(p(j), centuryFont, blackBrush, j * 20, (k - 1) * 10) とすればできました。x座標もできました。 たぶんあなたが教えてくれたものが正確だと思うので そのように書き直させてもらいます。
810 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 23:27:22 ] っていうか、明らかに適性ないよ悪いけど。 もうコードのここがダメとかあそこを直せばいいという問題じゃなく、全てがダメ。 こんなの初学の学生が宿題で書いたコードとしても酷すぎる。
811 名前:デフォルトの名無しさん [2006/10/15(日) 23:31:33 ] >>810 そうですか。 まあ、また気が向いたら教えてください。
812 名前:デフォルトの名無しさん [2006/10/15(日) 23:46:46 ] クラスの動作確認の方法ってどうやってやるのですか? ソリューションエクスプローラにクラス追加で下記のクラスを追加してF5を押しても確認が取れません。 よろしくお願いします。 Imports System Imports System.Net Imports System.Text Public Class WebClientGet3 Shared Sub Main() Dim wc As WebClient = New WebClient() Dim data As byte() = wc.DownloadData("www.google.co.jp/" ) Dim enc As Encoding = Encoding.GetEncoding("Shift_JIS") Dim html As String = enc.GetString(data) Console.WriteLine(html) End Sub End Class
813 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 23:56:13 ] クラスの動作確認ってかなり意味不明だな。 取りあえず MSDN かヘルプドキュメントで /main コンパイラオプション の項目を調べれ
814 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 02:43:01 ] >>812 お前の作るクラスにはmainというメソッドがあるのか。 いやだな・・・ しかもクラス単位にmainというメソッドしかない作りなんだろ? そんな作りはやめたほうがいい。
815 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 10:32:01 ] プログラムの仕組みでClassを使うやつは、 PGのセンスを疑うな。 クラスとオブジェクトの意味を理解してもらいたい。
816 名前:デフォルトの名無しさん [2006/10/16(月) 11:31:15 ] VB2005でnkf32.DLLを使いたいのですがどのように記述すれば良いのでしょうか? 例えばGetNkfVersion関数を使うとして Public Declare Function GetNkfVersion Lib "nkf32.dll" (ByVal verStr As String) 等と書いてみたのですが名前空間のステートメントが無効ですとエラーが表示されてしまいます。
817 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 12:05:41 ] クラスまたはモジュールのメンバになる位置に書く
818 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 13:54:36 ] 今日、あるソースのコメント部分に、SpecialThanx 〜〜〜〜〜〜 と書いてるのを見つけた。 ここのスレタイがかいてあったので見に来てみた。 なるほどね。
819 名前:デフォルトの名無しさん [2006/10/16(月) 14:37:11 ] >>817 ありがとうございました。
820 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 15:59:45 ] >>802 なんで引数のPictureBoxがeなん? CreateGraphicsで作ったGraphicsで描いたら、画面重なったら消えるやん? なんで描画コードを再帰で作るん? 計算だけ再帰にして描画は一発にすべきじゃないの? そもそも再帰の必要あるの? 再帰とループの中でなんで何度もSolidBrush作るん? GraphicsやSolidBushをDisposeしないの?
821 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 18:18:07 ] >>820 >>793 にPG適性が無いから
822 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 20:23:21 ] ここで適性無しとか言われてキレたりするやついるけど、正直ほんとに 適性としか言えない何かがあるんだよ。適性無いのに業界入りするのは 自殺行為に等しいから、向いてないと感じたら職種替えたほうがいい。 うちに今年入った素人高卒が、いまバリバリにコーディングしてるその そばで、情報系大卒3年選手が単なるテスターになってるのを目の当た りしてほんとそう思うよ。
823 名前:デフォルトの名無しさん [2006/10/16(月) 21:39:42 ] >>812 コンパイルしてエラーで出なければオkでしょw
824 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 21:51:34 ] >>823 品質無視ならそれでもいいんじゃね? その発想は、大概UIも一貫性がなかったり、仕様も捻くれてて直感的に使えないんだよな。
825 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 22:10:18 ] 質問のしかたはともかく、質問者のレベルとか、適正や職種なんてこのスレとは無関係。 質問者にも理解できるような適切な解答をするべきだろ? それができないで何を偉そうに威張ってるんだい?その辺のガキと変わらないぞ。
826 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 22:11:52 ] するべきって何だよそれ。。。
827 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 22:21:17 ] 解答のしかたはともかく、解答者のレベルとか、適正や職種なんてこのス レとは無関係。解答者にも理解できるような適切な質問をするべきだろ?
828 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 22:32:01 ] >>827 それだと、解答者も質問者とたいして変わらないのだから・・・と言ってるように聞こえる。
829 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 22:35:21 ] >>828 ま、知ってるか知らないかだけで、質問するやつも解答するやつも同レベルってことだ。
830 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 23:35:33 ] 適切な回答も理解できないあほもいるんです><
831 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 04:43:58 ] 適切な質問も理解できないあほもいるんです><
832 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 05:19:31 ] 適切なスレも理解できないあほもいるんです><
833 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 12:15:10 ] VB.NET2005 側で構造体を確保して、その確保したエリアを VC.NETで作成したDLL側で操作したいんですが、一般的な手法 ってどんな感じになるんでしょうか? 例えば、VB.NET2005側で、構造体の配列を確保して、それを DLL側でソートしたり、VB.NET2005側で確保したエリアに DLL側でファイルからデータを読み込んで値をセットしたりと いった事がやりたいんですが。 UNIX環境のCでしかプログラムを作ったことが無いので、 VB.NET2005と、VC.NETで作成したDLLの間のデータの受渡し方法や、 VB.NET2005側がどのような形でエリア(メモリ)を確保しているのかや、 VB.NET2005側の変数の型と、確保されたエリアの関係(サイズや、アドレス)や、 VB.NET2005側の変数の型と、確保されたエリアの内部コード(文字列型の場合)、 VB.NET2005側の構造体と、確保されたエリアの関係(サイズや、アドレス)等が 良く判りません。 かなり、抽象的な質問で申し訳ないのですが、これらに関する情報や、書籍など ありましたら、紹介して頂けないでしょうか。
834 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 12:29:28 ] >>833 P/Invokeという単語をMSDNで調べるかググる。
835 名前:833 mailto:sage [2006/10/17(火) 14:05:50 ] >>834 THX。 マーシャリングとか、アンマネージとか、なにやら面妖なキーワードが 沢山出て来て、戸惑っています。 Windows(.NET環境)ってなんか凄いですね。 ともあれ、ようやく欲しい情報にたどり着くことができました。 ありがとうございます。
836 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 22:09:33 ] というかまず VC.NET という謎の存在を解決する必要があるな
837 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 23:02:43 ] .NET なんてただの飾りです エロイ人には
838 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 00:33:57 ] おい、みんな〜 例外キャッチは、Exception型で全部済ませてるよな?
839 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 00:49:16 ] キャッチなんてごく一部しか書かない。
840 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 00:59:14 ] まじで? とりあえず全部のコードTryCatchで括って、Exceptionで受ける ってみんな書いてないのか・・・
841 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 01:06:54 ] ごく一部ってのは全プログラムコードで見たらごく一部のコードという意味だよ。 全部のコードってどういう意味? 一番外側的な(あるいはそれに近い)意味ならそういう感じになるのは分かるが。 あとは個別に処理してしまう場合だけな。
842 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 01:48:14 ] 俺は基本的に関数は全てtry〜catch〜finally〜。 JavaやPHP5では基本だろ。
843 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 02:03:20 ] あほだね
844 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 02:05:24 ] 全ての関数で基本的にcatchも書くって、 そのcatch内でいったい何をしてるんよ? finallyでいったい何してるんよ? # まあ finallyの方はまだいいにしても
845 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 02:14:46 ] 想定できない例外はこれでキャッチすればいいんでないの? www.atmarkit.co.jp/fdotnet/dotnettips/320appexception/appexception.html
846 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 02:21:40 ] うんそうだね
847 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 02:56:40 ] >>845 なんだよ、これ。 こんなの思いつかねーよ
848 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 03:42:47 ] 思いつくんじゃない、見つけるんだ。
849 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 04:52:55 ] びっくりさせるなよー ThreadExceptionイベントをハンドルして処理してるのは俺だけかと思ったよ、まじで。 お前らの常識はほんとあてにならないな。
850 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 07:57:17 ] どんな常識かね?
851 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 13:36:39 ] >>844 catchで例外の詳細をログに落としてる。 finallyでオブジェクトの開放。 普通じゃん。
852 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 13:52:48 ] 全メソッドで個別にログ出力かよ
853 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 13:55:22 ] でエラー状況はどうやって返してるんだ? まさか再スローじゃないだろ?
854 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 14:25:18 ] >>852 全メソッドで個別ログを取らないと、詳細なログにならない。 いらなくなったら、ログるレベルを変えるだけ。 >>853 最上位がしっかり処理してるなら、 別に再スローでも良いんじゃない?
855 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 15:08:48 ] 全メソッドでログ出力&再スローってありえんだろ。
856 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 15:11:28 ] catchされたもののログだろ? 全然ありえるじゃん。
857 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 15:13:17 ] メソッド呼び出しの深さ分同じ例外のログ出力するんかい! あと詳細ログ出せないっていうけど、 各メソッドで出すことでどれだけ詳細度があげられるんだ? 全メソッドでそれはありえんだろ。
858 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 16:39:00 ] >>857 どのイベントから呼び出したどのメソッドの中にあるメソッドの… と、経路と部位の特定が簡単になるのが、ダメなのか? ユーザーが言うバグにも早く対応ができるし。 つーか、何に対してそこまでの否定を?
859 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 16:39:16 ] すいません、VB.NET(2003)で質問です。 フォーム上にTextBoxが20個配置されていて、 例えばそれらにTB_1, TB_2, …TB_20 というようなコントロール名がついているとします。 これらのTextBoxをForループなどで一律に処理する方法はあるでしょうか。 具体的なイメージとしては For i = 1 To 20 ["TB_" & CStr(i) をコントロール名に持つTextBox].Text = data(i) Next みたいなことができるといいのですが。 要はコントロール名からオブジェクトを取得できればいいわけなんですけれど。
860 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 17:19:22 ] >>859 Controlsプロパティでググれ
861 名前:デフォルトの名無しさん [2006/10/18(水) 17:25:02 ] >>858 StackTraceとか。 そもそもその例外を外に出すのか、内部で処理するのか、どちらが正しいってのはその関数の責務の問題になるし。
862 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 17:57:38 ] >>861 StackTraceって>>858 みたいな使い方できたっけだぜ? あと、例外の処理は関数の責務というより、 プロジェクト全体、退いては会社などのポリシーによって統一されなければいけないもんだぜ。 派遣がたまに来て、ルールぶち壊す奴がいるが、 そういうのが一番アスホールになるんだべ?
863 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:12:51 ] スタックトレースでほぼ見えるだろ。 全メソッドでそういうことするのはおかしいて言ってる。 .NETでの例外処理において、やってはいけないこと、に挙げられてるよ。
864 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:14:35 ] >>863 誰が言ってるの? 何をやってはいけないの?
865 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:17:33 ] 全メソッドでException型でキャッチして再スローするようなこと。
866 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:20:44 ] >>865 まあ、まずはソースだ。 MSが言ってるレベルだと信頼は無いからな。 大体、本当にやってはいけないことなら、コーディングレベルでエラーが出るだろ。
867 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:23:09 ] ソース出せ ああ、ベンダのいうことは信用できないから駄目だよ
868 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:24:05 ] だったら.NETなんかつかわなけりゃいい
869 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:26:53 ] 例外のスローや再スローが非常に高コストなのは 常識だと思ってた。 ていうか、全メソッドでやるなら例外なんて仕組みいらんだろ。
870 名前:デフォルトの名無しさん [2006/10/18(水) 18:27:56 ] EUCコードのデータを取り込んで表示させるにはどうすればよろしいのでしょうか? そのままだと文字化けしてしまうのでSJISやUTFに変換しないと駄目でしょうか?
871 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:30:48 ] ゲームでも作ってるんじゃないからコストなんか考えない。 バグが出ない、修正やカスタマイズがし易い、何か起こったとき直ぐに場所と原因が突きとめられる。 VB.NETで重要なのはこの3点だけ。 メモリが足りないのなら、メモリを積め。 遅いのなら、速いマシンを買え。 コストをシビアに考えるなら、VBなんか使わねーよ
872 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:30:58 ] 独立したスレッド等、処理を断続させる場合だけ、TryCatch それ以外は、イベントハンドルとして処理。 これでいいだろ。 全メソッドでTryCatchなんてありえん。 初心者と技術のない職場のポリシーだけだ。
873 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:32:33 ] >>871 それは単なるお前の自論だろ。
874 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:34:56 ] >>873 IBMで教わった持論なんだがな。
875 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:36:02 ] >>872 VB6のときは、イベント内のみにしかイベントハンドルを書かなかった口か?
876 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:38:51 ] >>871 try〜catch〜finally〜内にバグがないとも限らない。 一元管理されるほうが、どう考えても効率いいし、バグが入りにくい。
877 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:40:02 ] >>875 どう解釈しても意味不明だわな
878 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:44:20 ] グダグダだな
879 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:46:36 ] >>876 それはリスクポリシーの取り方だろ。 可読性の良いコードなら、catchやfinallyにバグが入り込む可能性は低い。 try内の問題が直ぐ判別できるから尚良い。 つーか、1メソッド、try〜catch〜finally〜含めても、 コードなんて20行も無いだろ? catch内でも2〜3行なもんだろ?
880 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:47:08 ] >>870 ここ読んでみたら? ttp://dobon.net/vb/bbs/log3-4/1733.html
881 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 18:59:37 ] お前有り得ない例外処理が反乱してるのを見たことないのか?
882 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:02:07 ] >>881 無いね。 危ない例外は完全に殺してしまうし、 例外処理用にかなりこなれた関数も用意してるし。
883 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:10:21 ] >>879 >コードなんて20行も無いだろ? そうとは限らないだろ・・・どんだけ規模の小さいプログラムよ
884 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:11:34 ] >>882 例外処理用に関数用意するなら、 最初から、ThreadExceptionイベントをハンドルして処理するだけでいいだろが
885 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:11:57 ] >>883 1メソッド20行にも納められないのかよ。 どんだけ、汚いプログラムだよw
886 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:13:34 ] >>884 趣旨が間違えているぞ。 運用に入ってからでも、ユーザーに気付かれず、 簡単に且つ素早く、エラーを起こしている箇所を特定しなければならないんだよ。
887 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:21:09 ] >>879 >可読性の良いコードなら、catchやfinallyにバグが入り込む可能性は低い。 可読性は関係ないだろー そこにバグがあると動作中のバグがどこにあるのかわからないことだってある。
888 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:25:03 ] >>886 ThreadExceptionイベントで、 簡単に且つ素早く、エラーを起こしている箇所を特定できない状況をおしえてくれよ。 そもそもユーザーに気づかれない機能って何だよ。
889 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:26:55 ] つか、スタックトレースを知らないってオチはないよな…
890 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:29:05 ] .NET the final frontier.
891 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:31:54 ] ThreadExceptionイベントで取れるわけだが・・・
892 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:38:11 ] スタックトレースは厳密な経路ではない
893 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:42:18 ] 結局スタックとレース以外でcatchやfinallyは必要ないってオチですか?
894 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:45:00 ] 厳密な経路ってどんなん? スタックトレースでは困るほど異なるもんなのか?
895 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:46:30 ] そんなに場所特定したいならpbd付けとけ
896 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:47:08 ] pdbだorz
897 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:47:53 ] 全メソッドでExceptionをキャッチ 経路の詳細情報をログ出力 そして再スローって 具体的にどんなコードになるんだ?
898 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:48:36 ] スタックトレースってReleaseとDebugで挙動が異なるんじゃなかった?
899 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:50:41 ] ソースのパスと行番号が出るだけ
900 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:50:49 ] >>897 あまりいじりたくないコードになりそうだなw
901 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:51:24 ] どこで例外が起きてるかそこまでして知らなくてはならないということは、 どうしようもないパゲッティで、どっちらけなコードではないか?
902 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:56:15 ] >>901 お前らのコードよりも見やすい自信はある。 但し、サブルーチンが多いので、奥まで入れてグチュグチュする必要はある。
903 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 19:59:15 ] スパゲッティじゃんw
904 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:13:17 ] >>903 なんだ? お前はサブルーチンのないコードが正当だというのか? 普通、コメントや改行、宣言を除いて、メソッドで処理に書ける行は5〜10行だぞ。 それ以上長くなると、可読性のないコードになる。 それだと、一つ一つサブルーチンにしてしまった方が良い。
905 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:16:00 ] 厳密もなにも、メソッド内で得れる経路情報なんて、 ThreadExceptionイベントでも取得できますよ。 それにさ、メソッドごとに特化した例外処理なんて入れてたら、 それこそ、そこにまでバグが潜む可能性があるんだからさ、 決まり文句かくならThreadExceptionイベントで十分だろ。
906 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:18:54 ] >>904 つまり、10000ステップのソースなら、 1000〜2000メソッドあるってことですね。
907 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:20:29 ] >>906 つ共通化
908 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:20:59 ] >>905 メソッド内の例外処理は全て同じ。
909 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:22:52 ] 行数が少ないほど可読性が高いと思ってるのか? DBの正規化でも、同じことが言えるだろ? 簡単な電卓プログラムじゃないんだから。
910 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:25:12 ] >>907 お前のステップ換算は共通化する前のソースなのか? >>908 全て同じなのに、ThreadExceptionイベントでダメな理由は何?
911 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:26:39 ] ま、どうでもいいけど、 たった1000ステップに100も200もメソッド作らんね。
912 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:28:34 ] >>909 1024*768で、 一画面に収まるコードはマナーだろ。 >>910 関数化も共通化も終えての行数だ。 ステップ数じゃない。
913 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:32:15 ] ここにいる連中はステップ数と行数の違いもわからないのか? マジあきれた。
914 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:34:12 ] 一度その全て同じなコードを書いてみてくれ。
915 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:36:10 ] その全て同じなコードが処理行数5〜10行の全てのメソッドに書いてあるのか?
916 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:39:04 ] で、関数の数はいくつなん?
917 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:39:36 ] >>915 全て同じなコード自体が1行のコードだがな
918 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:40:38 ] >>916 言うほど多くない。 クラス設計できてたら大したことにならない。
919 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:42:32 ] 練習で作った電卓プログラムですってオチですか?
920 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:43:02 ] なんかわけのわからんことで揉めてるな 正直、例外のトラップを一元化した方が好ましいって言う奴初めて見たよw それ実践を踏まえて言ってるんだろうか。 それって、それこそN-BASICの時代のON ERROR GOTOじゃんw いやそれならまだしも、その飛び先で例外オブジェクトをパースしないといけないんでしょ? それじゃSDKのウィンドウプロシージャと一緒じゃんw
921 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:44:24 ] 俺の場合は最終的な例外処理はThreadExceptionとかの共通ハンドラ。 まあここではユーザ用メッセージの表示とログ出力位だが。 メインなロジック部分は、ロジックの最上位辺りで自動補捉してログ出力、必要に応じてラップその他の処理。 あとは個別に特に例外処理が必要な箇所だけキャッチして処理。 他の部分はキャッチなし。finallyのみ。
922 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:45:10 ] ちゃんと.NETが提供してる機能があるんだから、 何も知らない初心者はすっこんでろ。
923 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:48:28 ] 一行でどうやって再スローまでやるんだ? しかもExceptionをキャッチしてだろ? 全然特化してない例外処理しか出来ないのに、 これじゃ各メソッドでやる意味があるように見えないんだが…
924 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:56:43 ] >>923 つ関数
925 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 20:59:12 ] 単にThreadExceptionのハンドラを使ったことがないから、よく知らないってオチでいいよ。
926 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 21:01:20 ] Application.ThreadExceptionイベントスゲーウヒョー
927 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 21:01:52 ] >>924 >>884
928 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 21:27:44 ] ∩_ 〈〈〈 ヽ 〈⊃ } ∩___∩ | | | ノ ヽ ! ! / ● ● | / | ( _●_) ミ/ < 次いこうぜ〜 彡、 |∪| / / __ ヽノ / (___) /
929 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 21:41:33 ] そんな事したらスタックトレース消えるだろうがよ。 それに変なメソッドが例外のソースになるだろうがよ。 お、ひょっとしてそれでスタックトレースみれてないのか? もし仮にそうだとしたらあほとしかいいようがない。
930 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 21:45:39 ] >>920 個別に処理してしまう例外はその場でキャッチするに決まってるだろ。 それ以外の例外だよ、まとめて処理するのは。 全メソッドでExceptionをキャッチするなら、 同じようにパースが必要になるんじゃないのか?
931 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 21:56:07 ] もういいよ、既に決着はついてる。
932 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:01:34 ] >>920 はあふぉうだから相手にするな
933 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:03:46 ] >>930 それ以外って何だよw いや、@ITの記事にも書いてあった気がするが 想定外の例外が起きた場合の「保険」的な意義は大いにあるよ。 それにそういう想定外の例外の場合、いきなりあの無愛想なデフォの例外のダイアログが 出るより、別の何らかの表示をするようにした方がユーザーの心証もいいしね。 逆に言えばそれ以外の価値は一切認められないよ。
934 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:08:21 ] だからさー ThreadExceptionイベントをハンドルすればいいだけだろ。 どうしてもメソッド内で処理しないと困る例外だけ try〜catch〜を使えばOKだろ。
935 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:09:52 ] そういうのを逆立ちした発想っていうんだよ
936 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:12:02 ] じゃあさ、最初から出てる全メソッドでExceptionキャッチってなんなのよ? 全部想定されるException型なのかよ。 全メソッドで想定されるExceptionがあるのかよ。 多くのメソッドでは想定される例外なんてそうないだろに。
937 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:13:37 ] 誰も全ての例外を最上位でやるなんていってないのに。
938 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:18:18 ] まずさ、 メソッド内で取得できるExceptionは、 Application.ThreadExceptionのイベントハンドラでも取得できるというのは解ってるよな? それで、わざわざ全メソッドに同じ例外処理の内容を書く理由はあるのか?
939 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:20:30 ] ネタかと思ったけど本当にパーなのね。 だから>>930 の「それ以外」って何のこと?w 具体的に挙げてみ。 つーか、だいたい何のために構造化例外処理なんてものを導入した経緯が あると思ってるんだ
940 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:25:15 ] 「それ以外」 同じ例外処理のことだろ?
941 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:31:17 ] IDないからぐずぐずになってるスレ
942 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:35:48 ] コテハンつけるかもしくはアンカー打ってくれ。 何がなんだかさっぱりわからんw
943 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:35:52 ] だめだわけわかんね。 構造化例外は、全メソッドでException型をキャッチすることで何か意味があるとでも? 個別に処理してしまえる例外以外を具体的にって いったいどういえと。
944 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:37:02 ] 全メソッドで全例外をキャッチするなら 構造化例外なんていらん
945 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:40:05 ] >>939 お前が個別に処理しなきゃならない例外を具体的に挙げろよ。 それで処理してしまえない残ったもの全部だよ。 パーとかいってんだからお前があげろ ついでに全メソッドで例外をキャッチして再スローするメリットもな
946 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:42:21 ] あと、個別にキャッチしてする例外処理は全部同じ処理だぜ
947 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:45:13 ] 意地張って、表現の仕方にケチつけるくらいしか出来ないんだよ。 実際まともな解答がひとつも無い。
948 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:47:14 ] >>934 >>934 >>934
949 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:49:06 ] まあ愚か者は経験からしか学ばないわけでw いや経験から本当に学んでいるかどうかも怪しいわけだが。 構造化例外処理の意義がどこにあるか? それはThreadExceptionで一元的にトラップするように書いた自分のコードを 一年後にメンテしてみればたぶんよくわかるよ。 まあそれでわからなきゃ本当にパーだわ。
950 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:50:43 ] >>949 根拠も具体例もないただの自論だな
951 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:53:54 ] 誰も全て一元化するなんていってない いいから全メソッドでExceptionをキャッチして以下省略のメリット書けや。 構造化例外はそのためにあるんだろ? おかけでメンテも楽になるんだろ? お前の経験でこんなメリットてのを書けよ
952 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:53:58 ] >>950 トンデモさんにとってはアインシュタインの相対性理論も「根拠のないただの持論」らしいからなw まともなプログラマやソフトウエア工学の学者で構造化例外処理を否定してる奴が 一人でもいたら教えてくれよ。
953 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:54:56 ] ついに構造化例外処理を否定してることになったぜ。
954 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:56:23 ] >>951 何か勘違いしているようだが、メソッド全体をTry〜ブロックに入れろ、 なんてトンデモをいっている奴は一人もいないと思うぞw ただThreadExceptionイベントなんぞには保険的な意味合いしかないと 言っている奴がいるだけだ。
955 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:58:03 ] >>952 お前は馬鹿か? 「全メソッドに同じ例外処理の内容を書く理由はあるのか? 」 この質問に、根拠のないただの持論で誰が納得するんだ? メリデリをしっかり挙げてくれないとお話にならないだろ。
956 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 22:58:39 ] >>953 自分の言っていることがわからないんだから病膏肓だねw ThreadExceptionイベントなるものに保険以上の意味を認めるってことは 構造化例外処理を否定しているってことだ。 だから>>930 の「それ以外」とは何かと聞いているだろう
957 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:01:56 ] 例外トラップとかはAOPしたいんだけど、catchの方はEventに投げるとしてもFinallyの方がやり様がないよね
958 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:02:02 ] 構造化例外処理といいながら、全メソッドに関数呼ぶ同じ1行ですか?ワラカシテクレルゼ
959 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:05:04 ] >ThreadExceptionイベントなるものに保険以上の意味を認めるってことは >構造化例外処理を否定しているってことだ。 面白いこと言うんだな。 Try-Catch構文だと、例外を正しくトラップできないケースは多々あるのに対して、 ThreadExceptionイベントは確実にトラップできる。 これは事実だ。
960 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:06:08 ] >>955 プログラミングの基本からわかってないようだから言っても無駄だと思うけど、 仮に例外処理に「共通の処理」があるとしたら普通はそれ自体をメソッドにして 「明示的に」それを呼び出すコードを書くんだよ。 馬鹿は自分の記憶力があてにならない、という事実すら忘れるんだろうけど コードを書いたときには「ここで例外が発生した場合を俺は想定しているぞ。その場合は ThreadExceptionのハンドラに飛んで・・・・・・」と思っていてもそんなことは 人は忘れてしまう。 まして最初からそんなこと知らない他人はどうなるんだよ。
961 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:07:07 ] だからさ、ユーザ用のつうちをThreadExceptionでやるだけだろが。 それだけで構造化例外処理の意味がなくなるのかよ。そんなに言うならお前の言葉で構造化例外のメリットを説明しろ。 ついでにThreadExceptionを上記の様に使うだけで 構造化例外を否定してることになるという具体的にな説明もな
962 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:07:22 ] なんでもかんでもCatchする方がよっぽど構造化例外処理を否定してると思うけどな
963 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:09:33 ] >>960 > コードを書いたときには「ここで例外が発生した場合を俺は想定しているぞ。その場合は > ThreadExceptionのハンドラに飛んで・・・・・・」と思っていてもそんなことは > 人は忘れてしまう。 アホ。例外を想定してないからThreadExceptionで受けるんだよ。 想定してたらそれに応じた型の例外をその場でCatchして処理するわ。 おまえ全然分かってないな。
964 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:11:09 ] 全メソッドで共通なら全部書かなくても同じだろ ついでだが、業務で開発とかだとまとめて一ヶ所で処理はやむをえないことも多い
965 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:11:47 ] >>963 何を的外れな仮の話をしているんだい? それが全メソッドに同じ例外処理を書く理由ですか?
966 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:12:24 ] ↑アンカーまちがい、>>960 な
967 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:12:49 ] >>963 それなら俺が>>933 で書いたことを否定する理由はないはずだが。 ま、馬鹿は自分の言っていることも人の言っていることもよくわからないんだねw
968 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:13:22 ] 見事に質問が埋もれてるな。 >>870 System.Text 名前空間の Encoding クラスを使って、 Encoding.GetString 使ったり StreamReader の引数に渡したりする。
969 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:13:50 ] 全メソッドにtrycatch書くってひとは、悪いけどトリップつけてくんない? どれが馬鹿か分からなくって困るから
970 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:15:17 ] >>969 だからそんな奴は最初からいません。
971 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:17:18 ] >>840 >>842 >>851
972 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:18:52 ] >>960 > コードを書いたときには「ここで例外が発生した場合を俺は想定しているぞ。その場合は > ThreadExceptionのハンドラに飛んで・・・・・・」と思っていてもそんなことは > 人は忘れてしまう。 意識する必要がないだろ。良く考えろよ。 全く同じ決まった処理なら、ThreadExceptionのイベントハンドラとして一箇所に書いてあるのだから意識不要。 そのメソッド内でどうしても必要なものだけ書けばいいんだから、よっぽど効率いいだろ?
973 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:21:10 ] >>972 話の通じない馬鹿だなw もういいよ一生やってな別に止めないし
974 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:23:17 ] 全メソッドにtrycatch書くってひとは、 具体的なメリデリが書けません。自論です。 ってオチですな。
975 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:25:53 ] 要は全メソッドでCatchしないと正体不明の例外が処理できなかった時代の 手法をそのまま引きずってるだけじゃないの? FrameWorkがそんなことしなくてもいいように設計されてるのに。
976 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:26:02 ] >>973 安心しろ、誰にも通じてない。
977 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:26:03 ] いや、書いてはある。 ただ君に理解できないだけだ。 そういえばトンデモさんの常套句もそうだ。 アインタインは間違っているに違いない! この俺様に理解できないのだから!
978 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:27:14 ] せめて1人くらいには通じる話をしてくださいです〜
979 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:29:03 ] >>977 お前もう痛すぎるから
980 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:34:57 ] 関係ないけど、相対性理論の間違いは日本人によって正されつつある。 www.ni.bekkoame.ne.jp/tsuneizumi/ これくらいは解ってていってるんだろ?
981 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:35:26 ] あなたにアインタイン
982 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:36:20 ] AOPが一般化してるときになに一転だ。 全メソッドに同じ処理を書くべしって
983 名前:969 mailto:sage [2006/10/18(水) 23:39:52 ] だからtry〜catchを前メソッドに書くのが良いんだよ。 ThreadException知らないやつでも、明示的に処理してるのが分かる。 チームプログラミングは、上のレベルであわせるのではなく、 VB.NET初めて3日のヤツでも理解できるように書いてやるんだよ。 いつまでも一定レベル以上の人間じゃないとメンテできないソースなんて、 人的コストが掛かりすぎてたまらんわ。 お前らみたいな優秀なやつらをメンテなんかで使いたくないんだぜ?
984 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:42:16 ] つまり低レベルの人間に合わせた低レベルの手法ということですね。納得。
985 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:45:21 ] 明確にだめだと言われてるやりかただけどな。 て言うか、未だにその共通処理でなにやるのか分からん
986 名前:985 mailto:sage [2006/10/18(水) 23:46:37 ] >>984 お前らみたいに視野の狭い連中は物作りさせるしか使い道が無いのよ。
987 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:50:23 ] まあいかにもVB6でOn Error ResumeNextとか多用してたような奴が 考えそうなことなんだけどね
988 名前:983 mailto:sage [2006/10/18(水) 23:52:42 ] \ U / \ U / / ̄ ̄ ヽ, / ', / _/\/\/\/|_ \ ノ//, {0} /¨`ヽ {0} ,ミヽ / \ / \ / く l ヽ._.ノ ', ゝ \ < バーカ > / /⌒ リ `ー'′ ' ⌒\ \ / \ (  ̄ ̄⌒ ⌒ ̄ _)  ̄|/\/\/\/ ̄ ` ̄ ̄`ヽ /´ ̄ | | −−− ‐ ノ | / ノ −−−− / ∠_ −− | f\ ノ  ̄`丶. | | ヽ__ノー─-- 、_ ) − _ . | | / / | | ,' / / / ノ | ,' \ / / | / \ /_ノ / ,ノ 〈 \ ( 〈 ヽ.__ \ \ ヽ._> \__)
989 名前:989 mailto:sage [2006/10/18(水) 23:53:30 ] / ノ −−−− / ∠_ −− | f\ ノ  ̄`丶. | | ヽ__ノー─-- 、_ ) − _ . | | / /
990 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:54:26 ] >>983 だから、お前が言ってるのは、自論と、職場の規約や都合だけだろ・・・
991 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:56:52 ] お前ら、俺の言うことはアインシユタインの言うことだぞ 理解できないやつはトンデモなんだぞ
992 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:58:14 ] >>990 俺の職場のルールが正しければ、お前らが何て言おうと関係ない。 俺の会社はお前らみたいな零細とは違うんだからなqq
993 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:58:20 ] とりあえずきっかけを作った>>838 が悪いってことで終わりにしようぜ。スレも終わるし。 誰か次スレプリーズ。
994 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 23:59:56 ] もう震度毛よ
995 名前:デフォルトの名無しさん mailto:sage [2006/10/19(木) 00:01:33 ] 素朴に疑問だ。ホントに全メソッドで全例外キャッチ?
996 名前:838 mailto:sage [2006/10/19(木) 00:06:33 ] 盛り上がったなwww
997 名前:デフォルトの名無しさん mailto:sage [2006/10/19(木) 00:15:45 ] 100ならVB.NETはメソッド内でTry〜Catch〜Finally〜が正しい。
998 名前:デフォルトの名無しさん mailto:sage [2006/10/19(木) 00:25:29 ] コレでまたひとつ新しいトリビアが誕生した
999 名前:デフォルトの名無しさん mailto:sage [2006/10/19(木) 00:29:38 ] 今更だけどメリデリって何ですか?
1000 名前:デフォルトの名無しさん mailto:sage [2006/10/19(木) 00:29:42 ] 1000なら伊東怜と生でセックスできる
1001 名前:1001 [Over 1000 Thread] このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。