[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 03/12 18:38 / Filesize : 296 KB / Number-of Response : 987
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

VB.NET質問スレ (Part6)



1 名前:デフォルトの名無しさん [04/07/03 08:49]
VB.NETの質問全般です

過去スレ
VB.NET質問スレ (Part5)
pc5.2ch.net/test/read.cgi/tech/1078134703/
VB.NET質問スレ (Part4)
pc2.2ch.net/test/read.cgi/tech/1065269043/
【老若】VB.net質問スレ【男女】 (Part3)
pc2.2ch.net/test/read.cgi/tech/1056281084/
【老若】VB.net質問スレ【男女】 (Part2)
pc2.2ch.net/tech/kako/1043/10436/1043629429.html
【老若】VB.net質問スレ【男女】
pc2.2ch.net/tech/kako/1025/10258/1025848458.html


422 名前:デフォルトの名無しさん mailto:sage [04/08/06 22:28]
漢字を数字か。昔仕事でそんなコードを書いたな。
百五と百十五と百二十五とか腹立つんだよねぇ

423 名前:デフォルトの名無しさん mailto:sage [04/08/06 23:48]
>422
一、十、百、千、一万とかも嫌だね。

424 名前:デフォルトの名無しさん mailto:sage [04/08/07 00:10]
客が壱、弐、参も使いたいとかローマ数字T、U、Vとかも使いたいとか言ってきたら大変だな

425 名前:e [04/08/07 01:06]
ADO.NETでデザイナを使わないで、プログラミングする方法の解説とか
ごぞんじないでしょうか。

webで検索してみても、こういう結構基本的なもので終わってるのが
多いもんで。。。
www.atmarkit.co.jp/fdotnet/basics/adonet_index/index.html


426 名前:デフォルトの名無しさん mailto:sage [04/08/07 01:08]
白黒2色のマスク画像みたいなやつの黒の部分から
Regionオブジェクトを作る方法ってないでしょうか?

427 名前:DARK mailto:sage [04/08/07 01:32]
NoCD化パッチ作りたいのですが…教えて下さいm(_ _)m


428 名前:デフォルトの名無しさん mailto:sage [04/08/07 02:03]
>>425
黄色いADO.NETの本とかは?
でかくて高いヤツ
まぁあれも基本しか書いてないけど


429 名前:デフォルトの名無しさん mailto:sage [04/08/07 07:25]
やっぱ標準モジュールがあると便利だね。
C#が嫌になってきた。

430 名前:デフォルトの名無しさん mailto:sage [04/08/07 13:14]
c#が嫌なのは同意するが(VBに比べると、可読性が悪くてイライラしてくる)
標準モジュールなんてイラネ。

読みにくいキャメル形式の命名法もイラネ。



431 名前:ぷぷぷっ mailto:sage [04/08/07 17:11]
.NET(2002 or 2003)で作成したアプリを動かしたときに、
そのアプリはどの.NET Frameworkのバージョン(1.0 or 1.1)で動いているか
把握することはできないんかいのぉ。。。
そのアプリのフッター部分に表示とかしたいのじゃが。

432 名前:デフォルトの名無しさん mailto:sage [04/08/07 19:20]
ちょっと違うが、VB.NETで作ったプログラムで、フォームに
そのプログラムをコンパイルした日時を埋め込みたいのですが
なんか方法ありますか?


433 名前:デフォルトの名無しさん mailto:sage [04/08/07 22:58]
標準モジュール…ってあんたw

434 名前:419 mailto:sage [04/08/08 02:31]
>>420
出来なかったんですが、やり方教えてもらえませんか?


435 名前:419 mailto:sage [04/08/08 03:06]
>>434
当たり前なので書き忘れましたが、SizableToolWindowはなしでお願いします。
あれはダイアログボックスではなくプロパティインスペクタを作るための
もので、タイトルバーの高さが異なるものなので。

436 名前:419 mailto:sage [04/08/08 03:12]
>>435
あ、でもSizableToolWindowでプロパティをいじるだけでタイトルバーの
高さを通常のウィンドウと揃える方法があればそれでオーケーです。
連続カキコですみません。

437 名前:デフォルトの名無しさん mailto:sage [04/08/08 14:16]
自分でコントロール作った方が早くない?

438 名前:デフォルトの名無しさん mailto:sage [04/08/08 21:52]
>>435
重症だわこの人。。「当たり前なので書き忘れましたが、」だと。
なんで最近こういう「自分以外はみんなエスパー」と思ってるとしか思えない
病的な奴が多いんだろう。

420 :デフォルトの名無しさん :04/08/06 21:06
>>419
書いてあること、フォームのプロパティウィンドウでいろいろ試すだけで
一分で全部できた。

書いてあること、

書いてあること、

書いてあること、

439 名前:デフォルトの名無しさん mailto:sage [04/08/08 21:54]
>>438
自尊心を守るのに必死なんだよ。放っておいてやれ

440 名前:デフォルトの名無しさん mailto:sage [04/08/08 23:52]
変なヤツは放置しろよおまえら



441 名前:デフォルトの名無しさん mailto:sage [04/08/09 02:19]
>>432
.exe のタイムスタンプで代用じゃダメか?

442 名前:デフォルトの名無しさん [04/08/09 13:22]
>>441
あ、そうか。コロンブスの卵ですね。さんく


443 名前:デフォルトの名無しさん mailto:sage [04/08/10 01:59]
みなさ〜ん。自分は今日からプログラミング始めようとしている高校生です。
なんかいろいろ調べるとVBやらVB.NETやらC++やらC#やらいろいろな言語があることを知りました。
難易度的にはVBが一番簡単らしくVB.NETはVBの進化で少し複雑になっているとか。
C++やC#は難しいとか。。
自分としてはVBを覚えその次にVB.NETんでもってC++やC#やろうかなって思っていたのですが
どうやらVBとC#はまったく関連性がないとか。。。
フランス語覚えたから中国語得意になるってわけでないのと同じですかね?
将来は本格的なプログラマになりたいので、やっぱりC言語からはじめてC#やC++を学んだ方が
よいのでしょうかね?

444 名前:デフォルトの名無しさん mailto:sage [04/08/10 02:30]
ここはVB.NETの技術的な質問回答をする場所なので
どの言語が自分に適してるかを答えることはできないと思う
プログラマー板の方に行った方が適切な回答が得られると思われ

445 名前:デフォルトの名無しさん mailto:sage [04/08/10 04:39]
>>444サンクス ペコ

446 名前:デフォルトの名無しさん [04/08/10 09:48]
私だけ?何年もVBに触っているのに、
いまだにTreeViewの使い方が分からない・・・


447 名前:デフォルトの名無しさん mailto:sage [04/08/10 12:10]
>>446
いや・・俺もこないだ初めて知った人なのだが、それは質問なのか?

448 名前:デフォルトの名無しさん mailto:sage [04/08/10 19:34]
質問です。

フォームに、ボタン2つと、グループボックスを配置します。ボタン2を
グループボックスに乗っけます。そして、

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

If Me.GroupBox1.Enabled = True Then
Me.GroupBox1.Enabled = False
ElseIf Me.GroupBox1.Enabled = False Then
Me.GroupBox1.Enabled = True
End If

End Sub

とすると、グループボックスとボタン2をまとめて有効/無効を切り替え
出来るのですが、

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Me.Button2.Enabled = False
End Sub

として、ボタン2をクリックしてボタン2を無効にすると、ボタン1をクリックしても
グループボックスとボタン2をまとめて有効/無効を切り替え出来なくなります。
何故でしょう(;´Д`)

449 名前:最凶VB厨房 mailto:sage [04/08/10 20:21]
2箇所のEnd Subの前に
MessageBox.Show("Button2.Enabledは" & Button2.Enabled.ToString())
をつけてやっとーみ。

450 名前:デフォルトの名無しさん mailto:sage [04/08/10 21:13]
レスどうもです。
ひょっとしてEnabled = Falseになっているコントロールは、
グループボックスと連動してEnabled = Trueに出来ないのでしょうか?
そうならちょっと不便(;´Д`)



451 名前:最凶VB厨房 mailto:sage [04/08/10 21:18]
ボタン2が有効か無効かは
この場合グループボックスとボタン2の論理積(And)となる。

つまりはグループボックスのEnabledを操作すればいいだけ。

452 名前:デフォルトの名無しさん mailto:sage [04/08/10 21:42]
>>450
もう解が得られたようだけど、
>ひょっとしてEnabled = Falseになっているコントロールは、
>グループボックスと連動してEnabled = Trueに出来ないのでしょうか?

もしそういう感じの仕様になっていると、そのうち
「グループボックスやフォームなどのコンテナに入っているコントロールは、
 必ずコンテナと連動してEnable = True になってしまうのでしょうか。
 そうならかなり不便」
ということになると思う。

453 名前:450 mailto:sage [04/08/10 22:10]
グループボックス=ON  ボタン2=ON  ←真
グループボックス=OFF ボタン2=OFF ←真
グループボックス=ON  ボタン2=OFF ←偽
グループボックス=OFF ボタン2=ON  ←偽

弱い頭で考えますた。間違ってます?

454 名前:最凶VB厨房 mailto:sage [04/08/10 22:14]
知らんかったら論理積で検索して確かめな。

455 名前:デフォルトの名無しさん mailto:sage [04/08/10 22:20]
>>450
ええと、
・ウィンドウ(フォーム)が Enable = False の場合、中のコントロールは (Enableの値に関わらず) 全て無効
・グループボックスが Enable = False の場合、中のコントロールは (Enableの値に関わらず) 全て無効
ってことですよ。コンテナ側が無効だと、中身は無効。

喪前の学校が休みのときは、どのクラスも休み。
喪前のクラスが休みのときには、元気な奴も病気の奴も皆休み。
学校もクラスも休みじゃないときには、病気 (Enable = False) の奴だけが休み

456 名前:450 mailto:sage [04/08/10 22:44]
理解できました!
最凶VB厨房殿、デフォルトの名無しさん殿ありがとうでした(`・ω・´)

457 名前:デフォルトの名無しさん mailto:sage [04/08/11 00:02]
だれか突っ込んでやれよ。

>>450
>If Me.GroupBox1.Enabled = True Then
> Me.GroupBox1.Enabled = False
>ElseIf Me.GroupBox1.Enabled = False Then
> Me.GroupBox1.Enabled = True
>End If

このコードはあまりにひどいだろ。

Me.GroupBox1.Enabled = Not Me.GroupBox1.Enabled

か、せめて

If Me.GroupBox1.Enabled Then
Me.GroupBox1.Enabled = False
Else
Me.GroupBox1.Enabled = True
End If

だろ、普通。

458 名前:デフォルトの名無しさん mailto:sage [04/08/11 02:23]
>>457
スレ違いを承知で突っ込んでおくが、>>450の書き方が決して「良くない」
とは言えない場合もあるよ。

Boolean 型が何バイトか考えてごらん。VB.netでは2バイト(=8ビット)だ。
BOOL型が存在しないCなどでは
 #define BOOL char
 #define TRUE 0x01
 #define FALSE 0x00
とか書いてたりすることもある。こうなると
 BOOL HogeFlag=TRUE;
 if(HogeFlag==TRUE) wow(); // (1)
 if(HogeFlag) wow(); // (2)
と、(1)と(2)では挙動が同じでも違いが良くわからなかったりする。

大勢の人間が寄ってたかって複数の言語で開発するような現場の場合、
よほど速度チューニングが求められない限り、冗長でもいいから明示的に
誰でも解るように書くのが暗黙の了解だったりする。

とにかく、自分の主観だけで他人のコードを「あまりにひどい」などと
言うのは良くないよ。

459 名前:458 mailto:sage [04/08/11 02:24]
2バイト=16Bitだ。。。_| ̄|○

460 名前:デフォルトの名無しさん mailto:sage [04/08/11 11:02]
>>458
なんかフォーカスがずれたお人だね。そういうの「為にする議論」っていうんだよ。

「冗長でもいいから明示的に誰でも解るように」という要件は、
<.NETでは>Booleanという型が存在しそれを利用することで必要十分に満たされている。
Booleanってそもそも何だと思ってるの?(ついでに、Boolean=ワード、ってのは旧VBの仕様)
違う道具(C)の作法をそのまま適用して何になる。

一般論をしてるだけだって?
特殊なケースでの冗長なコードの効用を過剰に一般化してるだけじゃん。
そういうの「馬鹿の一つ覚え」とか「羹に懲りて膾を吹く」って言う。



461 名前:450 mailto:sage [04/08/11 11:53]
>>457
大変勉強になりました。ただ、あなたがプログラムに関して、
私以上に知識を有してる事は十分理解出来ますが、それを必要以上に
誇示したり、「あまりにひどい」「馬鹿の一つ覚え」「羹に懲りて膾を吹く」
と言う発言は、一社会人の会話として私には『冗長』に思えてなりません。

462 名前:457 mailto:sage [04/08/11 12:16]
>>461
私の 「あまりにひどい」 発言に批判があるようで、反省。。
なかったことにしてくれ。私がわるかった。

私が一番気になったのは、ElseIf で 成立しかしない条件を
判定しているところなんですよ。
個人的には、2つ目の例のほうがわかりやすいと思ってる。
他の処理を足せるしね。

>>460 は 私じゃないので知りません。

463 名前:457 mailto:sage [04/08/11 12:37]
>>458
>とにかく、自分の主観だけで他人のコードを「あまりにひどい」などと
>言うのは良くないよ。

そこは今反省中。
もちろん、(たぶん)意図通り正しく動くプログラムであることは
すばらしいことだと思ってます。
その範囲内での発言のつもりだったのですが、そんなことは
全然伝わるわけも無かったと反省中です。ごめんね。

じゃぁこうしよう。

If Me.GroupBox1.Enabled = True Then
Me.GroupBox1.Enabled = False
Else
Me.GroupBox1.Enabled = True
End If

これなら、私もそんなに気持ち悪くない。
って言うのも 主観 か、残念。

464 名前:デフォルトの名無しさん [04/08/11 14:13]
asp.netの質問ってここでもよいですか?

465 名前:デフォルトの名無しさん [04/08/11 15:06]
なぜか悪者にされているが>457は良い指摘だと思ったのは俺だけじゃないよな

466 名前:デフォルトの名無しさん mailto:sage [04/08/11 15:16]
if a = true then
b = false
else
b = true
end if

より

a = not b

のほうが断然いいよな。
値を反転してるって一目瞭然だし。

467 名前:デフォルトの名無しさん mailto:sage [04/08/11 20:18]
>458 の詭弁もあるが指摘自体はただしいだろ。
じっさい俺もひどいコードと思ったし。
>450 は教え方が悪いと言ってんじゃないの?

468 名前:デフォルトの名無しさん mailto:sage [04/08/11 21:13]
漏れなんかは VB (.Net) は、「動けば良し」的センスで使ってナンボ、みたいな先入観があるので、
457的突っ込みは思いつきもしなかった。まぁあれは確かに正論だし親切だと思うけど。
 ↑こう書くと荒れにくい。

 ↓こう書いてはいけない
>>457 どうせVBなんて厨坊言語なんだから、酷いコードでもちゃんと動きゃそれでいいんだよ。

469 名前:デフォルトの名無しさん mailto:sage [04/08/11 23:21]
マウスカーソルを乗せると浮き上がって、
押すと凹むツールバーのようなものってVBでは出来ないのでしょうか?
例えばLive2chのツールバーや、Winnyの「ノード情報」等で使われているものです。
C++やDelphiで作られているようですが・・



470 名前:デフォルトの名無しさん mailto:sage [04/08/12 00:43]
>>469
ToolBar.Appearance プロパティをFlatにすればできると思うけど・・・。



471 名前:デフォルトの名無しさん mailto:sage [04/08/12 03:24]
>>470
ありがとう、出来そうです。

472 名前:デフォルトの名無しさん mailto:sage [04/08/12 16:21]
>>468
このスレはそういうレベルなのか?
VBってバカにされがちだけど結構ちゃんとできてる。
醜いコードでもとりあえず動くものを作るのは重要だけど
それで終わらせるのも勿体無いと思う。
「こういう処理は こう書くときれい」とかも共有して行こうよ。

473 名前:デフォルトの名無しさん [04/08/12 18:15]
テキストボックスに商品の値段を入力したときに、数値に3桁区切りの","を付けたいのですが
入力したとたんに桁区切りをする方法というのはあるのでしょうか?

別のフォームで入力して、表示する際に桁区切りにするのは出来たのですが、入力したそのフ
ォームの中で桁区切りにする方法というのがどうしても判りません。

474 名前:デフォルトの名無しさん mailto:sage [04/08/12 18:37]
>>473
人間はエスパーじゃないことを忘れないようにしよう。
「入力したとたんに」とは具体的にどういうこと?
ひょっとして人に質問している自分自身が何がやりたいのか分ってないとか?

(3n+1)桁の数字のキーが押されたタイミングで、ということ?
あるいは、エンターキーが押されたタイミング?
それとも、他のコントロールにフォーカスが移ったとき?

一番最初のなら、そんな腐れUIは考え直すべきだと思う。
後の2つなら、単にそういうコード書くだけだと思うけど。

475 名前:デフォルトの名無しさん mailto:sage [04/08/12 19:06]
>>473
ひょっっっっとして、
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, \
       ByVal e As System.EventArgs) Handles TextBox1.TextChanged
というイベントメソッド名が解らん、とかそーいうハナシか?

476 名前:デフォルトの名無しさん [04/08/12 19:14]
>>466
b = not a


477 名前:デフォルトの名無しさん mailto:sage [04/08/12 19:51]
Vd:J/A>Dxqr-RJ"~{Ro*

478 名前:コピペ [04/08/12 20:02]
ファイル切り貼り処理を行うに当たって、既に同じ名前のファイルがあるとエラーになってしまいます。
その場合は上書きで処理したいのですが、どう書けばいいでしょうか?
現在以下のようなコードで切り貼り処理をしています。

'strOKU_FILE = 切取側ファイルパス
'strUKE_FILE = 貼付側ファイルパス
Set FsoFile = fso.GetFile(strOKU_FILE)
FsoFile.Move (strUKE_FILE)

479 名前:デフォルトの名無しさん mailto:sage [04/08/12 21:05]
>>478
そんなもんここにレスしている間に調べがつくだろ。
横着野郎に今日を生きる資格はない。
こういう奴の書くコードってどっかのサンプルのツギハギなんだろうなきっと。

まあ、ヒントだけだすと、そんなことにわざわざFSOなんぞ使うな、
VBネイティブの機能を調べろ、ってことだな。

480 名前:デフォルトの名無しさん [04/08/12 21:38]
>>479
あんた、やさしいな。



481 名前:デフォルトの名無しさん [04/08/12 22:13]
>>479
名前欄・・・

482 名前:デフォルトの名無しさん mailto:sage [04/08/12 22:26]
VBは確かに楽な言語だな。
VBで用意されているコンポーネントを使う分にはとても楽でいい。
ちょっと変な事を客から要求されるとかなり大変になるけど。

でも、VBに溺れたPGは最悪だな。
もうVB以外全然できない。
入門としてVBをやるのはいいが、そこからステップアップする気概が欲しいね。

483 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:02]
>>473
電卓みたいに、入力できるのを最下桁に固定すると
簡単になるじょ。

484 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:03]
>>482
.NET使ったこと無いだろ(w

485 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:07]
>484
残念、逆。
.NETでVBに触れた。

486 名前:デフォルトの名無しさん [04/08/12 23:08]
>>482
>入門としてVBをやるのはいいが、そこからステップアップする気概が欲しいね。

C言語のほうが使いやすい奴がVBはじめるのはステップダウンですか?

487 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:13]
>>485
そっか・・・
貴殿はVB6を見ると卒倒するんだろうな・・・


488 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:20]
>486
そうは言わないよ。
VBだって優れた言語だ。
ただ、VBしかやっていないでいると、計算機の本質を考えずにプログラミングできてしまう。
それは>482で言った「ちょっと変な事」を実現するための想像力の欠如に繋がる。
結果として作られたレールの上しか走れないPGになる。
それはクリエイターとしては大きすぎる痛手だ。

>487
色んな言語やってるから大丈夫だと思う。
自分で設計するならオブジェクト指向なしに戻りたくはないが。

489 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:30]
>>488
計算機の本質じゃなくて、Windowsプログラミングの本質でしょ。
何が本質かは主観の問題だろうけど、
SDKプログラミングだって「作られたレールの上」を走っていることに違いはない。

490 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:49]
結局自慢話か( ´,_ゝ`)



491 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:51]
「VBでアプリを作るのは非常に簡単。VBで『マトモな』アプリを組むのは非常に難しい」

