1 名前:デフォルトの名無しさん [2007/01/12(金) 15:57:21 ] 前スレVB.NET質問スレ (Part18) pc10.2ch.net/test/read.cgi/tech/1161250878/
237 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 15:50:36 ] >>235 適当に空行足しておけばいいだろ。
238 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 16:08:05 ] >>236 そらそうだ
239 名前:デフォルトの名無しさん [2007/01/30(火) 16:11:25 ] >>236 順番に保存する他にどんな保存方法があるんだ? For Eachは要素を列挙する関数なんで、順番は保証されない。 とは言ったものの実際は順番に出てくるが。 正式にはインデクサを使え。
240 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 16:24:18 ] やっぱりfor eachは多用しないように気をつけようっと。
241 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 17:00:59 ] >>239 嘘つけw
242 名前:デフォルトの名無しさん [2007/01/30(火) 17:33:39 ] >>237 通常IE等でスクロールがない画面で表示されるようなグレイアウトの状態でスクロールバーを表示したいので 改行を足すのはちょっと目的と変わってしまいます。 でもお答え頂きありがとうございます。 引き続きどなたかわかる方、回答お待ちしています。
243 名前:デフォルトの名無しさん [2007/01/30(火) 17:34:05 ] 反復処理の順序 For Each...Next ループを実行すると、コレクションの反復処理の順序は GetEnumerator メソッドが返す列挙子オブジェクトの制御下に置かれます。反復処理の順 序は、Visual Basic ではなく、列挙子オブジェクトの MoveNext メソッドによって決まります。 したがって、コレクションのどの要素が最初に element に返されるかや、特定の要素の後 にどの要素が返されるかを予測することはできません。 特定の順序でコレクションを反復処理する必要がある場合は、そのコレクションによって公 開される列挙子オブジェクトの特性を把握していない限り、For Each...Next ループが適切な 選択肢とは言えません。For...Next ループや Do...Loop ループなど、別のループ構造を使 用した方が、信頼できる結果が得られます。 ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.VisualStudio.v80.ja/dv_vbalr/html/ebce3120-95c3-42b1-b70b-fa7da40c75e2.htm
244 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 17:37:55 ] Array"List"のListってのは何を意味してるか考えろよ。 列挙子オブジェクトの特性が把握できてるんだよ。w この場合。
245 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 17:41:43 ] おぉ!ということはfor eachでも問題ないんですね。 かっこいーからfor eachのほうを使うことにします。
246 名前:デフォルトの名無しさん [2007/01/30(火) 18:13:46 ] >>242 なんの為か知らんがどうして表示したかったら、 ハンドルにAPIのShowScrollBarを投げろ。
247 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 18:42:22 ] >>244 それって確証ある? つまり明文化された仕様として保障されてるか? 俺は怪しいと思うけどどうなんだろう。 >>239 の言うように、Enumeratorは(クライアントのデータ構造が仮にリストでも) リストを手繰っていくような動作を実装することは義務付けられてないでしょ。 自分でEnumeratorみたいの実装すること考えたって、パフォーマンス優先するなら リストを手繰るような実装は俺ならしないけど。
248 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 18:57:18 ] どんな実装するってのか聞いてみたい。
249 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 19:03:40 ] 例えばリストが、常に上の方に詰められる自己参照構造体配列(の配列)で実装されてたら、 Enumeratorは構造体配列を上からシーケンシャルに吐き出せば済むでしょ。
250 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 19:28:50 ] んーなんだそういう話か… んー なんていうかさ、自然に考えられる実装ってあるじゃん。 ある意味特殊な構造の実装になってる場合なんかは、 何を重視するかで実装は変わってくるが、 そういう場合は明確にドキュメントするよね? で内部がただの配列であり、配列と同様に扱えると明記されてる ArrayListで、予想外の順序で列挙される実装なんて有り得るか? 逆にそういう実装なら絶対に明記されてるだろ。 で保証はないって話は理解出来なくもないんだが、 現実はもっと怪しい仕様??なんてものがいっぱいあって、 そういうことと比べれば実質十分信用していいレベル。 まあ、絶対に明記されてる仕様にしか、一ヶ所たりとも依存しないってんなら 好きにすればいいけど
251 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 19:30:44 ] >>247 仕様はないでしょうな 現在存在するすべてのArrayListの実装がリスト順に返しているという事実と、 今後現れる実装が互換性を維持してくれるだろうという希望に頼るしかなかろう
252 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 20:30:49 ] >>250 わかんないお人だなあ。 だからさあ、リスト構造をしているのは、 換言すればリストの「ふり」をするのはListなりArrayListなのであって Enumeratorじゃないんだよ。
253 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 21:11:30 ] いやそういうことじゃなくて現実の話をしてる リストのセマンティクスをもつコレクションがリストじゃない並びの列挙を行うなら、 現実にはドキュメントされてる、普通。 ArrayListとかは実装が配列になってると明記されてたはず。 この状態で異なる列挙実装なんて普通考えられない。 もしそうなってるなら明記されてるはず、現実には。 他の人間が実装したリストはそりゃ分からんが。
254 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 21:35:36 ] なんかインターフェイスと実装をごっちゃに議論してるような気がするんだけど
255 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 21:38:03 ] ??
256 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 21:40:50 ] >>253 倒錯してると思うよ。 普通逆でしょ。 IEnumeratorの要求仕様以上のspecial feature があるなら明記するよ。 明記してないなら、それは「期待すんなよ」ってことだと解釈するのが普通だと思うけど。 っていうか、ArrayListのがインデックス順に整列された配列、なんて記述を見た記憶は 俺にはないなあ。
257 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 21:51:25 ] >>254 たしかに>>256 で初めてEnumeratorに I が付いたな
258 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 21:58:32 ] >>257 アホでしょお宅w
259 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 23:10:34 ] ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.VisualStudio.v80.ja/dv_fxfund/html/71807ea7-9180-48a6-916f-35a5251d477f.htm msdn2.microsoft.com/ja-jp/library/hwyysy67 (VS.80).aspx よくよめ
260 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 23:13:07 ] ArrayList クラス 必要に応じてサイズが動的に増加する配列を使用して、IList インターフェイスを実装します。
261 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 23:26:17 ] >>259 そんな隅っこにこっそり書いてあるのなw なるほど勉強になった。 まあでも、個人的には本当にその記述信用していいのかな、 って気がしないでもない。 ちょっとありえない実装のような気がするんだよね。 ところでList(of T)に関してはどうなんだろう。 >>260 「配列を使用して」、っていうのは「正体はベタな配列に過ぎないんですよ」 って意味じゃないよ。
262 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 23:56:36 ] いまいちわからんなぁ >まあでも、個人的には本当にその記述信用していいのかな、 >って気がしないでもない。 >ちょっとありえない実装のような気がするんだよね。 ArrayListみたいなのの実装で列挙が順序通りってのが、なんでありえない実装なわけ? >「配列を使用して」、っていうのは「正体はベタな配列に過ぎないんですよ」 >って意味じゃないよ。 言ってる意味がちょっとよく分からん。
263 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 00:07:34 ] お前らもうええわ。 メアド交換して勝手にやってろ
264 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 00:14:05 ] >>262 文盲かよ。。だから処理の効率が悪いからだって何度も言ってるじゃん。。 順番にアクセスしたいのなら普通にインデクサ使えば良いだけだし。 後半の話も書いてるでしょ。 配列を使用して、というのは内部的に配列を使ってListが実装されてるって意味であって… まあ、リストとかキューとか自前でデータ構造実装したことないなら理解できないかもね。
265 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 00:46:46 ] あのさ、何よりパフォーマンスだけが重要ならそもそも列挙なんて仕組みはいらんだろうに そもそも列挙実装の仕組みとしては単純なインデックスが一番効率的だろうが まあこれは内部実装が単純な配列の場合だが。 列挙なんて効率悪いものなんていらんから、順序通りの列挙の実装はありえないつてか? お前の言ってること全然理解出来ねーよ 内部実装が単純な配列のコレクションなら順序通りが一番当たり前だろ。 なんでありえないわけ? わざわざ順序通りにならないようにすんのか?なわけないよな。 ただのインデックス使えばいいってのは状況によってはもちろん分かるが だからありえないってのは理解できん どうしてもありえないってんならSSCLIでソースみてみろよ。
266 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 00:58:05 ] インデックスでアクセスできるコレクションの列挙がインデックス順じゃないほうがありえないよな
267 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 01:02:40 ] お前ら、VBはそんなアホらしいことを考えなくても十分に使えるという点が 最大のセールスポイントだということを知らないのか?
268 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 01:10:30 ] "(" を打ったとき ToolTip に "Index As Object" て出てくるやつはインデックス順で並んでいるやつで "(" を打ったとき ToolTip に "Key As Object" て出てくるやつはインデックス順で並んでいないやつ と俺は解釈している。
269 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 01:12:52 ] 大体ArrayListの for each 使うくらいでビビルような偏執狂が VBを使ってるということ自体納得がいかんわw
270 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 01:15:08 ] >>266 そもそもリスト構造っていうのがどういうデータ構造なのかわかってるのかと。。 だから連結リスト構造だったら列挙するときにわざわざインデックス順にやる、 なんてアホな実装するわけないじゃん。 連結リストじゃなかったら、例えばInsertRangeメソッドを実装するのに いちいちコピーしなきゃならんでしょ。 連結リストならインサートする前後のポインタを付け替えるだけで済むのに。
271 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 01:28:38 ] >>264 内部的に配列を使って… いや最初からそういう意味で言ってるだろ。 それに対して 「ベタな配列に過ぎないんですよ」って意味じゃないよ っていうのが、どういう意味・意図なのかよく分からんてだけだ 内部的に配列を使って実装したコレクションの列挙が 内部配列の順序通りなんて一番ありえるパターンだろ なんで「自分でデータ構造実装したことないなら理解出来ないかもね」 になるんだよ。 内部的に配列を使ってはいるがダイレクトな配列の使い方はしていない実装は もちろん有り得るが そうならArrayListみたいな説明の仕方はしない、普通は。 明らかに誤解を招く書き方だから。 で現実にArrayListは単純な配列をダイレクトに使って実装されてる。
272 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 01:44:19 ] >>270 にとって.NETのコレクションクラスってありえない実装なんだな
273 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 01:56:35 ] 今は.NETのコレクションでのリストの話をしてるのよ。 ArrayListとかの。 で、連結リストの話でも、インデックス順序の列挙はありえなくもなんともないと思うんだが。 連結リストの場合、どういうのが普通はなんだ? むしろリンクを辿るのが一番普通だと思うが…単純な連結リストの場合
274 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 02:00:44 ] リスト構造だとインデクスアクセスが定数時間で出来んだろうが 可変長配列として扱いやすくするコレクションなのに インデクスアクセスを非効率にしてどうすんだよ。
275 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 02:09:55 ] っと、ここでのリスト構造ってのは連結じゃない話か なら上のインデクスのはなしはとりあえずなし。
276 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 02:14:12 ] まあ適材適所で、単純な配列構造がありえないなんて事はない。 ArrayListは挿入や削除には不向きってだけだな。 その代わり単純なアクセスは非常に効率がいいありふれた実装
277 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 02:23:51 ] 挿入もインデックスもどっちも速いってどんな構造? てか連結リストって言ってるじゃん 可変長配列は例えインデックスアクセスが遅くなっても 挿入を高速にするべきだ、そうじゃない実装なんてありえないってことか
278 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 02:57:20 ] もういいよ。
279 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 07:20:20 ] JavaにはArrayListとLinkedListがあるみたいですよ www.hellohiro.com/list.htm
280 名前:デフォルトの名無しさん [2007/01/31(水) 07:57:59 ] VB2005でTabControlのTabPageにTextBoxやLabelなんかを 幾つか置き、TextBoxのApplicationSettingsの PropertyBindingを設定すると、置いてあるラベルや ボタンが非表示になって、プロジェクトを再起動するまで 表示されないのだけど、何とか解決の方法は無いかな。 こんなことばっかりでもう泣きたいよ。
281 名前:デフォルトの名無しさん [2007/01/31(水) 08:00:40 ] ここの話題か分からないのですが、VB2005で作っているので質問させてください。 SerialPortクラスでモデムを操作して人の代わりに電話し、音声案内のところで 決められた番号を押すプログラムを作りたいと思っています。 クラスを初期化をした後、 serialPort.Write("ATDT 1234-5678" & vbCrlf) これで電話をかけることはできましたが、相手が取ってから決めた番号の音を出すために serialPort.Write("ATDT 1,,2,,3" & vbCrlf) みたいにするとモデムとの通信が切れてしまいます。 どうも1回目のダイアルをしたときにモデムは相手からの応答を待っていて、 2回目のダイアルをした時点では通信待ち中のためエラーになってしまうようです。 モデムにこの待ちをやめさせて、ただ単に音を出すだけにしたいのですが どうにかなるでしょうか?よろしくお願いします。
282 名前:デフォルトの名無しさん [2007/01/31(水) 08:35:31 ] >>259 これは 各クラスの GetEnumerator のヘルプにも書いておいて欲しいよねえ。
283 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 09:20:55 ] スイマセン、教えてください。 印刷ダイアログを表示させた時、[印刷]とかかれたボタンの名前の文字を別の文字に変えることは可能でしょうか? 可能でしたらやり方ご教授ください。
284 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 11:06:25 ] >>281 モデムに命令ばっかりしてないで少しは話を聞いてあげなさい。 以上
285 名前:デフォルトの名無しさん [2007/01/31(水) 12:11:59 ] IME列挙体について教えてください。よろしくお願いします。 msdn2.microsoft.com/ja-jp/library/system.windows.forms.imemode (VS.80).aspx を見たのですが、、これらの列挙体はBitで構成されているものと思って rtxtMemoContents.ImeMode = _ CType(Windows.Forms.ImeMode.Hiragana + Windows.Forms.ImeMode.On, Windows.Forms.ImeMode) と入れてみましたら、結果は 「カタカナ」 モードになっていました。 単純に rtxtMemoContents.ImeMode = Windows.Forms.ImeMode.On としますと、デフォルト設定が効くのか、「ひらがな」 となりましたが、 上記の方法でない正しい方法を知りたく思いました。すみませんが教えてください。 よろしくお願いします。
286 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 15:15:18 ] System.Windows.Forms.ImeModeにFlags属性なんてついてないし。 ImeMode.On = 1 ImeMode.Hiragana = 4 で ImeMode.Katakana = 5なだけじゃんか たんにImeMode.Hiragana にすればいいんじゃないのか
287 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 15:32:07 ] 自作のdllのことなのですが、 オブジェクトブラウザでクラスやプロパティ、メソッド、イベントを非表示にする方法がわからず躓いています。 どなたか知っている方、助けてください。お願いします。<(_ _)>
288 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 15:35:24 ] >>286 どうもです。そうだったんですか、わかりました。列挙体は連続番号なんですね。 ・・・てことはBit値じゃなかったんですね。 ところが、やり方が悪いのか、はじめ たんにImeMode.Hiragana にしてみたのですが、モードが日本語入力モードに 切り替わらなかったため、足してみたのでした、そしたらカタカナでは入力できる ようになったのでした。 どこが間違っていたのか・・・まだわからないですが調べてみます。
289 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 16:20:43 ] >>280 ウチはそんな現象起こらないけど。 具体的に説明したら?
290 名前:デフォルトの名無しさん [2007/01/31(水) 16:22:25 ] ダイアログを呼び出した時に、呼び出し元フォーム上の値をダイアログ上の変数へ格納しています。 このダイアログを閉じるときに、今度は逆に呼び出し元フォームの変数へ格納したいのですが form1のメンバ変数は参照可能なのでしょうか? myDialogクラスにform1型のメンバ変数作るくらいしか思いつきません・・・ ちなみにやりたいことは、 ・Form1をインスタンス化したときにiniファイルから値を取り込み、 ・dialogを閉じたときにiniファイルへ書き込み&form1のメンバ変数へ格納 です public class Form1'********************************** public strTest as String public Sub OpenDialog() Handles Button1.Click Dim diaTest as Form diaTest = new myDialog(me) End Sub End Class public class myDialog'******************************* Public Sub New(ByVal s as Form1) me.textbox1.text = s.strTest.text End Sub Public Sub CloseDialog() Handles Button1.Click ??? End Sub End Class '**************************************************
291 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 16:34:14 ] >>283 印刷ダイアログで「印刷」ボタンの文字を変えたいって、なにがしたいんだよw
292 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 16:37:02 ] >>287 クラスやメソッドを Friend で宣言すればいいんじゃないのか?
293 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 16:50:48 ] >>290 基本は「呼び出し元を見るようなプログラムを書かない」 呼び出されるフォームが「使いまわしできる」ように。 Public Class Form1 Private Sub OpenDialogButton_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim dialog As MyDialog = New MyDialog dialog.Param1 = Me.TextBox1.Text If dialog.ShowDialog(Me) = Windows.Forms.DialogResult.OK Then Me.TextBox1.Text = dialog.Param1 End If End Sub End Class Public Class MyDialog Private _param1 As String Public Property Param1() As String Get Param1 = Me._param1 End Get Set(ByVal value As String) Me._param1 = value End Set End Property Private Sub MyDialog_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.TextBox1.Text = Me._param1 End Sub Private Sub CloseDialog_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles acceptButton.Click Me._param1 = Me.TextBox1.Text End Sub End Class
294 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 16:51:24 ] はじめまして。質問させてください。 既に起動しているIEでクリックイベントを発生させ、 そのイベントをVBで取りたいのですが、そのような事は可能でしょうか?
295 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 16:59:08 ] >>294 可能か?と聞かれたらハッキリ言ってなんでも可能だよ。簡単じゃないけど。 ホントに初心者って他のアプリのメッセージとかプロセスとかウィンドウハンドルとか好きだなw
296 名前:290 mailto:sage [2007/01/31(水) 17:06:26 ] >>293 うほ・・・ありがとうございます、勉強になります! 流れで考えてるから、showdialogの後に値を取れるって考えれないんですね俺
297 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 17:10:37 ] 流れで考えたら分かるだろw
298 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 17:13:38 ] >>297 「結果を取得する」って発想ができないんじゃね?
299 名前:280 [2007/01/31(水) 17:14:13 ] >>289 有難うございます。 OS Windows2000 言語 Microsoft Visual Basic 2005 1番簡単な再現方法です。 1、新しいプロジェクトを作成する。 2、TabControlを一つ置く。 3、TabPage2にLabel一つと、TextBoxを一つ置く。 4、TextBoxのプロパティを開いてApplicationSettingsの+ をクリックする。 5、その中のPropertyBindingをクリックし、 その中のTextを選択。 6、横に現れる下矢印をクリック。 7、編集窓の新規をクリック。 8、Nameに"test"と入力。 9、Okを押し編集窓を閉じ、アプリケーション設定 もOkで確定する。 こうすると見事にLabelが消える。(^^; プロパティウィンドウでLabel1を選択すると点線だけが 表示される。タブを切り替えても表示されずダメ、結局 プロジェクトの再起動をするしか手が無い。 以上です。
300 名前:289 mailto:sage [2007/01/31(水) 17:23:36 ] >>299 ほんとだ、アプリケーション設定を新規にするとダメみたいだな。 アプリケーション設定をコントロールのプロパティから作らずに、プロジェクトで作って コントロールでそれを選択すればいいんじゃね? つーか再起動しなくても、フォームのデザイン画面閉じてもう一度開いたらOKなんだか?
301 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 17:23:56 ] >>297-298 san 戻り値返した時点でdialogの存在は俺の頭から消えちゃってましたw だから showdialog()をオーバーロードして戻り値をstr配列型に、 dialog上で入力した値を戻り値に、 戻った配列をそれぞれ型変換してメインフォーム上の変数に代入 ・・・とか考えてました(汗
302 名前:283 mailto:sage [2007/01/31(水) 17:26:30 ] >>291 印刷ダイアログでは、プリンタの選択やその他の設定をするだけにとどめているのです。 そこで「印刷」ボタンを押しても、それら設定の保存にとどまり、印刷はまだ行いません。 (Form上の印刷ボタンで改めて印刷を行う。) だから「印刷」じゃなくて「設定」ってキャプションのボタンにしたいのねん…。
303 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 17:27:13 ] 気にするな最初は皆そんなもんだ。
304 名前:291 mailto:sage [2007/01/31(水) 17:37:55 ] >>302 だったら最初から「印刷設定だけがしたい」って言えば… 印刷ダイアログはあくまで印刷ダイアログだから。 PageSetupDialog() のほうがが妥当じゃない?
305 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 17:48:49 ] >>299 うはwwwwwほんとだ、ラベル消えたwww プライオリティが変わったとかそんなレベルじゃ(ry
306 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 17:51:51 ] お前キモイから消えろ
307 名前:305 mailto:sage [2007/01/31(水) 17:53:59 ] フォームの一覧からラベルのイベントを選択すると再表示されるが ちょっと気持ち悪いなww 勘違いして、ラベル付け直しそう
308 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 17:57:25 ] いいから消えろって
309 名前:287 mailto:sage [2007/01/31(水) 18:02:00 ] >>292 お返事ありがとうございます。 Friend宣言して実際に隠すのではなく、 オブジェクトブラウザで除いたときに、通常は表示はされていないけど、 「非表示のメンバを表示」にチェックを入れたときに表示するようにしたいのです。 プログラム上Publicの必要があるのですが、どうしても正規の利用の対象にしたくはありませんので。。。
310 名前:292 mailto:sage [2007/01/31(水) 18:21:12 ] >>309 ああそういうことか。 試してないけど BrowsableAttribute はどう?
311 名前:280 [2007/01/31(水) 18:26:58 ] >>289 さん感謝! そうですね、再起動しなくても一回画面を閉じて、再度開けばOKですね。 とりあえずアプリケーションの設定で名前を作ってから選択するようにします。 沢山置いたコントロールが一斉に消えたので、かなりあせりましたが、 たいしたことは有りませんでした。
312 名前:283 mailto:sage [2007/01/31(水) 18:30:55 ] >>304 "プリンタの選択"がしたかったのでねー。 めんどくなったからデフォのダイアログボックスやめて、コンボボックスにインスコしてるプリンタ名つめこむよw
313 名前:287 mailto:sage [2007/01/31(水) 18:48:23 ] >>310 ありがとう! BrowsableAttributeとEditorBrowsableで隠せたよ! 本当に助かりました!
314 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 19:00:19 ] >>312 つーかそれが普通では? プリンタの選択するだけなら 結局使い勝手求めるならPrintPreviewControl使ってダイアログ自作でしょ
315 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 20:33:07 ] プログラミングに関する質問じゃないんだけど、VB2005 Express Edition でコンパイルオプションの『整数オーバーフローのチェック』が見当たらないんですが、 Express版で設定できないんでしょうか? マニュアルには 1.ソリューション エクスプローラでプロジェクトが選択されている状態で、[プロジェクト] メニューの [プロパティ] をクリックします。 2.[コンパイル] タブをクリックします。 3.[詳細コンパイル オプション] をクリックします。 4.[ビルドの詳細設定] ダイアログ ボックスで、[整数オーバーフローのチェックを解除] チェック ボックスをオンにします。 と書かれていますが、コンパイルのプロパティ画面に「詳細コンパイルオプション」の項目が見当たりません。
316 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 00:05:49 ] スレッドから呼び出した WebRequest の非同期処理 BeginGetResponse、この処理が完了するまでスレッドをブロックするには、 いかなる方法をとればよろしいのでしょうか。
317 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 00:15:05 ] どのスレッドで何を呼び出してるのかつかめんが、 スレッドをブロックしたいなら端から同期で呼べばいいんじゃないのか?
318 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 01:09:52 ] StartInfo.UseShellExecute = False にすると、 StartInfo.WindowStyle = ProcessWindowStyle.Minimized が効かなくなるのでしょうか?
319 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 01:48:41 ] Form1.Line (Sx, Sy)-(Sx + box, Sy + box), C, BF というVB6.0の行を書き換えるには ttp://msdn2.microsoft.com/ja-jp/library/f956fzw1(VS.80).aspx を参照すれば良いのでしょうか?
320 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 03:16:43 ] 参照してわからなかったんならそう言えよ
321 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 03:22:48 ] >>320 はい・・・すいません、以後気をつけます。 lineの代用ってどうすればいいんですか? 調べたらsystem.drawingとかも出てきて本当もう訳わかりません(´:ω:`)
322 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 03:31:59 ] ttp://www.google.com/search?hl=ja&lr=lang_ja&oe=utf8&q=line%E3%82%B3%E3%83%B3%E3%83%88%E3%83%AD%E3%83%BC%E3%83%AB これくらいは、なぁ?
323 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 03:40:50 ] LineコントロールじゃなくてLineメソッドなわけだが。 四角形を塗りつぶすのはFillRectangleだけど .NETのグラフィックスの基本を全然知らないっぽいんで とんでもないコードを書きそう。 ところでBFの前のCってなんだっけ?
324 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 03:47:14 ] おぉ? VB6 と Line というとこればっかりだからつい予断を
325 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 03:58:24 ] >>322-325 とんでもないコード以前に波線が全く消えません。 アフォみたいな質問に答えて頂きまして本当にありがとうございました。
326 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 04:02:45 ] やけに気の小さいヤツだなw
327 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 04:15:16 ] 自己解決の糸口は見えませんが、自決は出来そうです
328 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 07:37:55 ] >>284 レスありがとうございます。 でもReceiveイベントでモデムからのメッセージは受け取っていたんです。 モデムに送るATコマンドを serialPort.Write("ATDT 1234-5678;" & vbCrlf) にすることですぐに"OK"が帰ってくるようになり、問題解決しました。
329 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 13:38:41 ] >>316 EndInvokeでもWaitHandle.WaitOneでもお好きに。 だが同期呼び出しで済む話なら…
330 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 14:08:31 ] Dim strDate As String = "20070101" Dim strResult As String = Format(strDate, "0000/00/00") このようにすると、strResultには"0000/00/00"が入ってしまいます。 期待している値は"2007/01/01"なのですが、どのようにすればよろしいでしょうか。 VB6.0の時は、問題なく"2007/01/01"が入ったのですが…。
331 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 14:26:21 ] >>330 "yyyy/MM/dd"じゃね?
332 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 14:28:30 ] stringはformat出来ません
333 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 14:29:49 ] >>330 msdn2.microsoft.com/ja-jp/library/wb216dct (VS.80).aspx ユーザー定義の数値書式の所読め
334 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 14:32:25 ] >>330 普通にLeft、Mid、Right関数で文字列を取得していけばよいのでは?
335 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 14:33:20 ] FormatはVB6の頃と仕様が違う。 素直に>>334 .
336 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 14:35:02 ] Format(CInt(strDate), "0000/00/00") にしたところ、解決できました。ありがとうございました。
337 名前:デフォルトの名無しさん [2007/02/01(木) 14:39:23 ] そんな無意味な型変換は事故の元だろ? なんで数字変換しないと駄目なの?