トップページ⇒tech
988コメント350KB

くだすれVB6.0以前(超初心者向け)

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん2006/12/08(金) 19:36:45
このスレッドはVBについて、
他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
VB使いが優しくコメントを返しますが、
お礼はVBの布教はしなくてよいので、初心者の救済をお願いします。
0893デフォルトの名無しさん2008/02/17(日) 19:43:45
>>891
部活でゲーム作ってるんですが、金がないので…
>>892
ツクール買うくらいならフリーでその分野に特化したのを使います
というか、もうダウンロードしてます
0894デフォルトの名無しさん2008/02/17(日) 19:52:39
今からVB6なんて時間の無駄だ
C#でもやれよ、タダだし
0895デフォルトの名無しさん2008/02/17(日) 22:05:31
金がないを言い訳にするのは、世間を知らなさすぎる。
今や、どこもかしこも、Microsoftすら、
開発ツールを無料で公開している時代。
0896デフォルトの名無しさん2008/02/17(日) 22:33:27
>>894
何世代か前まではCもやっていたようですが…
一つだけ無駄でない事例を挙げるなら、情報の授業が楽になることです

>>895
それはわかっています
自分も一番最初に触れたは言語はVBではありませんでした
しかし、あくまでも部活なのです
時間が無限にあるわけではありません
さらに言えばほぼ全員が掛け持ちしています
この状態で知識の全くない世界へ足を踏み入れるのは自殺行為です
もし貴方の言う「開発ツール」が言語ではなく「ゲーム制作ツール」なら、始めから眼中にないことをお伝えしておきます
ゲームを作るのは結果であり、目的ではありません
0897デフォルトの名無しさん2008/02/17(日) 22:42:58
目的じゃないなら新しい言語に挑戦したらいいじゃんと思うが。
まあ、最初のうちは VB6 でそのうち別の言語を・・・ってんならいいと思うけど。
0898デフォルトの名無しさん2008/02/17(日) 23:30:42
>>896
かなり揚げ足とるけど
> この状態で知識の全くない世界へ足を踏み入れるのは自殺行為
# VB6.0でノベルゲームみたいに文字を一文字ずつ表示させることは出来ますか?
この二つは矛盾してる希ガス
0899デフォルトの名無しさん2008/02/17(日) 23:33:40
VB.netで何の不満があるの?ってのが一致した意見だわな。どうせその程度の知識なら変わらんよ。
0900デフォルトの名無しさん2008/02/18(月) 00:57:20
こんな釣りに付き合うなんておまえら相変わらず優しいのな。
0901デフォルトの名無しさん2008/02/18(月) 09:47:16
超初心者向けってスレタイなんだから ・・・
オレなら
>VB6.0でノベルゲームみたいに文字を一文字ずつ表示させることは出来ますか?
は可能だと思う ノベルゲームっていうのがどんなのか知らんけど