VB4の頃からウチの会社に伝わっている格調高き名言でつ。
ドトネトになってからは更に加速したヨカン。

492 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:53]
>>488
まあ、言ってる事は分かるんだけど、VB.NETに関しちゃ、
JavaでもC#でも似たようなもんじゃないかな。Cとかなら別だけど。
計算機の本質と言うか、単にプログラミングということ自体の理解が足りないかな。

ついでに…
最悪なのはVBしか出来ないプログラマではなくて、VBすらできないプログラマだ…
ってか、VB.NETが「ちゃんと」使えるなら大丈夫なんだけどね。

493 名前:483 mailto:sage [04/08/13 00:04]
ひまだとVB議論のスレになるのだ。

>>473
こんな感じでいかがなものかな?
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
Dim v As Decimal
If InStr("0123456789", e.KeyChar) > 0 Then
v = Val(TextBox1.Text.Replace(",", ""))
v = v * 10 + Val(e.KeyChar)
TextBox1.Text = Format(v, "#,##0")
TextBox1.SelectionStart = TextBox1.Text.Length
End If
e.Handled = True
End Sub

若干手抜きかも知れないのでみんなで直してくれい。

494 名前:デフォルトの名無しさん mailto:sage [04/08/13 00:08]
TextChangedだったかのイベントの方が良いと思うのだよ。

