1 名前:デフォルトの名無しさん [2007/04/23(月) 12:42:36 ] 前スレ VB.NET質問スレ (Part20) pc11.2ch.net/test/read.cgi/tech/1173061176/ テンプレは2〜10くらいまでの間にある予定
679 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 13:03:23 ] >>672 以前自分もこれしらべたことあったけど、現状じゃ無理ー。
680 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 13:05:51 ] >>678 タブコントロールのタブか? 普通にマウスクリックイベントに書けば?
681 名前:デフォルトの名無しさん [2007/06/15(金) 13:08:44 ] >>679 やっぱむりっすか・・・ 中のボタンコントロールみたいなのとれればなとか あれこれ調べたんですがこれもムリだったので、まぁ、今回はちょっと別の方法模索してみようかなとおもいます。 レスありがとうです!
682 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 13:14:45 ] >>681 正確にいうと、ReadOnlyにすることで、無効化は可能。 ただ、視覚的にenabled=false(グレー表示)にすることが不可能。 ボタンを押す行為自身はできちゃうんだよね…
683 名前:デフォルトの名無しさん [2007/06/15(金) 13:28:06 ] >>682 もうちょっとツボ抑えた機能がほしいところですね 全部既存のコントロールが中にあるんだろうし 少しくらい公開してくれても・・・(;´Д`)
684 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 13:34:46 ] 中にコントロールはなかったような。 編集するときEditControl生成するくらいじゃね? Buttonの絵を書いてるだけだよ。 じゃなきゃ何千ものコントロールのハンドル管理しなきゃいけなくなるっしょ。 だから継承して自分で描画すればいいだけの話
685 名前:デフォルトの名無しさん [2007/06/15(金) 14:04:58 ] >>684 いいヒントもらえたのでちょっと強引にやってみました。 セルのボタンを表示したくないValueにはNothing そうじゃないばあいNothing以外を入れて CellPaintingイベントで If e.RowIndex >= 0 AndAlso e.ColumnIndex >= 0 AndAlso dgvList.Columns(e.ColumnIndex).Name Is 該当のカラム Then Dim temp As DataGridViewCell = dgvList.Rows(e.RowIndex).Cells(e.ColumnIndex) If temp.Value Is Nothing Then Dim TempPoint As New Point(e.CellBounds.X + e.CellBounds.Width - 1, e.CellBounds.Y) Dim TempPoint2 As New Point(e.CellBounds.X + e.CellBounds.Width - 1, e.CellBounds.Y + e.CellBounds.Height) e.Graphics.FillRectangle(New SolidBrush(Color.White), e.CellBounds) e.Graphics.DrawLine(New Pen(SystemColors.ControlDark), TempPoint, TempPoint2) e.Handled = True End If End If ボタンを表示したくない時は自分で塗りつぶして線も描画し、表示したい時はコントロール任せ こんな感じでとりあえずいけそうかなぁと 助かりました〜
686 名前:デフォルトの名無しさん [2007/06/15(金) 14:42:56 ] グループボックスの中にボタンが配置してある場合、グループボックスの背景色を 変更したらボタンも一緒に変わってしまう。。 再度ボタンを設定しなおせば良いのは分かりますが、 予め反映させないようには出来ないのでしょうか?
687 名前:デフォルトの名無しさん [2007/06/15(金) 15:22:57 ] >>686 ???? 今やってみたけど変わらないと思うぞ あらかじめGroupBoxに背景色が設定してあって、そのうえにボタン追加したらその現象が出るなぁ・・・ ちなみに2005IDEね
688 名前:686 mailto:sage [2007/06/15(金) 15:37:46 ] ぇええぇぇええ〜。 実験どうもです。 自分の所もVS2005のVB。 ちょっと新規にプロジェクトを作成して試してみましたが、 グループボックスの中にボタンを配置して、以下のプログラムで再現します。 GroupBox1.BackColor = Color.Aqua この場合、グループボックスもボックス内にあるボタンもAqua色。。
689 名前:デフォルトの名無しさん [2007/06/15(金) 15:46:23 ] >>686 あ〜 ボタンのスタイルをスタンダードにしてるから 見た目かわらないだけでグループの背景色変えたらボタンの背景色変わってるな〜 たしかにFlatとかにしてたらIDEでも変わるのが目に見えて判る こういう処理やったことないからわからないけど・・・・自動で子にいろいろ設定されるのは難しいんじゃなかろうか・・・ FormのFontSizeとか変えたら子のサイズも変わるのと同じ原理なんだろうなぁ・・・ ある意味気が利いてていいんだが・・・
690 名前:686 mailto:sage [2007/06/15(金) 15:47:58 ] コードとか関係なくGUIでもそうなっているんですね。。 ラベルやチェックボックスとかには便利だけど、 ボタンにこれは必要ないだろ〜。 ぅう、面倒くさー。
691 名前:686 mailto:sage [2007/06/15(金) 15:50:10 ] >>689 入れ子になりました。 度々どうもです。 うーん、小さな親切って奴ですな〜。
692 名前:673 mailto:sage [2007/06/15(金) 15:51:01 ] >>675 どうもありがとうございます。ExpressからProにアップグレードできるんですか? 以前のエディションのPro版からしかアップグレードできないとおもっていたので、 とても助かります。ありがとうございました。 >>676 どうもありがとうございます。わざわざURLを貼っていただきまして。やっぱりPro版じゃないと だめみたいですね。 >>677 製品版なんてものもあるんですね。CrystalReport単品ですね。でも、7万しますね・・ MicroSoftはここまで金をもうけないと駄目なんですかね・・ どうもありがとうございました。お礼が遅くなりすみませんでした。料理してたら忘れてまして・・
693 名前:686 mailto:sage [2007/06/15(金) 15:54:48 ] >>689 ああ、どうもです。 FlatStyleプロパティをSystemにする事で、回避できそうです。
694 名前:デフォルトの名無しさん [2007/06/15(金) 16:01:58 ] >>693 ついでにちょっと試してたんだけど IDEでグループボックス貼り付け IDEでボタン貼り付け ボタンのスタイルをフラットにして、色をREDに変更 このあとグループボックスの色変えてもボタンの色変わらなくない? もちろんコードでグループボックスの色変えても
695 名前:686 mailto:sage [2007/06/15(金) 16:06:56 ] >>694 自分が確認した範囲では、一度ボタンの色を任意に設定した後は、 ボタンのスタイルに関わらず、グループボックスと連動する事はなさそうです。 スタイルをSystemにするか、BackColorをColor.Transparentにするかの どちらかになると思います。
696 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 16:11:53 ] >>674 ではその可能性とやらを教えてください
697 名前:デフォルトの名無しさん [2007/06/15(金) 16:20:47 ] >>696 またお前かw 偉そうな質問者よ 他のスレで大暴れしているな?
698 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 16:25:08 ] >>697 完全に人違い。 さっきのはもうあきらめました。 ちなみに別のところで詰まってるんだけど 教えてもらえるかな
699 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 16:54:12 ] だがことわる って言われたら諦めるの?
700 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 17:11:23 ] やだ っていったら教えてくれるの?
701 名前:デフォルトの名無しさん [2007/06/15(金) 17:23:11 ] >>700 お前には教えない 教える気になる書き方しろやカス つうか、おまえはそういう聞きかたされておしえるのか? もしそうなら教えてほしいんだが Form閉じる時に何か処理したいんだがなんてイベント使えばいいんだ? たのむから教えてくれカス
702 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 17:57:14 ] 何でお前はそんなに偉そうなんだ お前は俺の質問に答えられるのか 無理なくせにえらそうにするなよ
703 名前:デフォルトの名無しさん [2007/06/15(金) 17:59:13 ] DataTableでColumnsの最大値っていくつまで指定可能ですか?
704 名前:デフォルトの名無しさん [2007/06/15(金) 17:59:25 ] >>698 = >>700 = >>702 = Null つまり奴はこの世の中には存在しないんだよ!!!! >>702 それまさにお前 m9(^Д^) ところで釣れますか?
705 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 18:02:41 ] >>701 FormClosingだ、馬鹿。 Closingが見つからないからってあせるな馬鹿。
706 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 18:04:52 ] >>703 Columns.CountプロパティがIntegerだからそこから最大値は必然的にわかるだろ。
707 名前:デフォルトの名無しさん [2007/06/15(金) 18:09:53 ] >>706 おお! 盲点ってか全く気がつかなかった。 サンクスです。
708 名前:デフォルトの名無しさん [2007/06/15(金) 18:13:21 ] ぜひ>>671 には わ○くま とかの掲示板で質問していただきたいw
709 名前:703 mailto:sage [2007/06/15(金) 18:14:17 ] もうひとつ聞きたいことがあるんですが、 DataTableにNewRowした時点で、 あらかじめ項目に規定値をセットする方法ってあるのでしょうか?
710 名前:デフォルトの名無しさん [2007/06/15(金) 18:15:14 ] >>705 ばっかw そこは2003か2005か聞くところからはじめさせるための釣りの布石なんだよwwww MayBe... BoyesBe...
711 名前:デフォルトの名無しさん [2007/06/15(金) 18:18:11 ] >>709 DataColumn みてみ?
712 名前:703 mailto:sage [2007/06/15(金) 18:24:59 ] >>711 どうもです。 試してみます。
713 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 18:47:12 ] VB2005が何か落ちまくる。 コピペしようとすると、コピーの段階でdevenv.exeのCPU使用率が 急上昇して最終的に落ちるか固まる。 はー・・・。
714 名前:デフォルトの名無しさん [2007/06/15(金) 18:48:28 ] Dim str As String = "abc" str = Format(str, "@,@,@") MsgBox("str") これで出力をすると結果が「@,@,@」になるのですが、どうしてなのでしょうか?; どの解説サイトを見てもFormat関数の書き方は間違ってないはずなのですが・・・
715 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 18:49:12 ] ちなみにHndles Button.click内にあります。
716 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 19:09:04 ] すみません、上記は間違いです Dim str As String = "abc" str = Format(str, "@,@,@") MsgBox(str) 自分では「a,b,c」と出ると思ってるのですが、どこか間違ってるんでしょうか?
717 名前:716 [2007/06/15(金) 19:14:32 ] VB2005です
718 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 19:16:07 ] TextBox/DateTimePicker/CheckBox/RadioButton などのコントロールが 50個以上あるフォームが有るのですが、フォームのクローズボタンなどで 閉じられた際に、内容が修正された場合には確認のメッセージを 表示させたいのですが、どうすれば良いでしょうか? TextBoxの場合はModified がありますが、それ以外のコントロールはありませんし・・・。
719 名前:デフォルトの名無しさん [2007/06/15(金) 19:19:03 ] >>718 起動した時に覚えておいて Closingかなんかでチェックすればいいんじゃね?
720 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 19:27:46 ] >>719 やっぱりそれしか無いですかね。 なんか遅くなりそうで心配・・・。
721 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 19:32:32 ] フラグ一つ見るのに時間がかかるわけがないと思うんだが。 たぶん1nSecもかからないと思うぞw
722 名前:718 mailto:sage [2007/06/15(金) 19:50:28 ] >>721 え?フラグ一つってどういうことでしょうか? 今、修正される可能性があるコントロール全てを、データクラスにして 表示する時と閉じる時にセットして比べようとしているんですが・・・。 もしかして自分は壮大な過ちを犯してしまっているのか!
723 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 20:09:45 ] そのデータクラスにIChangeTrackingを実装すればいい。
724 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 20:14:26 ] フラグを一つ付けるためだけにコントロールを継承するのはアホらしいでしょ Control.TagプロパティやDictionary(Of Conrtol, Boolean)でいいと思うけど
725 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 20:15:13 ] フラグはフォーム全体に一つで十分だろ…
726 名前:724 mailto:sage [2007/06/15(金) 20:18:21 ] すまん>>723 はデータクラスにフラグを付けろって言ってたんだな それでいいと思う
727 名前:718 mailto:sage [2007/06/15(金) 20:28:27 ] ありがとう御座います。 IChangeTrackingってググってもあんまり情報が無いですね。 インターフェースですか。 変更されたかどうかと、それをリセットする事が出来るみたいですね。 まさにこれが欲しかった! .NET2.0スバラシイ! でも使い方が良く分からない・・・。 ちょっと、いろいろ実験してみます。
728 名前:718 mailto:sage [2007/06/15(金) 21:07:50 ] 駄目だ! 全然値が入らない。 そもそもインターフェースの使い方も良く分からなかった。 作ったデータクラスに、下記を書き込んで Public Interface IChangeTracking End Interface 下の変数でどうにかするんだろうけど、、サパーリネ Dim instance As IChangeTracking
729 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 21:28:11 ] >>718 すまん。 あんたPGの才能ないと思うわ。 たぶんデータが変更された後セーブされずにプログラムが終了されようとしてる時に そのまま終了するかセーブするかユーザーに確認したい、ということだと思うけど、 それなら、仮に厳密にやるとしてもセーブした時点のデータと プログラムが終了されようとした時点のデータを比較するだけじゃん。 普通はそこまでしなくても、例えば Private dataModified as Boolean = False みたいなフィールドを作っておいて、何か一つでも変更があったらこれをTrueにすれば 用は足りるんじゃないの? もちろんundoした場合の動作の厳密さが必要ならこういう手抜きはダメだけどね。
730 名前:718 mailto:sage [2007/06/15(金) 21:37:08 ] >>729 才能無くてサーセンwwwww それって、修正される可能性があるコントロール全てに イベントを作るって事ですか?
731 名前:デフォルトの名無しさん [2007/06/15(金) 22:17:30 ] >>730 そういう聞き方するってことはたぶんコントロール自体をデータの入れ物にするような設計、 つまり何かのタイミング(ファイルにセーブするとか?)で一度に全部のコントロールの プロパティをまとめて読むような設計なんだろうけど、普通はそもそも そういうプログラムの書き方しないと思うよ。
732 名前:718 mailto:sage [2007/06/15(金) 22:55:30 ] ガーン。 そうなんですか。 >>731 の書いてある通りに、登録ってしたらコントロールの内容をDBへ 一括に書き込もうとしているんですが、これってオカシイんですか。 (コントロール→データクラス→DB) それで、登録されずに閉じられようとした場合には、確認のメッセージを 出したいって感じですが・・・。
733 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 00:37:24 ] いや、検証はいつかしなくちゃいけないんだから、 ・コントロール全部にイベントつけて値が変わったら個別の検証コード走らす ・close, apply, ok等のアクションで全体の検証コード走らす のどっちかでしょ。 前者だったらclose,apply,ok等のアクションで判定するのは一つのフラグで済むけどイベントがたくさん 後者だったらイベントたくさんはいらないけどアクションで全体を検証しなくちゃいけない どっちでもいいと思うけど、コントロールが多いなら後者がいいんじゃないの?
734 名前:716 [2007/06/16(土) 01:43:54 ] どなたか分かりませんか?; ボタンのクリックイベントで Dim str as string str=Format("ABC","@,@,@") Msgbox(str) とだけやっても結果が@,@,@となりできませんでした・・・ 数字の場合だと Dim str as integer str=Format("123","00000") Msgbox(str) 00123となり大丈夫だったんですが、Stringになると・・。 開設サイトを見ても文字列の書式は Format("ABC","@@@@@") で結果が ABCとなると書いてあるのに私のプログラムですと@@@@@なってしまいます;
735 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 10:04:26 ] まあ何が間違ってるか、ってそれはきみの学習姿勢が間違ってるんだよ。煽り抜きで。 または致命的に頭が悪いか。 いずれにせよ、そのレベルのことを人に聞くのは恥ずかしいことだ、って意識がないとしたら PG向いてないよたぶん。
736 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 10:19:00 ] >>734 ここの下のほうを見ろ msdn2.microsoft.com/ja-jp/library/wb216dct (VS.80).aspx
737 名前:デフォルトの名無しさん mailto:age [2007/06/16(土) 16:41:37 ] >>735 ま た お ま え か 煽り抜きで言わせてもらうが頭大丈夫か? このスレで「PGとして〜」「仕事として〜」「才能が〜」「素質が〜」とか言って叩かれてるやつ全部お前だろ? お前はプログラマという職業が素質、才能のあるやつにしかできないものだと思っているみたいだが もはやPGが流れ作業員として溢れている現状を把握できていればそんな高貴なもんじゃないと分からんのかw そもそも、ここはVB.NET質問スレであって ここに来ているやつは初心者はもちろんの事、仕事外で趣味でやってるやつもいて当然なんだが そこを把握できてない点で頭でっかちなお前さんはPG向いてないよ? チームで組んだことがない孤独PGか、自分の発想しか受け付けないワンマン上司と見たな。 そんなハイクオリティなお前さんには つ「【才能(笑)】高貴なVB.NET質問スレ【才能(笑)】」
738 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 17:02:51 ] >>737 > このスレで「PGとして〜」「仕事として〜」「才能が〜」「素質が〜」とか言って叩かれてるやつ全部お前だろ? 俺も言ってるから、全部同一人物ではないよ。
739 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 17:05:57 ] 「VB.netの」質問をするレベル以前の質問があるのも事実
740 名前:737 mailto:sage [2007/06/16(土) 17:12:17 ] >>738 ちなみに俺も。
741 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 17:12:21 ] 「VB.netの」回答をするレベル以前の回答があるのも事実
742 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 18:30:05 ] >>737 何度言っても分からん馬鹿だね。 初心者であることと叩いてるんじゃないんだよ。 怠惰を叩いてるの。 初心者でも怠惰じゃなきゃ734みたいな質問はしない。
743 名前:デフォルトの名無しさん [2007/06/16(土) 18:39:35 ] >>742 かわいそうな ゆ と り w
744 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 19:00:10 ] >>741 低レベルな質問には低レベルな回答で十分
745 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 19:06:25 ] VBスレだけは回答者がアホ杉。 C丼スレと比べても明らか。
746 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 19:08:19 ] c#スレもここ1年ぐらいはずいぶんレベル低いんだけどな。
747 名前:デフォルトの名無しさん [2007/06/16(土) 20:12:18 ] てかみんなC#もVB.NETも同じように使えるんだろ?
748 名前:デフォルトの名無しさん [2007/06/16(土) 21:02:23 ] 同じように使えるがVB上がりは総じてバカなんだお^^
749 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 21:49:57 ] VB6しかできません><
750 名前:デフォルトの名無しさん mailto:sage [2007/06/17(日) 02:43:45 ] >>742 怠惰?お前は734の何が分かってるんだ? 分かったから>>737 で書いたとおり専用スレにでも行っとけ
751 名前:デフォルトの名無しさん mailto:sage [2007/06/17(日) 02:45:45 ] >>742 あと「何度」って どれとどれとどれとどれどれと、どれだよ?
752 名前:デフォルトの名無しさん [2007/06/17(日) 03:35:48 ] >>742 そう思えばスルーすればいいじゃないか? 別にここはそういう人間が来ていけない理由もないし 怠惰であろうがなかろうが答えてもいいと思える人間が答えられるならそれでいいじゃないか
753 名前:デフォルトの名無しさん mailto:sage [2007/06/17(日) 05:56:12 ] throw new exception("他でやれ")
754 名前:デフォルトの名無しさん mailto:sage [2007/06/17(日) 22:58:03 ] VB2005からVCで作られたDLLをコールするときにエラーが出て困ってます。 関数のパラメータに構造体を指定して、構造体のメンバの文字列を渡したいけれど、 なんかうまく行かないんですよね。VB2005だと固定長文字列ってのがサポートされて いないとか何とか言うのは分かったけれど、解決方法が不明となっています。アドバイスをお願いします。 コードはこんな感じ。 *VC2005***************************************************************** typedef struct{ int iTemp; char cTemp[256]; }tag_strTemp; void __declspec(dllexport) WINAPI TestFunction(tag_strTemp* pstrTemp) { MessageBox(NULL, pstrTemp->cTemp, "", 0); } *VB2005***************************************************************** Moduel Module1 Public Structure tag_strTemp Public iTemp as Integer Public cTemp as String ←ここの定義に問題があるんだと思ってます。 End Structure End Module Public Class Form1 Private Sub Form1_Load(・・・) Dim strTemp as tag_strTemp strTemp.cTemp = "ABCDE" TestFunction(strTemp) End Sub End Class
755 名前:デフォルトの名無しさん mailto:sage [2007/06/17(日) 23:03:16 ] MSDN の相互運用マーシャリング以下の項目見れ サンプル付きで解説されてる
756 名前:デフォルトの名無しさん mailto:sage [2007/06/17(日) 23:34:39 ] つうか chrにString渡してどうする・・・・ Chrで渡せばいいのに・・・・
757 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 00:12:40 ] >>756 君も恥かかないうちにその辺で止めといたほうがいいよw
758 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 00:23:27 ] >>757 まぁ・・・書き方はともかく理由は分かってそうなイメージだけどな
759 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 00:41:08 ] 756が分かってるわけないでしょw 値型と参照型の区別もついてないか、あるいはCで>>754 みたいな構造体を 作ったときのメモリイメージが理解できてないか、少なくとも何れかではある。
760 名前:デフォルトの名無しさん [2007/06/18(月) 09:14:20 ] >>759 まさか・・・Stringを値型と勘違いしている・・・わけねぇべ そんなPGいねぇだろ
761 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 10:07:38 ] >>754 <StructLayout(LayoutKind.Sequential)> _ Public Structure tag_strTemp Public iTemp as Integer <MarshalAs(UnmanagedType.ByValTStr, SizeConst := 256)> _ Public cTemp as String End Structure 詳細は>>755 の通りでMSDN参照のこと。 複雑になるようならC++/CLIでアセンブリラッパを作ってもよい。
762 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 12:24:29 ] アラインメント(パッキング)も指定した方がいいんじゃない? まあMSDNライブラリにデフォのパッキングサイズは8Byteって書いてあるのは 間違いっぽいから要らないのかもしれないけど。 あとOut属性も。
763 名前:デフォルトの名無しさん [2007/06/18(月) 13:32:31 ] SQL鯖のDBのカラムで AAA というカラムがあり VarChar(100)でNotNull+デフォルト空文字だとして データ取得する時に 1: dim temp as string 2: temp = directcast(dt.rows(0).item("AAA"),string) として取得している部分があったとき 2の部分でこうやってやるのってムダダしやる必要ってあると思う? 俺は定義で必ずNullはないとしているんだからナンセンスだと思うんだが みんなはどうやってるんだろ? if dt.rows(0).item("AAA") isnot dbnull.value then temp = directcast(dt.rows(0).item("AAA"),string) else 'あれば何か書く end if
764 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 17:59:04 ] SQL文中で ISNULL(対象カラム,'') ってしておけばいいんでない。
765 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 19:42:13 ] やる必要なし NotNull制約を外した場合を考慮するってことなんだろうけど そんなこと考え出したら、システムがややこしくなっちまう 心配ならデータ設計見直すべき
766 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 21:37:34 ] >>762 適当なこと言うな。 .NET のマーシャリングのデフォルトパッキングは8で間違いないし この場面ではパッキングサイズは問題にならない。 文字列を DLL に渡したいのに Out 属性つけてどうする。
767 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 21:47:07 ] >NET のマーシャリングのデフォルトパッキングは8で間違いないし いやだからMSDNライブラリにはそう書いてあるけど、実際いろいろ試してみると どうも4になってるみたいだよ。VB固有かも知れないが。 あと、アラインメントが問題にならない訳がないw 最後の行に関しては確かに>>754 はそう言ってるね見落とした。
768 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 21:53:44 ] >>767 間違いなくパッキングサイズの意味を勘違いしてる。 <StructLayout(LayoutKind.Sequential, Pack:=4)> _ Structure Pack4 Public Data1 As Byte Public Data2 As Long End Structure <StructLayout(LayoutKind.Sequential, Pack:=8)> _ Structure Pack8 Public Data1 As Byte Public Data2 As Long End Structure <StructLayout(LayoutKind.Sequential)> _ Structure PackDefault Public Data1 As Byte Public Data2 As Long End Structure Debug.WriteLine(Marshal.SizeOf(GetType(Pack4))) Debug.WriteLine(Marshal.SizeOf(GetType(Pack8))) Debug.WriteLine(Marshal.SizeOf(GetType(PackDefault))) > あと、アラインメントが問題にならない訳がないw 「この場面では」と断ってるだろ。
769 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 21:55:12 ] だから「この場面で」問題になるってw 頭おかしいんじゃないの?
770 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 22:02:24 ] >>768 でデフォルトが 8 ってのは証明できてるとして。 <StructLayout(LayoutKind.Sequential, Pack:=4)> _ Structure Pack4 Public Data1 As Integer <MarshalAs(UnmanagedType.ByValTStr, SizeConst:=5)> _ Public Data2 As String End Structure <StructLayout(LayoutKind.Sequential, Pack:=8)> _ Structure Pack8 Public Data1 As Integer <MarshalAs(UnmanagedType.ByValTStr, SizeConst:=5)> _ Public Data2 As String End Structure Debug.WriteLine(Marshal.SizeOf(GetType(Pack4))) Debug.WriteLine(Marshal.SizeOf(GetType(Pack8))) 何がどう問題になるのか教えてもらおうか?
771 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 22:10:02 ] ?
772 名前:754 mailto:sage [2007/06/18(月) 22:18:26 ] >>755 ,761 ありがとう! 解決しますた! >>762 さんが言ってたことについては、 アラインメントについても詳しくは理解できていないので、 メンバを8byte区切りにしたり、ダミー変数使ったりして対応します。
773 名前:デフォルトの名無しさん [2007/06/20(水) 11:56:14 ] 検索システムで,検索結果をDataGridに表示しています.(ReadOnly) ちがう条件を入力したら,現在表示されている行に追加されていきます. どうしたら,DataGridに表示されている内容をリセットできますか? DisposeだとDataGridごと消えるし,空データをバインドしても消えないし… どなたか教えて下さい.
774 名前:デフォルトの名無しさん [2007/06/20(水) 12:02:59 ] Panel コントロールで、ScrollBar の Scrollイベントに合わせて リアルタイムで追随する移動を行うべくあちこち探してるのですが、 こういうときは、Client領域を移動できるメソッドかプロパティとして 何を使用すればいいでしょうか。
775 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 12:12:07 ] Location
776 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 12:40:29 ] >>773 ちょっとソース書いてみ
777 名前:デフォルトの名無しさん [2007/06/20(水) 12:45:56 ] 一つのプロジェクト内にユーザコントロールを作成して利用していますが、 コントロールを配置したフォームのデザインが修正されると?エラーになり、 デザイン画面が表示されなくなります。 エラーメッセージ 型 'hogehoge.TukuttaControl' が定義されていません。 例: プロジェクト名:hogehoge ユーザコントロールクラス名:TukuttaControl コントロールを配置したフォーム:Form1 とある時に、Form1.Desugner.vbの内容が以下のように勝手に 修正されてしまい、上記のエラーになってしまいます。 ○ Me.TukuCon = New TukuttaControl ↓ × Me.TukuCon = New hogehoge.TukuttaControl どうにか対策は無いでしょうか?
778 名前:777 mailto:sage [2007/06/20(水) 12:47:40 ] 追記です。 × Me.TukuCon = New hogehoge.TukuttaControl 上記のhogehoge.を消せば、デザイン画面も正常に表示されます。 またTukuttaControlはDllにはなっていません。 よろしくお願いします。
779 名前:デフォルトの名無しさん [2007/06/20(水) 12:58:12 ] >>775 あーっそうでしたか、助かりました!! 回答ありがとうございました!!
780 名前:デフォルトの名無しさん [2007/06/20(水) 13:30:11 ] >>779 と思ったら、これってのはもしかして、Client領域のView範囲を動かす のではなくて、中のコントロールだとかを自前で動かすということでしたか・・・? PanelのClient領域のView位置をプログラムで移動するには何を使えば いいでしょう?
781 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 14:04:23 ] >>780 何いってんのかさっぱりわからんが、 Panel内をスクロールさせたいの? もしかしてPanelにScrollコントロールをわざわざつけてたりする? AutoScroll = trueにすれば自動で表示されるけど。 あとは ScrollControlIntoViewとか VerticalScroll/HorizontalScrollとか
782 名前:デフォルトの名無しさん [2007/06/20(水) 14:58:45 ] >>781 どうもです!! 実はそのAutoScrollですが、確かにScrollBarが出てきてすくロース機能は あるにはあるのですが、、 そのスクロースバーを掴んでマウスボタンを離すと、Panel内のViewが移るのが わかります。 しかし、リアルタイムの動作にならず、これを、マウスボタンを掴んだままで View位置を動かしたいのでした。 マウスのホイールをまわすと確かにリアルで動きますが、スクロールのスピード が限定されるので、できればバーの動きと同期した移動を行ないたいのです。 SetDisplayRectLocation なども見ていますが、これだとWinProcとか使わないと いけなさそうでした。できれば手軽に既存のメソッドかプロパティがあればと・・・。
783 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 23:37:19 ] ID3v1のタグを読み取りたいのですが 発売の年だけがうまく読み取れません 誰かご教授願えませんでしょうか? あとエクスプローラーからのドラッグ&ドロップも宜しければお願いします。
784 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 23:46:29 ] それだけ言われてもそうか大変だなとしか言いようがねぇ D&D なんて検索すりゃいくらでも出てくるだろ
785 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 00:10:21 ] 昔VB6で作ったプログラムを、プロジェクト変換機能を使ってVisualStudio2005に 読み込ませてコンパイルしてみたら、.Netframework必須のアプリが できあがってしまいました。 VB6で作ったプログラムをVisualStudio2005でコンパイルして .Netframework不要のアプリを生成することはできないでしょうか。 .Netの機能を使いたいわけではなく、コンパイルしたいだけなのですが なんとかならないでしょうか。
786 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 00:14:27 ] なりません。 はい次。
787 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 00:22:00 ] >>785 いかんともしがたい
788 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 00:51:06 ] >>782 オレの環境では、Panelにボタンを置いてスクロールさせるとリアルで追従するけど?
789 名前:デフォルトの名無しさん [2007/06/21(木) 01:01:09 ] Diposeパターンについて教えてください。 PenやBrushのようなアンマネージリソースをラップしたオブジェクトを保持するクラスの場合 AとBのどちらで開放するのが正解? Public Overrides Sub Dispose( ByVal disposing As Boolean) If disposed Then If (disposing) Then ' マネージリソースの開放 (A) End If ' アンマネージリソースの開放 (B) disposed = True End If End Sub
790 名前:デフォルトの名無しさん [2007/06/21(木) 01:02:32 ] いきなり打ち間違えてるし。。。 Disposeパターンです。
791 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 01:03:15 ] disposingに関わらず解放
792 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 01:04:48 ] IntPtr 以外は全部マネージドと考えてもいいよ。 つかその辺は保持するな、必要な時に作ってすぐ捨てろ。
793 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 01:06:42 ] いや、コストを考えるとキャッシュしておきたい場合もあるだろハゲ
794 名前:デフォルトの名無しさん [2007/06/21(木) 01:06:51 ] ん? 791と792と回答が違うけど、どっちが正解?
795 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 01:09:39 ] 792。 自分が持っている参照型のフィールドはファイナライザのタイミングでは手を出しちゃダメ。
796 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 01:10:14 ] ファイナライザ?
797 名前:デフォルトの名無しさん [2007/06/21(木) 01:10:56 ] サンキュー イマイチ、この辺の具体例を書いてあるサンプルが見つからなくて困ってた。 勉強になったよ。
798 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 01:24:05 ] また羊がひとつ屠られた
799 名前:デフォルトの名無しさん [2007/06/21(木) 01:50:49 ] VB2005(Express)でお聞きしたいのですが Public Sub WriteXml(ByVal fileName As String) Dim instance As New DataSet1.NewItemDataTable instance.WriteXml(fileName) End Sub 上記コードでデバッグ中にDataTableVisualizerで確認してもデータテーブルにデータが ない状態で、出力されたXMLにも書き出されていませんでした。 データセットに存在しているのはこのテーブルだけです。 DataTableをバインドしているDataGridViewには入力中データが反映されています。 DataTableをXMLに出力するにはどうすればよいのでしょう。 わかりにくいかも知れませんが、よろしくお願いします。
800 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 05:35:37 ] new って英単語の意味は知ってる?
801 名前:デフォルトの名無しさん [2007/06/21(木) 09:24:27 ] >>799 DataGridView.DataSource つかえこのカス野郎!
802 名前:デフォルトの名無しさん [2007/06/21(木) 09:48:20 ] VB2005について質問です SPREADで列数18、幅25の表を作ったら動作が重かったんですが、軽くする方法ありませんか?
803 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 09:55:58 ] >>802 グレープシティーに聞けばいいと思うよ
804 名前:デフォルトの名無しさん [2007/06/21(木) 10:08:52 ] >>802 しかもおまえマルチかよ・・・・ ほんと頭悪いから出て行けよw なにをどうとかなら判るが これだけの情報でどうやって動作軽くしろとかいうんだ アフォらしいの通り越して、お前みたいな奴がソフト作るのホントやめてほしい //-------------------------------------------------------- Visual Basic2005やりたいんだけどアドバイス頼む ttp://pc11.2ch.net/test/read.cgi/tech/1158410544/67 67 名前:デフォルトの名無しさん[] 投稿日:2007/06/21(木) 09:25:40 初心者な質問スマソ SPREADで行列100 X 18、列幅25の表つくったんだけど、 処理(スクロールや行選択)が重いんだけど軽く出来ませんかね?
805 名前:デフォルトの名無しさん [2007/06/21(木) 12:01:29 ] メールアドレスを正規表現で抽出する場合どのように記述すればいいのでしょうか?
806 名前:デフォルトの名無しさん [2007/06/21(木) 12:05:32 ] >>805 スレ (´∀`( ´∀`) チガイ
807 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 12:27:59 ] >>805 ググれよ
808 名前:デフォルトの名無しさん [2007/06/21(木) 12:40:18 ] 散々ググったんですがどうもいまいちわからないんですよ。 冷たいこと言わないで教えてくださいよ。
809 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 12:44:16 ] メールアドレスに一致する正規表現は「ありません」 とぐぐった一発目にあるが?
810 名前:デフォルトの名無しさん [2007/06/21(木) 12:51:04 ] あ(笑)。もしかしてほんとは皆さん知らないんじゃ無いんですか?
811 名前:デフォルトの名無しさん [2007/06/21(木) 13:09:25 ] >>788 どうもです!! 自分はWindows2000+VS2005Proの環境を使ってまして そこではスクロールバーの動きに追従しませんでした。 環境差による可能性がありそうなので、これから別PCの WinXp環境に移して試してみます。助かります!!
812 名前:799 mailto:sage [2007/06/21(木) 13:59:53 ] >>800 と言うことは、Newでクラス参照すると全く新規で作られるということでしょうか? 既存のDataTableを参照するにはどうすればよいのでしょう? >>801 調べてみましたが、使い方がわかりませんでした。すみません。
813 名前:デフォルトの名無しさん [2007/06/21(木) 14:08:28 ] だから 調べてみましたが、使い方がわかりませんでした じゃわかんねぇYO! どこがどうわからんのか言えよ 使う気ないのかしらんが あと既存のDataTableを参照するには と書いてあるということはDataTableをDataGridViewにバインドさせて使ってるんだよな? つまりDataGridViewはその元のDataTableをDataSourceとして持ってるわけだ
814 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 14:12:26 ] >>813 こんな努力もしないアホに教えようとするだけムダだ 質問すらもまともにしようとしていないしな ほれこれでいいだろ もう来るなよ Public Sub WriteXml(ByVal fileName As String) Dim instance As DataSet1.NewItemDataTable instance = DirectCast(DataGridView1.DataSource , DataSet1.NewItemDataTable ) instance.WriteXml(fileName) End Sub
815 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 15:34:06 ] >>808 うぜえな www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=vb+%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE+%E6%A4%9C%E7%B4%A2&num=50 3つめにあるじゃねえか。
816 名前:デフォルトの名無しさん [2007/06/21(木) 15:36:45 ] >>815 みんなスルーしてたのにお前の優しさに>>808 が泣いた
817 名前:デフォルトの名無しさん [2007/06/21(木) 18:56:25 ] 知ってたら教えてー。 VS2005(VB.NETもC#)のIDEで、タブ付きドキュメントにしてソースを 開いていくと、タブが左側に追加されていくのを、右側に追加して いくように変更できないのかな?
818 名前:デフォルトの名無しさん [2007/06/21(木) 19:02:29 ] >>788 WinXp環境に移して試してみましたところ、この環境ではScrollBarの 動きに追随してリアルタイムでViewが動くのを確認しました。 これは環境的な理由があるようにも思いましたので、 ひとまず現状のままにしておきます。 情報ありがとうございました!!!
819 名前:デフォルトの名無しさん [2007/06/21(木) 20:19:49 ] hp.vector.co.jp/authors/VA026956/MouseGesture.html を組み込みました。 実行ファイルをダブルクリックで実行、ショートカットからの実行では問題ないのですが、 ファイルにこのアプリケーションを関連付けしてファイルから実行すると、 エラーで落ちてしまいます(エラーの詳細はわからず)。 おそらくDLLの場所がわからず、読み込めないため落ちてると思うのですが、 レジストリの関連付けで、作業フォルダの指定もできないみたいです。 どうすればいいのでしょうか。。
820 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 21:05:30 ] VBにはJavaのThrowsのような 関数に例外をスルーさせる方法はありますか?
821 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 21:06:51 ] あります。
822 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 21:09:55 ] ググッてみてもJavaとは例外処理の概念が違うから ウンヌンカンヌンで例外のエスカレーションは できないのです。みたいな事書かれていたので できたら、やり方教えてもらえないでしょうか キーワードだけでも結構です。
823 名前:819 mailto:sage [2007/06/21(木) 22:19:21 ] やり方がわからなかったので、自前でマウスジェスチャくみますた。。
824 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 22:24:21 ] 例外はほっときゃ勝手に呼び出し元に伝播する
825 名前:デフォルトの名無しさん mailto:sage [2007/06/22(金) 00:03:32 ] 互換機能のOn Error Goto は使わないようにね
826 名前:819 mailto:sege [2007/06/22(金) 01:22:39 ] 1 sub main() 2 F(1,1) 3 F(1,0) 4 end sub 5 function F(a as integer, b as integer) as double 6 return a/b 7 end function たとえば上のような疑似VBコードにおいて 実行すると 6行目で例外発生して止まる。 で5行目を function F(a as integer, b as integer) as double Throws Exception のように書き換え実行すると 2行目で例外が発生しましたとなって止まる。 ようにしたい。要するにデバッグしやすいように例外を使用したい
827 名前:デフォルトの名無しさん mailto:sage [2007/06/22(金) 01:51:25 ] >>826 なんだ例外のエスカレーションとかいうレベルの話じゃなかった
828 名前:デフォルトの名無しさん mailto:sage [2007/06/22(金) 02:11:58 ] >>819 たぶんdllとはなんの関係もないウンコなミスとエスパーするがどうか。
829 名前:デフォルトの名無しさん mailto:sage [2007/06/22(金) 02:29:14 ] >>826 茶化したままだとあれだから、VS2005でマイコードのみの設定が有効になってるのを確かめて、 DebuggerNonUserCode属性を付ければ目標は達成できる。 <DebuggerNonUserCode()> _ function F(a as integer, b as integer) as double return a/b end function
830 名前:デフォルトの名無しさん [2007/06/24(日) 06:16:44 ] 誰か似たようなことを経験していたら教えてほしいのですが、、 あるコントロール上をマウスが通ると、MouseMoveイベントが普通立つと思う。 しかし、何かある操作をしてから、同様にしても、今度は全然 MouseMove ~~~~~~~~~~~~ イベント自体が立ってくれなくなる。それで仕方なく、別のアプリケーションの ウインドウをクリックしてFocusを移してから、再度元のアプリケーションに 戻って同様にしてみると、今度は MouseMoveイベントが立ってくれる、 とちょっと変な現象なんですが、こういうことってあり得るでしょうか?
831 名前:デフォルトの名無しさん [2007/06/24(日) 06:37:21 ] >>830 この場合、「何かある操作」 というのは、そのコントロールの置いてある Panel の右クリックで ContextMenuStrip を表示して、その際、そのメニューのどれも クリックせずに、また Panel 上のどこかをクリックして ContextMenuStrip を Close する、というだけの操作なんですが、これをすると、それまで立ってくれてた その Panel 上のコントロールで MouseMove イベントが立たなくなるのでした。
832 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 07:03:19 ] 一切自分では調べてないだろ ttp://www.google.com/search?hl=ja&lr=lang_ja&oe=utf8&q=mousemove+contextmenustrip
833 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 11:59:27 ] >>831 メニューのClosedイベントで System.Windows.Forms.ToolStripManager+ModalMenuFilter.ExitMenuMode() を呼ぶと直る。 リフレクション使わないといけないけど。
834 名前:デフォルトの名無しさん [2007/06/24(日) 13:42:03 ] >>832 ありがとうございます。 これ一応 BUG だったんですね・・・う〜ん。 >>833 どうもです、助かります。 >System.Windows.Forms.ToolStripManager+ModalMenuFilter.ExitMenuMode() この方法、調べて使ってみます。 >リフレクション使わないといけないけど これについても具体的にはどうすればいいかまだわかりませんが、また調べてみます。 それでもわからない場合また質問するかと思いますが、 またよろしくお願いします。
835 名前:デフォルトの名無しさん [2007/06/24(日) 15:54:43 ] >>833 すみません、この ModalMenuFilter というのは、ヘルプで検索しても 検索結果 0 で情報が出てきませんでした。 ググってみましたが、ただ一件 www.google.com/search?hl=ja&q=ModalMenuFilter&btnG=%E6%A4%9C%E7%B4%A2&lr= があるだけでしたが、これって何かのクラスなのでしょうか。このページ開いても 該当箇所は見られませんでした・・・う〜ん困りました。。。 よろしければご指導の続きを戴ければありがたいです。すみません・・・。
836 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 18:34:16 ] >>834 internalなクラスだから説明はどこにもないと思う。 手元にあるのはC#のコードだけど適宜よみかえてちょ。 void contextMenuStrip1_Closed( object sender, ToolStripDropDownClosedEventArgs e ) { Type t = Type.GetType( "System.Windows.Forms.ToolStripManager+ModalMenuFilter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" ); MethodInfo mi = t.GetMethod( "ExitMenuMode", BindingFlags.NonPublic | BindingFlags.Static ); mi.Invoke( null, null ); }
837 名前:デフォルトの名無しさん [2007/06/24(日) 18:56:16 ] ContextMenuStrip の中のどれかをクリックして実行すると(それが空の関数であっても) 問題は起こらないため、一つ考えられるのは、 ContextMenuStrip の Closing イベントでそれを強引に実行してやればどうだろう、とも思ったのですが、この 強引にコードから ContextMenuStrip の中のどれかに Click イベントを起こすためには どうすればいいでしょう、これについて知りたいです。 よろしくお願いします。
838 名前:デフォルトの名無しさん [2007/06/24(日) 18:58:05 ] >>836 おお、どうもです!!かぶってすみませんでした。 こういう方法あるんですね、ありがとうございます。 助かります。やってみます!!
839 名前:838 [2007/06/24(日) 20:53:38 ] >>836 素晴らしいです、みごとに一発で解決しました。 一時は本当にどうしたものかと悩みました、でもこれで助かりました。 >internalなクラスだから説明はどこにもない やっぱり一般人には知りえない内容なのでしょうか、 もしかしてMSの人じゃないとわからない、とかでしょうか・・・ でも本当に助かりました、ありがとうございました!!
840 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 21:25:37 ] Reflectorだろ
841 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 23:42:37 ] vbというよりもフォームの質問なのかもしれませんが、 初心者スレが見つからないのでここで質問させていただきます。 グループボックスの中にラジオボタンがいくつかと、ラベルをひとつ配置します。 そのラベルの中にラジオボタンをいくつか配置した上で、 ラベルの外(グループボックスの中)のラジオボタンとラベルの中のラジオボタンを 同じグループとして扱いたいのですが、どのように設定したらよいのでしょうか? お分かりの方がいらっしゃいましたら御教示お願いいたします。
842 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 23:44:29 ] そんな変態行為は .NET では認められません
843 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 23:45:37 ] おぁー!変体行為だったんですか。 それは困りました。どうしましょう?
844 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 23:46:36 ] さぁ。
845 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 00:17:59 ] >>841 ラベルはコンテナコントロールじゃないよ。 言ってる意味わかる? まあ、「初心者スレが見つからないので」とか言ってるが 質問なんかせめて初心者本の数冊も読破してからにしてくれよ。
846 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 00:18:41 ] こういうのっておおっぴらに使うか悩んだりしない? まあ、ネット上で見つけた情報を利用したって立場をとるんだがw
847 名前:826 mailto:sege [2007/06/25(月) 00:19:44 ] >829 遅くなって申し訳ない、ありがとうございます。
848 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 02:40:29 ] >>846 「こういうの」ってのが何を指してるのかさっぱり。
849 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 07:24:33 ] >>839
850 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 11:33:11 ] >>841 ユーザコントロール作れ
851 名前:デフォルトの名無しさん [2007/06/25(月) 14:55:01 ] 誰か助けてくたざい。 VB2005で、プログラムが完成して、動作を確認できました。 そこまではよかったのですが、実行ファイルを共有フォルダー(サーバーに) において、実行すると、どうしても実行できません。実行できたとしてもまともに動作しません。 これの解決策だれか知りませんか?
852 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 14:58:26 ] ヒント:カレントディレクトリ
853 名前:デフォルトの名無しさん [2007/06/25(月) 15:04:38 ] サーバに実行ファイルがおいてあるんだろ? 普通は実行できないだろ. MSDNに書いてある.
854 名前:デフォルトの名無しさん [2007/06/25(月) 15:06:36 ] >853 それを実行する方法を知りたいのです。
855 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 15:26:09 ] 素人にはおすすめしないがポリシーをいじる。 コントロールパネルの管理ツールの .NET Framework 2.0 Configuration ランタイムセキュリティポリシー (他をいじってなければ)コンピュータのコードグループのAll_Codeの下に 新規作成の条件の種類を選択するでURL:\\サーバー名\共有名\* アクセス許可セットFullTrust インストーラを作るかClickOnceを使うかかサーバーからローカルにコピーさせるかをすすめる。
856 名前:デフォルトの名無しさん [2007/06/25(月) 16:12:33 ] むしろこれはVB.NETの問題ではないな・・・ つうか、あれか・・・クリックワンスのまえのやつやりたいのか? 名前忘れたけど
857 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 17:23:03 ] ノータッチ デプロイメント?
858 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 17:39:38 ] 気持ちは良く分かる。 正直セキュリティが云々言われても無駄に面倒くさい。 ちょちょっとしたものを作って共有しようとしても インストーラやらClickOnesやら、、、。 ちょっと話がずれるが必要なDLLとかは、実行ファイルへ含めるもしくはフォルダ等へ 指定できたら良いのに。 この時代に容量削減も糞も無いだろう。 実行ファイル1Gとか上等じゃねーか。
859 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 22:59:56 ] 質問です。 いまFramework1.1で勉強中なのですが 1.1のNotifyIconはバルーン?が表示できなかったので いろいろ調べて ttp://supware.net/?notifyiconex に辿りつきました。 このクラスを使うとバルーンは表示できるのですが、 ContextMenuがどうしても表示できません。ContextMenuのPopupイベントは反応あるのですが・・・ 色々検索してみて大量にヒットするC#のコードを見る限りおかしい所は 自分の力量では発見できないので、ヒントでも構いませんので助言をお願いします。 環境はWindowsXP、Framework1.1、メモ帳です。 以下のコードを同上のクラスの下に書き、コマンドプロンプトでコンパイルしています。 Module Test Private myForm As Form Private notifyEx As NotifyIconEx Private cMenu As ContextMenu Sub Main() cMenu = New ContextMenu cMenu.MenuItems.Add("Item1") notifyEx = New NotifyIconEx() notifyEx.Icon = New Icon("C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\ndpsetup.ico") notifyEx.contextMenu = cMenu myForm= New Form() myForm.ContextMenu = cMenu myForm.ShowDialog() End Sub End Module
860 名前:859 mailto:sage [2007/06/26(火) 20:49:34 ] なんか俺の質問でスレが過疎ったみたいで・・・・(´・ω・`) 調べたらTrackPopupMenuExがうまく動作してなかったみたいなんで 試行錯誤してNotifyIconExのTrackPopupMenuExを修正して ContextMenuがでるようになりました はっきりと原因した原因はいまだ不明ですが とりあえずしゅっくり勉強したいと思います。
861 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 21:47:38 ] >>859 >Framework1.1で 今古いランタイム使う意味は何でしょう? 行きがかり上のしがらみ?それとも以前のもののバージョンアップ でしょうか?もし新規アプリなら2.0以上でやるべきではないでしょうか?
862 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 21:59:18 ] それは大きなお世話だと思うぞ。
863 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 10:37:28 ] >>859-860 コマンドプロンプトでコンパイルしている人間がここにはいないんだろう。
864 名前:デフォルトの名無しさん [2007/06/27(水) 13:17:50 ] >>861 おまえ某MVP臭いぞ 仕事してたらわかるだろ? 仕方ないときもあるんだし
865 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 16:04:39 ] でも>>859 の場合は多分勉強だよ? VB.NET Expressでいいやん
866 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 20:17:35 ] ちょっと安めおまいら。これでも見ろ。知らない人間は えーーーーっと驚くこと請け合いだぜ。 「911」の真実とはダイジェスト版 ? 日本語と英語 ? .movフォーマット ? 31分 - 23MB www.harmonicslife.net/gallery/main.php?g2_itemId=3443 「動画をダウンロード」 をクリックすると、動画が始まるまでに20分ぐらい待つと 自動開始する。 30分ぐらい待ってもよければこっちも見る。こっちは詳細バージョンだから、上のを見て 興味もったらぜひ見てみれ。 『911の嘘をくずせ ルース・チェンジ・セカンド・エディション』 日本語版 - ウェッブ・バージョン ? .mov フォーマット ? 83分 - 83MB www.harmonicslife.net/gallery/main.php?g2_itemId=1225 要するに俺らはこういう戦争に加担しちまった。おれも当時は小泉に賛成しちまって ネットで賛成派に回っちまったよ。だが悪いことだった、北朝鮮のミサイルが来るって ことでアメリカとは同盟するしかないって信じ込んでた。しかしこれを見れば、 ちょっと待て日本はこれでええのか?と疑問になるはず。
867 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 20:26:46 ] 003はフランソワーズ まで読んだ
868 名前:859 mailto:sage [2007/06/27(水) 22:52:37 ] >>861 確かに勉強中なんですが、職場にはFramework1.1のvbc.exeしか はいってないので昼休みとかにも弄るために1.1でやってます。 基本はそんな変わらないだろうってことで。 職場はネットにも繋げないんでヘルプもクラスライブラリをHTMLで保存して CDに焼いて持ち歩いてたりします。 家にはVB2005Expressインストールしてあるんですけどね・・・ >>863 やっぱ危篤な人種なのか・・・ dllとかを毎回入力するのが億劫なんで 簡単なHTA作ってコンパイルしてます。 とか言ってたらこんなん見つけました ttp://www.sliver.com/dotnet/SnippetCompiler/ ところで、 「FileSystemWatcherで共有フォルダにあるExcelファイルが更新された場合にバルーンでその旨を表示」 というコンセプトで勉強アプリを作り始めたのですが、 Excelは「開く」「閉じる」だけで、更新日時が変更されNotifyFilters.LastWriteを設定しても 正確な情報が取れないことが分かりました・・・ 自分で考えつくのは、 変更されたらファイル名と更新日時の値を保持して次に同名ファイルが更新されたら比較する といったものなのですが、もっと良い案や確実に更新されたのを取得できる方法がありましたら アドバイスお願いします&このスレの住人さんはレベルが高そうなんで 素人はこっちいけや〜的なスレがありましたら誘導していただけると嬉しいです ここからずっと俺のターン?(´・ω・`)
869 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 01:44:00 ] >このスレの住人さんはレベルが高そうなんで ナニヲイッテイルンダ 定期的にファイルのハッシュ比較するとか 前回保存日時で比較するとか すりゃいいんじゃね?
870 名前:デフォルトの名無しさん [2007/06/28(木) 09:05:36 ] みなさんこんにちは。お尋ねします。 通常のLabelですと後ろに引っ込んだ3D形状はあるものの 手前に出っ張った形状は付属されていないのですが、 どこかのサイトで、手前にふくらみのあるラベルコントロールなどが あるところをご存知ないでしょうか? それともこういったものは有料のものになるのが普通でしょうか? 昔、LabViewというものを触ったことがあり、それには手前に出っ張って いるガジェットがたくさんあったのを記憶しています。あれと同じような 感じに見えるものがほしいのですが、 もしご存知の方がおられましたら教えて戴きたく、 なにとぞよろしくお願いします。
871 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 10:00:47 ] >>870 LabelのPaintイベントで自分で描画する。 例えば Label1のPaintイベントに e.Graphics.DrawRectangle(New Pen(SystemColors.ControlDarkDark), New Rectangle(0, 0, Label1.Width - 1, Label1.Height - 1)) e.Graphics.DrawLine(New Pen(SystemColors.ControlLightLight), 0, 0, Label1.Width - 2, 0) e.Graphics.DrawLine(New Pen(SystemColors.ControlLightLight), 0, 0, 0, Label1.Height - 2) 微調整はお好みで。
872 名前:デフォルトの名無しさん [2007/06/28(木) 10:08:31 ] >>871 これって、自分で描画できるものなのですか!凄い。 ありがとうございます、やってみます。助かります。
873 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 15:51:21 ] >>871 直接描画するんじゃなくてControlPaint.DrawBorder3Dを使うべき
874 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 16:18:24 ] 数字をアルファベットに変換する場合、みんなはどうしてる? たとえば、99ならninety nineとか、11ならelevenとかに変換したいんだけど(´Д⊂グスン
875 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 16:28:51 ] 自前で実装
876 名前:871 mailto:sage [2007/06/28(木) 16:30:14 ] >>873 Private Sub Label1_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Label1.Paint ControlPaint.DrawBorder3D(e.Graphics, Label1.ClientRectangle, Border3DStyle.Raised, Border3DSide.All - Border3DSide.Middle) End Sub こんな感じでいいかな?
877 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 16:52:48 ] >>875 めんどくさい(´Д⊂グスン
878 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 16:55:33 ] >>877 このスレで一番言ってはならないことを言ったなw もう誰も答えてくれんよw
879 名前:874 mailto:sage [2007/06/28(木) 17:07:53 ] >>878 んだねw ↓探したらいろいろあった www.google.co.jp/search?hl=ja&q=NumberToWord%E3%80%80C%23&btnG=%E6%A4%9C%E7%B4%A2&lr=
880 名前:デフォルトの名無しさん [2007/06/28(木) 17:26:07 ] >>873 >>876 こちらもやってみました。 実は、ユーザーコントロールで複合したものでやってみてるのですが、 Label と TextBox の組み合わせで同じ UserControl に乗っけてまして、 その際、ClientRectangle の Inflate とかが必要のようですね。+2ぐらいしないと 外形が遇わないようです。 ところで、この Raised を使った場合、それを通常の BorderStyle プロパティに 追加して選択できるようにもしたいのですが、UserControl なのでPropertyを Overrideして追加するとしたら、どういった感じにすると出来るでしょう? ご指導戴ければありがたいです。
881 名前:デフォルトの名無しさん [2007/06/28(木) 17:28:11 ] 普通にプロパティつくってその中でいじってやればいいんじゃねぇ? やり方は好みだとおもうんだが・・・・ オーバーライドする必要がないと思うから
882 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 17:32:32 ] >>880 UserControlじゃなくてLabelクラスをオーバーライドするほうがスマート
883 名前:882 mailto:sage [2007/06/28(木) 17:33:38 ] すまんオーバーライドじゃなくて継承ね
884 名前:880 [2007/06/28(木) 19:31:41 ] >>881 なるほど、UserControl だと、そのものの Property になるということですね。 わかりました、助かりました。 >>882-883 そういう方法もあるということですね。今こちらのはTextBoxと他にもうひとつ Labelも使ってたので、むずかしそうだったため、UserControl にしてしまってました。 たぶんよく理解していればできるのだと思うのですが、組み合わせコントロールとしては デザインモードでの視覚的な組み合わせが楽な UserControl にしてました。 その方法での実現についてはまた勉強して考えてみます。
885 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 11:25:32 ] user.configの仕様どうにかならないかなー。 MySettingsで保存する際に、保存場所を指定できたらすごく便利なのに。。 バージョンごとに保存先が変わるとか、どうしてこんな糞仕様なのか。 せめて選べたら良いのに。
886 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 11:40:44 ] >>885 MSDNみたら user.config は System.Windows.Forms.Application.LocalUserAppDataPath プロパティで指定した場所に配置されます。 とある。 試して無いけど。
887 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 12:38:34 ] っていうか、恥ずかしいからMy爺さんの機能なんか使うなよw リソースにアクセスする用途しか使ったことないぞ俺は
888 名前:デフォルトの名無しさん [2007/06/29(金) 12:39:42 ] 質問です VB(どういうかVSのマクロ)で、ドキュメントウィンドウに文字を出力する際に 入力する文字列に,(カンマ)が含まれるとE_FAILが帰ってくるんですが これをどうにかして,,,,見たいなのも出力できるように出来ませんかね? 具体的に言うならこういうの↓ DTE.ActiveWindow.Selection.text += "nullpo,," でエラーなしにする方法、,,で打ち切られないようにする方法が知りたいのです
889 名前:デフォルトの名無しさん [2007/06/29(金) 12:43:54 ] >>887 設定保存とからくじゃないかw 俺はSettingとResource使ってるな
890 名前:885 mailto:sage [2007/06/29(金) 13:05:37 ] >>886 おお! どうもです。 ちょっと調べてみようっと。 >>887 初めちょっと嫌だなーとか思ったけど、使ったら超便利だった。 サクサク保存できる。
891 名前:885 mailto:sage [2007/06/29(金) 15:53:01 ] >>886 Read only でした。
892 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 17:00:10 ] 次のようなクラスを作成する場合、 aaa.bbb() aaa.ccc.xxx() aaa.ccc.yyy() aaa.ddd.zzz() Public Class aaa Public Sub bbb() 〜〜〜 End Sub 次のコードは?? End Class 教えて下さい。
893 名前:デフォルトの名無しさん [2007/06/29(金) 17:08:31 ] 適当に やり方はいろいろだと思うけれど・・・・とりあえずで public class c_ccc public sub xxx end sub public sub yyy end sub end class public class d_ddd public sub zzz end sub end class public class aaa public ccc as new c_ccc public ddd as new d_ddd public sub bbb end sub end class
894 名前:デフォルトの名無しさん [2007/06/29(金) 17:33:47 ] >>893 thx
895 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 20:45:04 ] サーバに置いたexeを動かすのにexeと同じ場所にMicrosoft.VisualBasic.Compatibility.dll が無いと動かないPCと無くても動くPCがあるのは何故なんでしょう? OSは2KだったりXPだったりだけど、どっちでもなるのならないのあるし、 もちろんみんな.netフレームワーク1.1は入ってるし (動かないPCでもそのDLL置いただけで動くようになった)
896 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 22:40:14 ] >>895 .netを再インストしてみよう com登録してなくても検索パスにdllをおいただけで動くよ
897 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 23:04:34 ] >>896 thx XPだと.netプリで入ってるけど、一度アンインストールして再インストールすればいいのかな? 一度試してみます
898 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 23:10:12 ] >>895 プログラムがバージョン違いのMicrosoft.VisualBasic.Compatibilityを参照してる ってことはない? .NET 1.1 なら ver. 7.0.3300.0 のはずだが。.NET 2.0は Ver.8.0.0.0 。 あと.NET 1.1 のSPで差が出るかどうかはわからないがその辺も調べてみて。
899 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 05:23:45 ] こんにちは、お尋ねします。 各種オブジェクトのイベントの発生順序に関する一覧表のようなものは どこかのサイトで公開されていたでしょうか? (例えば TreeViewコントロールのTreeNodeをクリックした後の各種イベント MouseClick,Click,OnBeforeSelect,OnAfterSelect などの発生順序、等です) こうしたものはすべてのイベントについて実験していくことは可能なのだとは 思いますが、できたら理論的に分っているものがあれば、そのほうが正確で早い と思いました。 もしご存知でいらっしゃいましたら教えて戴きたく。よろしくお願いします。
900 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 06:26:29 ] 強いて言うならMSDN
901 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 10:34:09 ] つか常識的にMSDN
902 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 11:44:35 ] MSDNとS・G・G・Kって何か似てるよな
903 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 12:44:35 ] たぶん OnBeforeSelect は OnAfterSelect の前
904 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 12:52:13 ] >>899 そういうこと言いたい気持ちはよく分かるんだけど、 実際自分で試すのが一番正確で速いでしょ、どう考えても。 というか、まあ一概には言えないけどコントロールのイベントの発生順序に 依存するコードというのは、ちょっと不吉な匂いがするよ。
905 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 14:43:50 ] >>904 禿同 特にツリービューは気をつけたほうがいい
906 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 15:05:28 ] >>900-905 MSDNですと、発生順序に関しては必ずしも明記されていないように思いました。 確か本にはFormのLoad時とClose時のものなどが掲載されているものがありました。 それと同様の情報がどなたか公開されているのではないかと思ったのでした。 それでは、また調べてみます。ありがとうございました。
907 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 16:34:26 ] 明記されていない場合は順番を当てにしない方がいいと思うよ
908 名前:デフォルトの名無しさん [2007/06/30(土) 22:22:46 ] 自分でConsoleWriteでもつかって調べればいいだろうに・・・・
909 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 22:36:44 ] 俺も前にトレイからの復帰時にtreeview関係のイベントが起きて困ったもんだ
910 名前:デフォルトの名無しさん mailto:sage [2007/07/01(日) 12:29:39 ] 順番を当てにされたくないから意図的に明記してないのかもしれないし
911 名前:デフォルトの名無しさん mailto:sage [2007/07/01(日) 12:40:46 ] いやそういう問題でももちろんあるんだけど、 「イベントの順序に依存したコードの不吉な兆候」というのは、 仮にそれ(イベントの順序)が確定しているとしても、それを人間が正しく 認識していないと意味を把握できないコードになりがちだから 保守性や拡張性の点で問題があるということでしょ。
912 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 15:37:39 ] GroupBoxの線の色を代えられないとか、どんな仕様にしてるんじゃ.NETは〜!! ちょぼちょぼ、痒い所に手が届かない風にコントロールなどが 作られてあって面倒くさい。 つうか、折れも画面を作る前に気が付けよ・・・。 は〜〜〜。orz
913 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 15:51:28 ] 馬鹿の要望きいてるほどMSも暇じゃないんじゃね?
914 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 16:01:51 ] 文句はチラシの裏に書け。 質問なら、素直に聞け。 思わせぶりな文章書いて、対策案を貰おうとしている様が見え見えで引く。
915 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 16:32:44 ] >>913-4 すいません。愚痴でした。 確かにチラシの裏に書いとけば良かったです。 まあ、もう、解決したんですが、その方法もチラ裏に書いときますわ。 いや、しかし.NETはほんとに、ちょっと足りないよ。 DateTimePickerは空に出来ないとか、FileDialogでフォルダとファイルの選択が〜とか。 ま、こちらも解決しているんで、今となってはどうでも良いですが。
916 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 17:56:26 ] >>915 だからチラシに書けよ。書き込むな。
917 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 17:58:22 ] 質問スレに愚痴てwwwwwどんだけwwwwwwwww
918 名前:デフォルトの名無しさん [2007/07/02(月) 18:16:42 ] >>915 >いや、しかし.NETはほんとに、ちょっと足りないよ。 いや、足りないのは君の頭と想像力と解釈力
919 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 20:05:50 ] >>915 標準コントロールの機能が十分だったらサードパーティ涙目だろが
920 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 20:16:06 ] というより、たまたま俺様が欲しいと思ってる機能がないのは何でじゃ〜(ムキー) っていうのはちょっと精神病チックだよね正直w まあ20%ぐらいは共感できる部分もあるけど、ドトネトの場合比較的簡単に コントロールの機能が拡張できるから俺はそんなに不満はないなあ。 ただ、ToolStrip関係はもう少しなんとかならなかったのか?とは思わんこともない。 クラスライブラリ的に醜すぎるし、拡張がしづらいんだよねToolStrip関係は。
921 名前:デフォルトの名無しさん [2007/07/03(火) 12:01:30 ] 業界未経験ですが、PGの面接に行ったらVB6をやってもらうと言われました。 現職場でVB.NETではアプリケーションを作ったこともあり、受注先に納品した り、社内でのデータベースを構築した経験(図書管理など)もあります。 .NET→VB6へ下がってしまうのがなんか時代に逆行するようで嫌なのですが、 .NET→VB6への移行(頭の切り替え?)はやっぱり難しいものでしょうか? 一応、エクセルのVBAはフォームまわりやファイル処理はできます。
922 名前:デフォルトの名無しさん [2007/07/03(火) 12:13:28 ] VBA+αくらいで考えとけばいいんじゃない? 意向が難しいかどうかは人それぞれだけど たぶん君なら大丈夫 ただ・・・いろいろ.netならなぁ・・ とか思うことは多いだろうな・・・・
923 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 14:02:48 ] If文とか書いたとき、自動でEnd Ifを挿入してくれなくてイラつくと予想。
924 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 14:03:27 ] VB.NETなら誰が書いたコードでもそれなりに理解できるが アホがVB6で書いたコードは何がどうなってるのか読むのが大変
925 名前:デフォルトの名無しさん [2007/07/03(火) 14:05:35 ] 2005のWindows.Formアプリで質問です。 DataGridViewのコンボボックスカラムを使用してデータを選択させています このデータはDataSourceで指定されたデータを使用しています。 問題はこの後で、データの文字がセルの幅を超える場合、ドロップダウンが表示されたときにすべて表示されない状態になっています。 オーナードローすればいいんでしょうが、幸いDropDownプロパティがあるのでこれを使いたいと思います。 このとき、普通であれば表示させるデータをなめてMeasureStringで最大幅を設定するのでしょうが データ取得に時間がかかりデータ数が多いこともあり、できるだけループで回すようなことをしたくありません。 もし何か回避する方法があるのであればお教え願えませんか? もし無いのであれば諦めてデータをなめて最大幅を設定しようと思います。
926 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 14:24:00 ] >>925 AutoSizeMode = AllCells でいいんじゃない?
927 名前:デフォルトの名無しさん [2007/07/03(火) 14:31:51 ] >>926 あ〜そういう手がありますね 早速やってみたところドロップダウンが奇麗に表示されました。 長い文字を選択するとセルのサイズ変わっちゃうけど、まぁこれはこれで取りあえず置いておいてつづけようかと思います。 (Keyの項目なので表示しきる必要はあると考えて) 回答ありがとうございました。
928 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 05:41:03 ] ところでおまいら少し安め。 ベンジャミンフルフォード 「日本はここから侍のこころを取り戻そう!」 www.harmonicslife.net/PodCasts/2006/Yumi20061013Podcast_911Fulford.mp3
929 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 18:07:03 ] 文字コードの自動判別ができるのはどのバージョンのVB.NET?
930 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 18:20:07 ] むしろその日本語ってどんなバージョンだよw 頭おかしいんじゃねえの
931 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 20:38:56 ] 多分それができるころにはVBはなくなってると思う
932 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 22:10:25 ] C:\WINDOES\fontsのなかにあるEUDC.TTEをローカル(C:\copy)にコピーしたいんですが、 System.IO.File.Copyを使ってもwindowsに変な影響出たりしませんか?
933 名前:デフォルトの名無しさん [2007/07/04(水) 23:39:43 ] DatagridViewでデザイン時にカラムを追加してPropertyName設定してテーブルをバインド ↓ データソースの中身Dispose+Nothing ↓ 同じ構造の別テーブルをDataSourceにセット ↓ 最初にデザイナで追加しておいたカラムがDataGridViewのColumnsから消えてる ( ゚Д゚)ポカーン 気付くまで30分かかったw
934 名前:932 mailto:sage [2007/07/05(木) 09:36:36 ] 自己解決しました。
935 名前:932 mailto:sage [2007/07/05(木) 12:26:34 ] ↑って誰ですか? 解決してないんですけど
936 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 12:35:11 ] >>932 削除とかならまだしも、普通にコピーとるだけなんだろ?なにを心配してるんだ? 馬鹿らしくてみんな答えないだけだよ。 というか自分で試せることだろ? 心配なら復元ポイントでもつくってやってみろ。
937 名前:デフォルトの名無しさん [2007/07/05(木) 13:18:45 ] >>936 こういう馬鹿は試しもせずに聞いてくるからたちが悪い 失敗から学ぶことのほうが多いというのに
938 名前:デフォルトの名無しさん [2007/07/05(木) 19:27:17 ] コンポーネントってデザイナでフォームじゃなくなんか下の方に置かれるじゃないですか? カスタムコンポーネントを作ろうとした場合、どうやってフォームの情報を取得するんですかね?
939 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 19:29:12 ] Containerをフォームの型にキャストすればいいんだけど そうするとコンポーネントとして分離した意味がなくなるからそういうのはダメ
940 名前:デフォルトの名無しさん [2007/07/05(木) 19:45:04 ] ぇぇー、ダメって、例えば貼り付けるだけでフォームの特定のコントロールにほにゃららな 機能を追加するってようなのもダメぇ?コントロールをカスタムるより楽じゃん?
941 名前:デフォルトの名無しさん [2007/07/05(木) 20:15:37 ] OSのGUIを使わず、アカウントがビルドインユーザ であるかそうでないか判断する方法しっている方 いましたら、教えて欲しいです。 Visual Basic .NET プログラムで実装します。 コマンド、Win32_API 、レジストリ、WMI でもかまいません。
942 名前:デフォルトの名無しさん [2007/07/05(木) 20:20:07 ] いや・・・いろいろ方法ありますよ
943 名前:941 [2007/07/05(木) 22:20:28 ] ちょっと文章がおかしかったっす Visual Basic .NET プログラムで実装します。 クラスライブラリ、コマンド、Win32_API 、レジストリ、WMI どれか1つでかまいません ということです
944 名前:941 [2007/07/05(木) 23:02:18 ] 自己解決しました。
945 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 00:14:09 ] >>940 どうやんのそれ プロパティで対象のコントロールを直接指定するの? それなら>>938 みたいなことをする必要は全くない フォームの特定のコントロールを勝手に参照したら そのフォームに依存してしまうだろ
946 名前:デフォルトの名無しさん [2007/07/06(金) 02:50:00 ] >>941 なに使ったの? 俺は調べきれなくって 時間なかった時だったんでNetUserEnum 使ったんだが
947 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 04:01:19 ] WindowsPrincipal じゃね?
948 名前:デフォルトの名無しさん [2007/07/06(金) 06:31:03 ] Objectクラスの MemberwiseClone メソッドについて教えてください。 これで Clone を作って調べてみると、 cntrlClone = DirectCast(cntrl.MemberwiseClone, コントロールのタイプ名) ここで、元のオブジェクトインスタンスと別ものらしいこと cntrlClone IsNot cntrl は True はわかったのですが、Control でこれを使って作ったCloneを操作すると、 元オブジェクトのインスタンスが操作されてしまいました。 この cntrlClone の Size や Location を変えると、元の cntrl が動いてしまい、 cntrlClone の方は該当の場所には現われてすら来ませんでした。 MemberwiseClone メソッドで作成されるCloneというのは、どういうものなのか 今一よくわからず、これは別のインスタンスを完全に別ものとして作成するのでは ないということでしょうか、あるいはまた扱い方に問題があるでしょうか。 よろしくお願いします。
949 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 06:51:01 ] >>948 MemberwiseCloneは直接のメンバーのコピーしかしない。 メンバーとして参照型のオブジェクトを持っていた場合は参照しかコピーされないので コピーされたオブジェクトは同じ子オブジェクトを参照することになる。
950 名前:デフォルトの名無しさん [2007/07/06(金) 07:16:55 ] >>949 その 「メンバー」 の意味するものとは、元オブジェクトのフィールドのことですよね、 しかし、Clone 自体のインスタンスは、明らかに、元オブジェクトのインスタンスとは 別物になるはずですよね? それが、cntrlClone と cntrl が別ものとして cntrlClone IsNot cntrl は True とはなっているのに、cntrlClone を操作すると、どういうわけか、cntrl が動いて しまうようなのです。cntrlClone と cntrl の両方が画面に現われるかと思っていると 片方しか現われないのです。つまり、cntrlClone はで来ていないかのように見える のです。 こういうことはおかしいように思うのですが、よくわからないのでした。
951 名前:デフォルトの名無しさん [2007/07/06(金) 07:20:06 ] それとも、cntrlClone への操作が、自動的に cntrl 側にも同時に伝わってしまって 同時に2つとも同じ操作の対象になってしまっているのでしょうか?? まさかそういうことはちょっと信じられないのですが・・・。
952 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 07:37:17 ] class B { public int Ope() { .. } } class A { B b = new B(); public int Ope() { return b.Ope(); } } こういう構造ならいくらAのクローンを作ってもBはひとつ。 a もクローンa もインスタンスは違っても共通の動作になるだろ
953 名前:デフォルトの名無しさん [2007/07/06(金) 07:54:52 ] >>952 そのおっしゃってることの意味は>>949 の意味かと思いますが、 画面にすでに cntrl があった場合に、>>948 のように cntrlClone = DirectCast(cntrl.MemberwiseClone, コントロールのタイプ名) のようにして作成した場合、実体として cntrl と cntrlClone は別モノで、 別々のコントロールとして作成されるとすれば、 cntrlClone.Top = cntrlClone.Top + 10 と操作したら、cntrl の Top が +10 してしまうのはおかしいのではないかと・・・ それとも、cntrl が何かの派生であった場合、Baseクラスに対しても Clone を 別に作成しないといけない、というようなことなのでしょうか?まさか
954 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 08:13:15 ] Windows.FormsのFormやらButtonがどういう構造になってるかは知らんが、 実体はWin32のアンマネージドリソースなんだから、 SizeやらLocationやらは毎回Win32のリソースに問い合わせてる可能性が高いぞ。 そうなると両方のオブジェクトが同じハンドルのWin32リソースを操作するわけだから 同じになるのは当然だろ。 ICloneable.Cloneが実装されてないのに、中身もわからないクラスのクローンを作るのは 無謀だと思うぞ。
955 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 08:19:32 ] >>953 既に954が書いてるし、俺はあまりWin32に明るくないんだけど、 要するに、例えばFormにTextbox1があるとして、Form上に見えている テキストボックスはTextbox1そのものではなく、「Textbox1が内部にもっている何物か」 に過ぎないということなんでしょう。 それなら話の辻褄あうでしょ。
956 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 08:44:23 ] >>954-955 どうもです、やっぱり cntrlClone = DirectCast(cntrl.MemberwiseClone, コントロールのタイプ名) ・・・[1] で コントロールの別実体の Clone が作れると思わない方がいいでしょうか? ICloneable.Clone については、 www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?forum=7&topic=27051 なども参照してみて実装してみたりしてますが、この使い方では結局 Clone の作成は [1] でやっているんですよね。 普通に最初から New でコンストラクトして、必要なフィールドなどを値でコピーして 地道に作成するほかないでしょうか。そうなると、 MemberwiseClone の利用方法が 今一不明になるわけですが・・・どうもよくわかりません
957 名前:デフォルトの名無しさん [2007/07/06(金) 08:48:58 ] >>956 あっ、これ書いてみて今気がつきましたが、この参照サイトにあるのは [1] ではなく、 Dim hWankuma As WankumaData = DirectCast(Me.Clone(), WankumaData) ・・・ Private Function Clone() As Object Implements System.ICloneable.Clone Return Me.MemberwiseClone() End Function となってるところが違うのか・・・、もしかしてこれでしたか?ちょっとやってみます。 だとしたら自分の使い方のミスですね。飯食ってからやってみてまた報告します。 どうもでした。
958 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 09:41:34 ] ああ、くそう ここで交わされる会話がスラスラ理解できるようになりたいw
959 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 11:14:28 ] たいしたこと言ってないから
960 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 12:36:43 ] >>956-957 なんか書いてること読むと基本が理解できてない感じ。 自分でクラス作れない人? だったら場当たり的な「調べ方」では永遠に埒あかないと思うよ。 少なくともクラスと構造体の区別が理解できていれば、 フィールドの値(オブジェクトのメモリーイメージ)だけ複製しても 無意味な場合があることはすぐ理解できるはず。
961 名前:デフォルトの名無しさん [2007/07/06(金) 12:58:22 ] >>960 うーん、おっしゃってることは分ってるつもりですが、 要はコントロールの複製を作るにはこういうメソッド使えない ということでしょうか? もし使えるとしても、では後何をどうすれば複製を作成できるようになるでしょう? 毎回、Newでコンストラクトして作成して、それにフォールド値をいちいちコピーする やり方では、クラスをバージョンアップしてフィールドが増えたりするたびにそこに 手を入れる必要があるので忘れやすく、そういうことを防止するためにはこのメソッドを 使うほうがいいという感じで書いてあるところが多くあるかと思います。 では、現実の実体としてコントロールをこのメソッドも使って複製したい場合、 どれとどれとどれのどのような手続きをへて可能になるのか、それが知りたいのですが、 現状の知識ではわかりません。またそうした使い方をして説明してあるサイトが見つからない のです。 ちなみに、当然というか、>>957 で試してみてもやっぱりだめでした。まー同じことだろうとは 思ってましたが、やっぱりその通りでした。
962 名前:デフォルトの名無しさん [2007/07/06(金) 13:03:03 ] >>954-955 のご指導もありましたが、もしオブジェクトの実体を指すインスタンスが 別途にできていないのだとするとそういうことになるのかもしれませんが、 しかし、たとえフィールド値のコピーだけだとしても、そうだとすると、コントロールの 実体を指すプロパティが他にあって、それのCloneを作成する必要があるということ でしょうか? もしよろしければ、その辺をご指導いただけますか?
963 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 14:27:19 ] >うーん、おっしゃってることは分ってるつもりですが、 ダウト >コントロールの 実体を指すプロパティが他にあって、それのCloneを作成する必要があるということ >でしょうか? 大雑把にいうと Control -> NativeWindowクラスのプライベートフィールド-> IWin32Window(Win32ハンドルのラッパ)-> アンマネージドの世界 素直にICloneableを実装して必要なフィールドを自力で埋めろ、ってこった。
964 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 15:21:46 ] 意識的に自分で使ってるプロパティだけ新しいオブジェクトに移せばいいだろ コントロールなんて大概「同じもののように見える」で十分 手軽にできるようにしたかったら, コントロールの初期化をラップしといて簡単に再現できるようにするとか
965 名前:デフォルトの名無しさん [2007/07/06(金) 15:28:26 ] >>963 どうもです。 おっしゃてることは、ですから、要するに、 >>957 の Private Function Clone() As Object Implements System.ICloneable.Clone Return Me.MemberwiseClone() End Function の中の Return Me.MemberwiseClone() は使えません(>>961 の通り)ということで、 全部毎回フィールドを自分で世話するという、以前からある手法でやるほかない、 ということなのですね。 つまり、少なくともコントロールに関するかぎり、 MemberwiseClone() は有効にはならず 利用できない、ということで納得するほかないと・・・。わかりました、ということはせっかく MemberwiseClone() というメソッドが継承されていても、使えないメソッドなのだという ことなのですね、少なくともControlクラスにおいては。 ではやはりそのようにするしかなさそうですね。ご指導感謝します。
966 名前:デフォルトの名無しさん [2007/07/06(金) 15:29:58 ] >>964 同様のご意見ということで、わかりました。無理そうなので 結局そういう感じでやることに致しました。
967 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 16:42:48 ] >Dim hWankuma As WankumaData = DirectCast(Me.Clone(), WankumaData) Wankumaってここを見たんだろうけど、 blogs.wankuma.com/jeanne/archive/2006/04/06/22272.aspx blogs.wankuma.com/jeanne/archive/2006/04/07/22287.aspx ICloneableの実装の説明としてみると例えとして変なので軽く理解したら他をあたったほうがいい。
968 名前:デフォルトの名無しさん [2007/07/06(金) 17:03:04 ] ADO.NETでウィザードを使ってデータベースに接続したり,コントロールに連結したりした アプリケーションを配布する場合,データベースへのパスがユーザによって変わってくる と思いますが,どこでConnectionStringの変更を指定したらいいのですか? 具体的には,ウィザードを使うとFormのRegion〜EndRegionの間にOledbConnectionに関する 記述がありますが,配布した時に最初にデータベースの位置をユーザが指定して,それを レジストリに書き込みたいのですが,それに関する記述はどこに書いたらいいでしょうか? Form_Loadですか?
969 名前:デフォルトの名無しさん [2007/07/06(金) 18:49:34 ] CheckdListboxコントロールの継承に関して質問です。 このコントロールの中にあるItemsにAddやRemoveなどのコマンドがありますが、 こちらを継承、もしくはItemsにメンバー変数などを追加するには どのようにすれば良いのでしょうか? やりたい事は、CheckdListboxコントロールは、主にItemsの「Index、item、Checked」と 三つの情報を取り扱いますが、こちらに一つ追加したい。 現状は、CheckdListboxコントロールの継承クラスに、メンバーを追加して、 ItemAdd とか ItemRemove とかを作って無理やり実現させています。
970 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 18:50:50 ] >>945 ヒント:ErrorProvider
971 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 22:52:48 ] >>969 継承についてもっと勉強してください。 あなたの考えてることは不可能です。
972 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 23:02:22 ] >>971 その前に君969の言ってることがわかるの? 俺にとっては>>969 の文章はサッパリ理解不能なんだが。 きっとエスパーなんだね君は。 自分の勝手な想像と書いてあることの区別がつかない痛い奴でなければ。
973 名前:デフォルトの名無しさん [2007/07/06(金) 23:38:51 ] >>972 は自分でさっぱり理解不能な場合、答える人は 全てエスパーに見えるらしい。 …あ、釣りですか。そうですか。
974 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 23:43:46 ] いや釣りじゃなくて嫌味ね。 しかし、嫌味が通じない人間の人生ってきっとさぞかし「楽しい」んだろうな。 おっと、この人嫌味が通じないんだったなw
975 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 00:14:44 ] くだらね。
976 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 00:54:58 ] なんか最近.net関連のスレに気違いが混じってるなぁ
977 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 00:56:52 ] 「釣りですか」というのが嫌味だと理解できなかった可哀相な人がいるスレはここですか?
978 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 01:01:31 ] そういや「全てエスパーに見えるらしい」ってもの嫌味の部類だよなあ 通じなかったみたいだけど。
979 名前:969 [2007/07/07(土) 09:52:05 ] 自己解決しました。
980 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 10:09:52 ] >>932 がさっきから腹いせにスレを荒らしている件
981 名前:デフォルトの名無しさん [2007/07/07(土) 10:26:25 ] フォォムのLoad中〜Load完了までの状態を判定するにはどうすればいんですかね? Visible=False Then じゃなんとなくダサいんですが
982 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 10:49:43 ] だれが判断したいわけ?
983 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 12:29:48 ] >>982 入社2年目のプログラマーです
984 名前:デフォルトの名無しさん [2007/07/07(土) 13:01:08 ] 自作コントロールのItemプロパティを作成したんだけど 出来ればデザイン時に項目を設定できるようにしたいんです。 確かシリアライズ出来るようにしなければいけないと思ったんですが ちょっと情報が探せませんでした。 ご存知の方簡単で構いませんのでお教え願えませんか?
985 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 13:18:26 ] >>984 ん?propertyになっているなら、デザイン時に設定できるだろ?
986 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 14:08:17 ] >>984 悪いけど酷い日本語だなあ。何が言いたいのか意味わからんよ。 なので推測で答えるけど、プロパティグリッドで独自のUIを使いたいってことなら 多分ここの記事が参考になると思う。 www.comrade.co.jp/component/dotnetroom/index.htm
987 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 14:18:56 ] デザイナまで作ろうってんじゃなくて単にプロパティウィンドウに出したいだけじゃねぇの? BrowsableAttribute属性付けるだけでいいレベルじゃないのか。
988 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 14:25:21 ] プロパティグリッドが俺やアンタの作った俺様コレクションの俺様アイテムの 編集方法を理解できるわけないでしょアホか。
989 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 14:52:08 ] 日本語云々に拘っている変な人がいるよね。
990 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 16:09:18 ] 向こうで書きにくくなったJittaが暴れているんだろ。
991 名前:デフォルトの名無しさん [2007/07/09(月) 12:13:11 ] VB2005で、IEのプロキシを設定したいのだけど、コマンドがわかりません。 教えていただけませんでしょうか。
992 名前:デフォルトの名無しさん mailto:sage [2007/07/09(月) 12:17:34 ] >>991 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings のProxyServerの値をVBでいじればいい
993 名前:デフォルトの名無しさん [2007/07/09(月) 12:18:17 ] >>991 どんな方法で設定するのか知らないけど HKEY_CURRENT_USER\…\Internet Settings このレジストリいじるのじゃなくって別の方法?
994 名前:デフォルトの名無しさん mailto:sage [2007/07/09(月) 12:45:49 ] >>981 普通に書けば、メンバ変数 Private m_loaded As Boolean = False とプロパティ Public ReadOnly Property Loaded() As Boolean Get Return m_loaded End Get End Property を持たせておいて、OnLoadで Protected Overloads Overrides Sub OnLoad(ByVal e As System.EventArgs) MyBase.OnLoad(e) m_loaded = True End Sub でいいと思いますが。 >Visible=False Then じゃなんとなくダサいんですが Boolean値をリテラルと比較するのは「ダサい」というより「間抜け」ですね。 >>988 >俺様コレクション かどうかは判りませんが、それが既知の型の配列であれば 何もしなくともプロパティグリッドに表示されますね。 まあ、そうならないから質問してるんでしょうけど。
995 名前:991 [2007/07/09(月) 22:15:08 ] >>991 、>>992 さっそく、ありがとうございました。 とても参考になります。 まだレジストリをいじったことがないので、 まずはレジストリのいじり方を調べてみます。
996 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 09:25:38 ] h
997 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 09:26:07 ] t
998 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 09:26:42 ] t
999 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 09:27:11 ] p
1000 名前:小倉優子 ◆en0rG2J.f6 mailto:sage [2007/07/10(火) 09:28:10 ] 1000ならジュースでも飲むか
1001 名前:1001 [Over 1000 Thread] このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。