0902デフォルトの名無しさん2008/02/18(月) 13:45:47
>>894
スレタイ嫁w
>>896
その質問じゃ、どう答えれば良いのかわからんのよ
一つ言えるのは、一般的なADVみたいなものならVB6でも十分作れる
でもそのためには、GDIの知識か、DirectXの知識が必須なんだがその準備は出来ているだろうか?
0903デフォルトの名無しさん2008/02/18(月) 18:45:28
たしかここ、本スレでいじめられた奴が逆切れで立てたスレだったな
スレタイに「オレに優しくかまってくれ」な雰囲気がただよってる
0904デフォルトの名無しさん2008/02/28(木) 09:53:33
MicrosoftR Visual BasicR Version 4.0
アップデート キット 2 (97/03/07版) for VB4 Standard Edition
を探しています。
どなたかダウンロード先を教えて下さい。
0905デフォルトの名無しさん2008/02/29(金) 01:56:04
ListViewコントロールのSubItemのForecolorを変えても、書き換えたタイミングで文字色が変わりません。
SendMessageでWM_NCPAINTを送ってみても変わりません。
仕方がないので今はForeColorを変えた後に、SubItem(1) = SubItem(1) と設定しなおせば変わるのですが、これって間違った対処方法ですよね?
どうすればForeColorを変えた瞬間に色が変わるのでしょうか?
0906デフォルトの名無しさん2008/02/29(金) 01:56:32
>仕方がないので今はForeColorを変えた後に、
ここは無視して読んでください・・・
0907デフォルトの名無しさん2008/02/29(金) 11:23:09
refreshとかないの?
0908デフォルトの名無しさん2008/02/29(金) 12:40:10
VB6なんて使ってる奴いるの?っていうやつは趣味でやってる奴だな。
0909デフォルトの名無しさん2008/02/29(金) 23:19:25
仕事でVB6なんてとんでもない貧乏会社か将来の見通しの甘い馬鹿だけだろ?ん?どうすんだこれから。マイクロソフトに見捨てられるぞ?
0910デフォルトの名無しさん2008/03/01(土) 01:40:48
マイクロソフトが見捨てても遺産は残り続けるでFA
0911デフォルトの名無しさん2008/03/01(土) 01:42:13
>>909
工場でぶんまわしてるのに移行して不具合が出たら、損害賠償ものだよ
新規の案件じゃないのに
0912デフォルトの名無しさん2008/03/01(土) 01:45:11
ソースコードが公開されてるなら自分で保守を続けられるから
遺産と呼んでもいいけどさあ
0913デフォルトの名無しさん2008/03/01(土) 02:01:53
>>908-909
おまいら実社会で仕事したこと無いだろ?
0914デフォルトの名無しさん2008/03/01(土) 05:03:45
>>890
Dim str$
str = "hello world(w"
Dim i&
Dim hdc&
hdc = GetDC(0)
For i = 1 To Len(str)
Dim s$
s = Mid$(str, i, 1)
TextOut hdc, (i - 1) * 16, 0, s, LenB(StrConv(s, vbFromUnicode))
MsgBox i & "文字目"
Next i

糞コードだがこんな感じ。普通は自分のウィンドウにフォント設定する。
0915デフォルトの名無しさん2008/03/01(土) 13:20:25
Form#Printでおk
0916デフォルトの名無しさん2008/03/02(日) 01:07:44
open "PRN" for output
open "COM1" for output
が使えないと製造業では使えません。
ラベルプリンタとか、RS232C制御のFA機だらけです。
0917デフォルトの名無しさん2008/03/02(日) 10:28:42
open "PRN:" for output
open "COM1:" for output

いつも使ってるとは思えない。
0918デフォルトの名無しさん2008/03/02(日) 10:55:55
自動倉庫のクレーン制御をVB5でやって動いてますけど・・・もう10年たつなぁ
0919デフォルトの名無しさん2008/03/02(日) 11:43:36
荷物を押して・の位置にもっていく奴だね
けっこうハマったよ
0920デフォルトの名無しさん2008/03/02(日) 22:11:48
それは倉庫番だろって
父さんが言ってたよ
0921デフォルトの名無しさん2008/03/02(日) 22:14:13
フラッピーかと思った
0922デフォルトの名無しさん2008/03/02(日) 23:15:49
おじいちゃん僕は若いのでこの流れがよくわかりません
0923デフォルトの名無しさん2008/03/03(月) 01:11:03
でもそんなの関係ねえ
0924デフォルトの名無しさん2008/03/03(月) 01:14:29
それはオッパッピーだろって
娘が言ってたよ
0925デフォルトの名無しさん2008/03/04(火) 04:14:34
>>921
フラッピー!!
上に飛ばして、よく自爆したなぁ。
0926デフォルトの名無しさん2008/03/04(火) 10:34:57
VB6使ってるのはおっさんばっかりだって事がわかった
0927デフォルトの名無しさん2008/03/04(火) 17:26:48
おまんこしょっぱいぴー
0928無償入手可2008/03/15(土) 13:03:20

Visual Basic Version 5.0 Control Creation Edition SP2 日本語版
http://download.microsoft.com/download/vbcc/SP/05.00.4319/W9XNT4/JA/VB5CCEIN.EXE

Visual Basic 5.0 Control Creation Edition: SP2 ヘルプ ファイル
http://www.microsoft.com/downloads/details.aspx?FamilyID=b4394931-d7ab-4d38-a3f5-511fd3165b7f&DisplayLang=ja
http://download.microsoft.com/download/vbcc/Help/4.71.0121.0/W9XNT4/JA/CCEHELP.EXE