495 名前:483 mailto:sage [04/08/13 00:12]
>>494
そうなの?
理由教えて。

496 名前:デフォルトの名無しさん mailto:sage [04/08/13 00:25]
あ、ちょっと勘違いしてたかも…
言いたかったのは、メニューからペーストした場合とか、
要はキー入力以外でも書き換えられる可能性はあるという意味だったんだが…

497 名前:483 mailto:sage [04/08/13 00:43]
>>496
なるほどね。ペーストされちゃダメだわ。

でも言われて TextChanged バージョンも作ってみたけど結構めんどうそうだよ。

Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox2.TextChanged
Dim c As Integer
Dim v As Decimal
c = TextBox2.SelectionStart
If c > 0 Then
If InStr("0123456789", TextBox2.Text.Substring(c - 1, 1)) = 0 Then
TextBox2.Text = TextBox2.Text.Replace(TextBox2.Text.Substring(c - 1, 1), "")
TextBox2.SelectionStart = c - 1
End If
End If
c = TextBox2.Text.Length - TextBox2.SelectionStart
v = Val(TextBox2.Text.Replace(",", ""))
TextBox2.Text = Format(v, "#,##0")
If TextBox2.Text.Length - c > 0 Then TextBox2.SelectionStart = TextBox2.Text.Length - c
End Sub

まだちょっとおかしい。

498 名前:483 mailto:sage [04/08/13 00:57]
もっと簡単になったよ。

Private Sub TextBox3_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox3.TextChanged
Dim c As Integer
Dim a As Integer
Dim v As Decimal
c = TextBox3.Text.Length - TextBox3.SelectionStart
For a = 0 To TextBox3.Text.Length - 1
If InStr("0123456789", TextBox3.Text.Substring(a, 1)) > 0 Then
v = v * 10 + Val(TextBox3.Text.Substring(a, 1))
End If
Next
TextBox3.Text = Format(v, "#,##0")
If TextBox3.Text.Length - c > 0 Then TextBox3.SelectionStart = TextBox3.Text.Length - c
End Sub

こんなもんでいいのかな?

499 名前:デフォルトの名無しさん mailto:sage [04/08/13 00:57]
だからそもそもそんな糞みたいなUI採用するのが間違っとる。

まあそれは置くとしても入力制限するんだからそもそもペーストに反応しちゃまずい。
そして入力制限さえ出来れば、後の処理はParseしてToStringするだけ。
TextBox1.Text = Integer.Parse(TextBox1.Text).ToString("###,###,###,###,###,###")

500 名前:483 mailto:sage [04/08/13 01:19]
>>499
1行で出来るよってこと?