Visual Basic Version 5.0 Control Creation Edition: レジストリ修正モジュール
http://www.microsoft.com/downloads/details.aspx?FamilyID=e91b767c-30d6-407d-b0f3-fd93faebb592&DisplayLang=ja
http://download.microsoft.com/download/vbcc/Patch/1.00/W9XNT4/JA/REGFIX.EXE

Visual Basic 5.0: RecentFiles ツール
http://www.microsoft.com/downloads/details.aspx?familyid=C95613D6-D8D2-4A85-9139-3992B601D08A&displaylang=ja
http://download.microsoft.com/download/vb50ent/Patch/1.00/W9XNT4/JA/recents.exe
0929デフォルトの名無しさん2008/03/15(土) 14:09:05
コピペ君って馬鹿だな、まで読んだ。
0930↑コピペ君って馬鹿だな、まで読んだ。2008/03/15(土) 16:06:31
馬鹿ほど、人を馬鹿と呼びたいもんさ
0931デフォルトの名無しさん2008/03/15(土) 17:10:37
かわいそうだから全部読んだ
0932デフォルトの名無しさん2008/03/15(土) 17:37:06
いまさらそんなのいらねー 誰が欲しがるんだろ?
0933デフォルトの名無しさん2008/03/15(土) 19:26:02
FAや組み込み系なら今でも使ってるよ。↑おまえは自分の世界しか知らない井の中の蛙
0934デフォルトの名無しさん2008/03/15(土) 19:52:31
>>916です。
VB2008購入しました。

open "PRN" for output
print #.....