そうだったのか、かっこ悪い漏れ orz
後は任せた。



501 名前:デフォルトの名無しさん [04/08/13 08:42]
>>486
自分もそのクチだけど、けっこう新しい発見があるので損はしないよ。

502 名前:デフォルトの名無しさん [04/08/13 09:14]
偉そうなこと言う奴に限ってxxx
499 < 498

503 名前:デフォルトの名無しさん [04/08/13 17:12]
>>502
まあおまえは何も出来ない無能なわけだが。

504 名前:デフォルトの名無しさん mailto:sage [04/08/13 18:29]
OSの作り方教えてください。

505 名前:デフォルトの名無しさん mailto:sage [04/08/13 20:53]
TabControlなのですが、ふと気付くとタブの順序が入れ替わって
しまっていることがありるのですが、戻す方法は無いでしょうか・・・

506 名前:デフォルトの名無しさん mailto:sage [04/08/13 21:05]
Tabつながりでふと思い出したこと

TABキーを押したときの順番をGUIで変更することってきる?(ACCESSみたいに)
.NET発表の際にその辺が強化されたって話を聞いてたんだけど


507 名前:デフォルトの名無しさん mailto:sage [04/08/13 22:29]
>>502
まぁほっといてやれ。
もともとの質問出した >>473 が好きなほうを選ぶよ。