を実行(代用?)する方法を分かる方教えてください。
MSのHP(期待してないが)、書籍類、その他ぐぐる等行いましたが、直接プリンタポートに
出力する方法が分かりません。
とりあえずこれが出来ればVB2008に移行しようと思ってます。
0935デフォルトの名無しさん2008/03/15(土) 20:12:27
わお、井の中でよかった ほっ
0936デフォルトの名無しさん2008/03/15(土) 20:44:15
>>934
CreateFile("PRN:"
などでぐぐれば出てくることはでてきたが?
0937デフォルトの名無しさん2008/03/16(日) 11:12:22
>>934
COMポートはシリアルポートのコンポーネントがあるからいいとして、
プリンタポートは直接弄れるのかなあ。
VB.NETの問題じゃなくて、OSの制約じゃないかと。
かといって今さら古いOSに拘っててもダメだと思う。
0938デフォルトの名無しさん2008/03/16(日) 11:46:57
そろそろスレチなんじゃね?
0939デフォルトの名無しさん2008/03/16(日) 11:58:49
弄れなかったらシリアルパラレル変換機を通せばええねん
0940デフォルトの名無しさん2008/03/16(日) 18:22:27
VB2008にCreateFile()は無い様なんですが、もう少し調べてみます。

スレチ申し訳ありませんでした。
Visual Studio 2008 のスレに移動します。
0941デフォルトの名無しさん2008/03/19(水) 15:57:51
C++とかC#ばっかりやってた者なのですが、VBのコーディングについて質問があります。
Functionの中に複数の返り値がセットされているケースについてです。

以下は無意味で極端な例として書いたものなのですが、一応動作します。
しかし一般的にナンセンスでしょうか?
それとも許される書き方でしょうか?

Function  FUNC_1() as integer
  FUNC_1 = 1
if flg = true then Exit Function

  FUNC_1 = 2
End Function
0942デフォルトの名無しさん2008/03/19(水) 16:01:32
段がズレてしまったので書き直します。

Function  FUNC_1() as integer
  FUNC_1 = 1
  if flg = true then Exit Function

  FUNC_1 = 2
End Function

ついでに、VBには条件演算子がないようなのですが、
何か代替になる簡潔な書き方はないでしょうか?
例
↓
string s = flag ? "OK" : "NG";
0943デフォルトの名無しさん2008/03/19(水) 16:07:57
IIfというのがあるにはあるけどあんまりお勧めしない
0944デフォルトの名無しさん2008/03/19(水) 16:26:17
>>941
俺は別に気にせずただの変数の1つとして使っているが、
個人的なプログラムでしかVBを使ったことがないので、
他人がどう思っているなのかは知らない。
0945デフォルトの名無しさん2008/03/19(水) 18:13:24
FUNC_1 = FUNC_1 + 1

こんなことも
0946デフォルトの名無しさん2008/03/19(水) 19:48:58
iif使うときはショートサーキットじゃないことに注意な

2005でもそうだったと思うが2008では直ってるんかね
0947デフォルトの名無しさん2008/03/19(水) 20:20:09
>>942
Function FUNC_1(flg As Boolean) As Integer

  If flg Then
   FUNC_1 = 1
Else
   FUNC_1 = 2
End If

End Function
0948デフォルトの名無しさん2008/03/19(水) 20:21:42
>>942
ずれちゃった・・・

Function FUNC_1(flg As Boolean) As Integer

  If flg Then
    FUNC_1 = 1
  Else
    FUNC_1 = 2
  End If

End Function

0949デフォルトの名無しさん2008/03/20(木) 01:02:10
わおーっ
0950デフォルトの名無しさん2008/03/20(木) 01:07:26
FUNC_1 = (flg = True) + 2
0951デフォルトの名無しさん2008/03/20(木) 06:00:43
俺は、条件が複雑になる場合に、こういうスタイルを使ってる。

If 条件1 And 条件2 And ...... Then という仕様だったら

Function FUNC_1() As Boolean
 FUNC_1 = False '省略可能だがあえて書く
 If Not 条件1 Then Exit Function
 If Not 条件2 Then Exit Function
 ...
FUNC_1 = True
End Function

If FUNC_1() Then って書くと条件追加や削除などメンテしやすい

If 条件1 Or 条件2 Or ...... Then なら

Function FUNC_1() As Boolean
 FUNC_1 = True
 If 条件1 Then Exit Function
 If 条件2 Then Exit Function
 ...
FUNC_1 = False
End Function
0952デフォルトの名無しさん2008/03/20(木) 11:28:16
こういうの見てるとつくづくVBって糞言語だなという感を深めるな。。
0953デフォルトの名無しさん2008/03/20(木) 12:59:03
多少のかっこ悪さはあるが,特に不思議というわけでもない
0954デフォルトの名無しさん2008/03/20(木) 13:07:31
>>952
こんな糞言語でも ちょちょいって作ってあげると感謝されるから笑っちゃうよね
目的を達成するのに最も合理的な道具を選べばいい
そんだけやん
0955デフォルトの名無しさん2008/03/20(木) 13:49:44
If Not 条件1 Then
ElseIf Not 条件2 Then
・・・
Else
・・・
End If

Select Case True
Case 条件1,条件2,・・・
 ・・・
End Select
0956デフォルトの名無しさん2008/03/20(木) 13:52:48
If 条件1 Then If 条件2 Then If ...... Then
0957デフォルトの名無しさん2008/03/21(金) 11:14:31
>>946
直ってるって・・・
別にそれが間違っているわけじゃないしな
一般的な言語から外れていてもそれがVBの言語仕様なのだから
ちなみに、論理演算は.netからandalsoとorelseが追加されてSCできるようになったよ
0958デフォルトの名無しさん2008/03/21(金) 21:06:16
>>957
あー、まあそうだな。言い方が間違ってた。

で、2008ではどうなってんだろう
0959デフォルトの名無しさん2008/03/21(金) 21:26:11
Collectionって便利だけど、ソートできんのな。ふざけんなよ
0960デフォルトの名無しさん2008/03/21(金) 22:34:01
どうも バグっているようだ \(^o^)/
0961デフォルトの名無しさん2008/03/22(土) 16:35:52
どうも.netで直ってるようだ
0962デフォルトの名無しさん2008/03/23(日) 16:06:12
つ System.Collections.ArrayList
0963デフォルトの名無しさん2008/03/24(月) 13:16:52
>>961-962
スレタイ嫁
0964デフォルトの名無しさん2008/03/24(月) 15:20:30
?
0965デフォルトの名無しさん2008/03/24(月) 15:42:59
>>963はvb.netと勘違いしてんだろ ほっとけ
0966デフォルトの名無しさん2008/03/27(木) 14:53:47
>>962
デフォルトのCompare関数のソートはできましたが、
VB6からCompare関数を作ってソート呼べますか?
0967デフォルトの名無しさん2008/03/27(木) 16:02:07
.net?
0968デフォルトの名無しさん2008/03/27(木) 16:59:55
Set DataList = CreateObject("System.Collections.ArrayList")
DataList.Add "B"
DataList.Add "C"
DataList.Add "A"
DataList.Sort()
For Each strItem in DataList
MsgBox strItem
Next
09699412008/03/27(木) 20:38:53
会社のISPがいつまでたってもアク禁から開放されないので自宅から。

>>943-956
サンクスコ
0970デフォルトの名無しさん2008/03/27(木) 20:39:44
あ、ageちゃった…
スマン
0971デフォルトの名無しさん2008/03/28(金) 04:18:09
VB6でかいたソフトが終了してもタスクに残ります。
EXCELをエクスポートする機能がありOLEを使用しています。
どのようなことが考えられるでしょう?
0972デフォルトの名無しさん2008/03/28(金) 07:42:06
バグ
0973デフォルトの名無しさん2008/03/28(金) 07:44:54
自分で宣言したフォーム変数でNewして使用せず、フォームのオブジェクト名と同じ名前のフォーム変数を使っている
フォームAとフォームBがお互いの参照を握ってガチムチになっている
0974デフォルトの名無しさん2008/03/28(金) 09:05:03
>>973
つまりコードでかくとどのようになるのでしょうか?すいません。
0975デフォルトの名無しさん2008/03/28(金) 14:19:31
>>971
調べればわんさか出てくるぞ
http://www.google.co.jp/search?complete=1&;hl=ja&q=vb6+Excel+%E7%B5%82%E4%BA%86%E3%81%97%E3%81%AA%E3%81%84&lr=
0976デフォルトの名無しさん2008/03/28(金) 19:50:31
>971もテンプレ化決定だお
0977デフォルトの名無しさん2008/03/28(金) 23:17:22
http://www.google.com/search?hl=ja&safe=off&rlz=1B3GGGL_ja___JP264&sa=X&oi=spell&resnum=0&ct=result&cd=1&q=%E3%82%AC%E3%83%81%E3%83%A0%E3%83%81&spell=1
0978デフォルトの名無しさん2008/03/30(日) 09:04:24
次スレ勃った・・・

くだすれVB6.0以前(超初心者向け)
http://pc11.2ch.net/test/read.cgi/tech/1206835319/
0979デフォルトの名無しさん2008/03/30(日) 11:31:14
VB6スレなんて何個もいらねえだろ
0980デフォルトの名無しさん2008/03/30(日) 12:34:47
支那人も裸足で逃げるほどの初心者隔離スレは、
ひとつくらいあったほうがいいぬ。
0981デフォルトの名無しさん2008/03/30(日) 19:23:49
うめ
0982デフォルトの名無しさん2008/03/31(月) 01:06:19
caseについての質問です
comboboxが100項目近くあり、そのひとつひとつのcomboboxで選ばれたものに対して
1番目ならlabel1に0と表示、2場目ならlabel1に1と表示・・・とやりたいのですが

Select Case Combo1.ListIndex
Case 0
label1.Caption = 0
Case 1
label1.Caption = 1
Case 2
labe1.Caption = 2
とずっと続けると異常に長くなってしまうので、何か別の書き方はないでしょうか?
0983デフォルトの名無しさん2008/03/31(月) 01:43:32
label1.Caption = Combo1.ListIndex - 1
0984デフォルトの名無しさん2008/03/31(月) 01:44:34
-1はいらないのか
0985デフォルトの名無しさん2008/03/31(月) 02:30:03
そういうやり方があったのか
ありがとうございます!!
0986デフォルトの名無しさん2008/04/01(火) 01:30:41
>>982
こういうコードが業務用ソフトに入ってるかもしれない思うと・・・
0987デフォルトの名無しさん2008/04/01(火) 09:31:13
>>986
世の中こんなんばっかだよ?
0988デフォルトの名無しさん2008/04/01(火) 13:41:12
慣れてしまえばどうって事は無い
レス数が950を超えています。1000を超えると書き込みができなくなります。