508 名前:デフォルトの名無しさん mailto:sage [04/08/13 22:45]
>>505
デザイン時? 実行時?

デザイン時なら、TabPageコレクションエディタの [↑] [↓] ボタンで
順番は変えられるよ。

実行時なら、もう少し詳しく現象を報告してちょ。

509 名前:デフォルトの名無しさん mailto:sage [04/08/13 22:46]
>>506
旧VBって、できなかったの?

510 名前:デフォルトの名無しさん mailto:sage [04/08/13 22:50]
>>508 デザイン時なら、TabPageコレクションエディタの [↑] [↓] ボタンで
できました。ありがとうございます。

実行時に勝手に変わるということは無いと思うので、デザイン時だとは思うのですが
そのプロパティはいじってないし、ふと気付くと変わってることがある状態で気持ち
悪いです(しく

VB.NET(2002)



511 名前:506 mailto:sage [04/08/14 03:07]
自己解決

表示のタブオーダーでできました

512 名前:506 mailto:sage [04/08/14 03:12]
>>509
もしかしたら有るのかもしれないけど
一個一個オサルのごとく数値変えてました(w

513 名前:デフォルトの名無しさん [04/08/14 16:15]
VB.net 2003でWindowsコントロールライブラリの勉強をしています。
UserControl上にLabelとButtonを追加したユーザーコントロールに
新たなプロパティーを追加する場合について質問です。

<System.ComponentModel.Browsable(True)> _
Public Property tProp_Button() As Button
Get
Return Me.Button1
End Get
Set(ByVal Value As Button)
Me.Button1 = Value
End Set
End Property
Buttonをデザイン上で変更出来るようにする為に上記のコードを記述すると、
そのユーザーコントロールを貼り付けた別のプロジェクトのデザイン上では、変更した値が表示される(例えば.textに"hoge"とするとボタンに"hoge"と表示される)のですが、
そのプロジェクトを実行させた場合、デザイン上で変更した値が反映されません。

ただ、Buttion1の宣言をpublicにして、コードで変更した値は、実行時には正常に反映されます。
コントロール自体をデザイン上で変更出来る様にするにはどのようにすればよいのでしょうか?



514 名前:デフォルトの名無しさん mailto:sage [04/08/14 16:23]
なにがしたいのかさっぱり分からん。
デザイナ上でコントロール自身を変更するってどういうこと?
っていうかコントロール自身を入れ替えてどうするの?

515 名前:デフォルトの名無しさん [04/08/14 19:42]
>281さん、結果報告キボンヌ。

ぢつはおいらも、別フォームで入力したテキストの内容を、セクション1の
テキストオブジェクトに表示したくて、Googleで調べたらここに辿り着いた
っす。

で、そのテストに>290さんのをやってみました。

ビューワーを指定したFormを開くときに、>290さんのコードを実行している
んですが、ビルドエラーなどは出ないんですけど、Text1は空っぽのままっす。

表示したビューワーをリロードしても表示されませんです。

>281 さん、上手くいったなら、報告をながいます。

516 名前:デフォルトの名無しさん mailto:sage [04/08/15 00:24]
質問なのですが、下のリンク先にある、Visual Basic .NET 2003というものは、Visual Studioを使った時のようなエディタがついているのでしょうか?


ttp://www.microsoft.com/japan/msdn/vbasic/productinfo/default.asp

兄が、仕事で使っているというVB.NETでは、関数の名前を入力した後、ピリオドをうつと各プロパティとか命令が表示されて、かつそれぞれのヘルプまで表示されると聞いたのですが、その機能がほしいのです。

517 名前:デフォルトの名無しさん mailto:sage [04/08/15 00:37]
>>514
それは君が無知で無恥だから。ユーザーコントロールって概念が理解できてないんだろ。
知らないなら黙ってろよ。
何をやりたいかは>>513の文章で理解可能。俺は解決法は知らないけど。

ま、でもデザインモードでの変更がコードに反映されてないだけだろうから
そんなに難しい問題じゃない気がするけど。
.NETではVB6みたいにウィザードがコード書いてくれないのか?

518 名前:デフォルトの名無しさん mailto:sage [04/08/15 00:55]
>>517
うーむ、俺が無知なら正直すまんかったんだが…
見たところユーザコントロールに既に貼り付けてあるボタンのインスタンスを
プロパティで入れ替えようとしてるんだよね?

ってかいてて今やりたいことが多分分かった…
普通その場合は、プロパティを読込専用にするだろ?
入れ替えできるようなプロパティを書いてるから勘違いしてたよ。

519 名前:デフォルトの名無しさん mailto:sage [04/08/15 00:57]
あと、VB.NETで貼り付けたコントロールの実体はプロパティなので、
普通はメンバをPublicにするだけでOK。
まあ、新たに追加してもいいことはいいんだけど…

520 名前:デフォルトの名無しさん mailto:sage [04/08/15 01:00]
って何度もすまん、これじゃデザイナでできないって言ってるのか…
まえに同じような事して単純に出来たような気がするんだけど…未確認。

生成されたコード上でのプロパティの設定順かな…?



521 名前:デフォルトの名無しさん mailto:sage [04/08/15 01:15]
>>516
「VB.NET単体でVS.NETと同じようなテキストエディタが用意されているのか?」
と言う質問ですか?
それなら答えはYesです


522 名前:デフォルトの名無しさん mailto:sage [04/08/15 01:29]
>>517
俺には>>513の意味はぱっと見て分からなかった。
誤解を招く表現がいくつかあるから、意味を取れなくても無知かどうかは分からんのじゃないの?
逆にやりたいことと>>513の書き込みを見て違和感も感じないなら、その方が無知の可能性あり。







[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<296KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef