(´∀` )エヘヘ VB初心者質問スレ Part19

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
  Part11 http://pc.2ch.net/tech/kako/1024/10243/1024380249.html
  Part12 http://pc3.2ch.net/test/read.cgi/tech/1026642565/
  Part13 http://pc3.2ch.net/test/read.cgi/tech/1029241786/
  Part14 http://pc3.2ch.net/test/read.cgi/tech/1030947162/
  Part15 http://pc3.2ch.net/test/read.cgi/tech/1032706491/
  Part16 http://pc3.2ch.net/test/read.cgi/tech/1034302532/
  Part17 http://pc3.2ch.net/test/read.cgi/tech/1036154952/
  Part18 http://pc3.2ch.net/test/read.cgi/tech/1038103769/

VB.net関連スレ
【老若】VB.net質問スレ【男女】
http://pc3.2ch.net/test/read.cgi/tech/1025848458/



心得
壱.質問する前に過去ログにも目を通してみる。
弐.質問する前に MSDN などで調べてみる。
参.VBScript もこのスレでOK。
4.インストーラーなどの質問もOK。
五.下ネタもたまにならOK
過去ログはこちら

第1刷 http://piza.2ch.net/tech/kako/975/975576060.html
第2刷 http://piza.2ch.net/tech/kako/990/990082077.html
第3刷 http://piza2.2ch.net/tech/kako/993/993933402.html
第4刷 http://pc.2ch.net/tech/kako/998/998403891.html
第5刷 http://pc.2ch.net/tech/kako/1001/10019/1001998049.html
第6刷 http://pc.2ch.net/tech/kako/1004/10041/1004183881.html
第7刷 http://pc.2ch.net/tech/kako/1006/10069/1006910650.html
第8刷 http://pc.2ch.net/tech/kako/1008/10089/1008908052.html
第9刷 http://pc.2ch.net/tech/kako/1010/10106/1010673275.html
第A刷 http://pc.2ch.net/tech/kako/1012/10125/1012536901.html
第11刷 http://pc.2ch.net/tech/kako/1014/10144/1014478527.html
第12刷 http://pc.2ch.net/tech/kako/1016/10166/1016631412.html
第13刷 http://pc.2ch.net/tech/kako/1018/10187/1018752281.html
第14刷 http://pc.2ch.net/tech/kako/1021/10210/1021034822.html
第15刷 http://pc.2ch.net/tech/kako/1023/10230/1023005362.html
第16刷 http://pc.2ch.net/tech/kako/1024/10247/1024791990.html
第17刷 http://pc3.2ch.net/test/read.cgi/tech/1026281505/
第18刷 http://pc3.2ch.net/test/read.cgi/tech/1028011741/
第19刷 http://pc3.2ch.net/test/read.cgi/tech/1029377510/
第20刷 http://pc3.2ch.net/test/read.cgi/tech/1030606700/
第21刷 http://pc3.2ch.net/test/read.cgi/tech/1031809334/
第22刷 http://pc3.2ch.net/test/read.cgi/tech/1033050979/
第23刷 http://pc3.2ch.net/test/read.cgi/tech/1034088067/
第24刷 http://pc3.2ch.net/test/read.cgi/tech/1035354069/
第25刷 http://pc3.2ch.net/test/read.cgi/tech/1036597434/
第26刷 http://pc3.2ch.net/test/read.cgi/tech/1037987061/
3デフォルトの名無しさん:02/12/14 19:02
VB6.0でファイルのIncludeってできませんでしたっけ?

clsファイルが一杯あるのを一気にプロジェクトに入れたいのだが。
4デフォルトの名無しさん:02/12/14 19:03
>>2
誤爆?
新スレおめでとうございます。
>>1 お疲れ様でつ

で、質問。
例えば、Form1を親にしてForm2を呼ぶときには
Form2.Show ,Form1
ってやれば、Form2がForm1より後ろに行くことは無いように表示できますよね。

それと同じ事を、自分のアプリ内のフォームではなく
外部のウィンドウに対してやりたいのです。
たとえばForm1は、メモ帳のウィンドウより後ろに行くことは無いように・・・
一般的な書き方をすれば、自アプリのウィンドウは外部のとあるウィンドウより後ろに行くことは無いように
って感じです。
調べてたらSetParentとか出てきたので試したんですが
これはぜんぜん違いました(w

どうやれば上記のようなことが出来るんでしょうか。
>>3
おまえ、includeに何を書いているんだよ?
例外もあるが通常は実装を書くとこじゃねーぞ
73:02/12/14 19:10
>6
だってヘッダファイルって無いんだもん。
VBSでしかできないのかなあ。
>>7
VBはヘッダファイルいらんだろ。
1000取り逃した…
101000:02/12/14 19:15
うへぇかっこわる。
>999タイミングわりーよ
Del厨ウザイ
12デフォルトの名無しさん:02/12/14 19:24
出来上がるEXEを少しでも小さくする方法ってない?
UPXとかはなしで。
13デフォルトの名無しさん:02/12/14 19:25
というか、このAA何よ。
前の方がいい。
>12
最適化オプションにそんなの無かったっけ?
もしくはVCで書き直す。
>>3
沢山のファイルをプロジェクトに入れたいだけなら、
D&Dでつっこみゃいいだけでは?
>>12
サイズ優先で最適化をする。無駄を省く。
コメントとか空行抜いたらexe小さくなるの?
横レスだけど。
>>17
た め し て み て は ?
>>14 >>16
ありがd。更に小さく出来ないかと思って。
Link.exeをリネームして新しく /MERGE:.data=.text /MERGE:.idata=.text /SECTION:.text,erw /ALIGN:4096
って付加するLink.exeを作ったら少し小さくなった。
2012:02/12/14 19:31
>>19は12です。
>>15
ああ、そっかあ依存関係があって必ずプロジェクトに含むclsやbasを
別フォルダにしちゃっとけば、D&Dが楽になるか。ありがとー。
22デフォルトの名無しさん:02/12/14 19:36
VBにはC/C++でおなじみの「グローバル変数」ってないの?
あるよ。
>>22
.bas で定義すりゃ、どっからでも見ることはできるが。
2522:02/12/14 19:40
>>24
処理速度とか遅くなる?
>>25
テストコードつくって、くらべりゃいいのに。
何でも聞くのはどうかなあ
2722:02/12/14 19:42
>>26
ごもっともで。
publicとglobalは、どう違うのですか?
2922:02/12/14 19:50
>>26
結果は・・・遅くなったw
ありがとさん。
>>28
質問の意味がわかりません。
字が違うー って小学生か俺は。
32デフォルトの名無しさん:02/12/14 20:11
関数電卓を作っています。
ボタンで数字などを入力していき、片方のTextboxで入力中の数字を、
もう片方のTextboxで式を表示させようと思っていますのですが、そこで手詰まりです。

数式を項ごとに配列に格納してゆき、和差積商や()などの規則に従って順番に計算する・・・
という感じで作っていたところ、配列の中身を一気に表示させる事ができず、困っています。
何かいい方法はないものでしょうか。お願いします。
>>32
>配列の中身を一気に表示させる事ができず
どんな状態になっているのでしょうか
どんな嬢がいたお望みでしょうか
>33
また酔ってる人ですか?(w
3532:02/12/14 20:21
>>33
表示させる事ができない・・・というより表示させる方法がわからないという訳です。

表示・・・ってのは配列の要素をすべてTextboxで表示させると言う意味です。
要素一つ一つなら簡単というか当たり前にできますけど、要素全部を一気に表示させるには・・・。
そこで困っています。よろしくお願いします。
>>35
Forで回して1個ずつ文字列変数に格納するとか、
文字列配列だったなら txtHoge = Join(arrayHoge," ") ってやるとか、
なんか決まりがあるなら1個ずつ配列から取り出して文字とか記号を
つけながら変数に格納するとか、

そんな感じで。地道に。
Dim a(5) As Byte
a(0) = Asc("a")
a(1) = Asc("b")
a(2) = Asc("c")
a(3) = Asc("d")
a(4) = Asc("e")
a(5) = Asc("f")

MsgBox StrConv(a(), 64)
>>35
どんな表示方法にすればいいか、わからない、ということかなあ
たとえば、
1 + 2 * A(10) / 4
とかを表示して、A(10)のところにマウスを持っていくと内容がずらっと出るとか
コンボボックスにしとくとか
>>37 こら!
64 = vbUnicode
4035:02/12/14 20:39
>>36
その手があったか!
ありがとうございます。

>>37
ほぉ・・・

>>35
何度もわかりづらい文章ですみません。
そういうのではないです。。。

普通の電卓と違って関数電卓って、計算中の式が表示されますよね?
で、作成中のプログラムでは計算式の各項を配列に入れているんで、
式を表示させるために配列の中身を全部Textboxに表示させる必要がある訳です。

わかりました?
4135:02/12/14 20:40
>>39
そうなのですか・・・
4237:02/12/14 20:42
>>39
スマソ、つい癖で
43デフォルトの名無しさん:02/12/14 21:24
テキストファイルがいくつかあり、両方、内容は似たようなもんながら、所々違うのですが、
例)
■1.txt
  あああ
  いいい
  ううう
  おおお
■2.txt
  あああ
  ううう
  えええ
  おおお

これを
 ・両方にあるもの
 ・どちらかにあるもの
を全て含めたテキストファイルを新たに作りたいです。

例)
■合体.txt
  あああ
  いいい
  ううう
  えええ
  おおお

どうするのがベターでしょうか。
いったん一つを行ごとに配列に格納しておくってのしか思いつきません。
おながいします。
>>43
ADOで接続してSQLで処理した方がよさげ。
>>43
たとえば、1.txtに
あああ
いいい
あああ
ううう
となっていたとき、どんな重複処理するんですか?
4643:02/12/14 21:30
下から2行目の補足ですが、
これだと、格納した配列1個目と、比べる方のテキストファイルの全行とを比べ、
次に配列2個目、3個目と、次々に全行と比べることになってしまいます。
50000行くらいあるのですが。。。
4743:02/12/14 21:32
あ、書くの遅い隙にレスが。。。
>>45
Where句にまたSelectとか書くヤシですか?
SQL少ししか分からないんすけど。。。
>>46
一つのテキストファイル内では絶対カブってません。
>>46
出力 合体.txt の順番が、1と2との順番を無視していいのであれば
1.txt を読み込んでソートして、2を一行づつ読み込んでサーチして、
見つからなかったら追加。
2を読み終えた時点で重複等は判断おわってる・・・はず
ソートすれば二分探査でもすりゃ、検索の時間は圧倒的に短縮されるだろうし。
>>48
アルゴリズムを考えることが目的(学校の課題とか)ならともかく、
実務的には>>44が正解でしょ?
>>43
要は、2つのテキストファイルをあわせて uniq すりゃ良いんだろ ?
重複チェック用の配列を用意して、入力行が既に出力した行と重複していなけりゃ出力するようにすれば良いだけ。
あとは、重複チェックのやり方の工夫だけだよ。
ハッシュとかでググって見るといいかと。
>>49
やりたいことによるけど、これだけのために ADO が (* 常に *) 正解とは思えない。
素人ばっか。COBOLerより劣るんじゃねーの(藁
5343:02/12/14 21:53
みなさんありがとうです。
>>48
なるほど、2ファイルなら配列も必要ない訳ですか。
>>49
それ何SQLっていうんですか?
(Accessでは何とかクエリって言うのかな?)
名前が判らないので検索の仕方がわかりません。。。
>>50
ググってみます。
5449ですが・・・:02/12/14 21:54
>>51
Access の経験が長いもんで、DBで処理できることを自前でゴリゴリ書くのは、
「車輪の再発明」に思えてしまうのよ w
(固定観念にとらわれてるのかもね)
555:02/12/14 21:55
あの〜
うjまいこと無視されてるんですけど
誰か >>5 に答えてくれませんかね・・・
>>5 >>55
SetWindowPos
5752:02/12/14 22:06
速度もメモリ使用量も出力順もなんも考えないけど今作ったやつだ。
車輪の最発明ってもんか? ADOのコードと比べてどっちが速く作れるかね。
Dim f As New FileSystemObject
Dim ts As TextStream
Dim str As Variant
Dim d As New Dictionary
Set ts = f.OpenTextFile("c:\text1.txt")
For Each str In Split(ts.ReadAll, vbCrLf)
d.Add str, True
Debug.Print str
Next str
ts.Close
Set ts = f.OpenTextFile("c:\text2.txt")
For Each str In Split(ts.ReadAll, vbCrLf)
If Not d.Exists(str) Then
Debug.Print str
End If
Next str
ts.Close
585:02/12/14 22:10
>>56
えーと、
確かにSetWindowPosで最前面に表示とかは出来るんですけど・・・
オーナーフォームを指定したような動作をさせるのもこれで出来るのでしょうか。
出来るのだとしたら、第二引数には何を指定してやればよいのでしょうか。
>>58
ゴメン、わかんない。
次の人、どうぞ w
>>58
その機能が実現できているソフトがあれば、教えてください。
>>57
どうもすみません。
DictionaryやらFileSystemObjectやらTextStreamやら
知りませんでした。勉強になります。

精進しよう。。。
625:02/12/14 22:57
>>59-60
う〜ん・・・
自分でもそれなりに調べて匙投げた上で質問してますからねぇ。
やっぱりそういう事は出来ないということなんでしょうか。
自アプリ内でのウィンドウ同士でなら出来るので
外部ウィンドウとでも出来ると思ったのですが。
何か他の方法でも考えてみたほうが良さそうですね。
該当ウインドウのハンドルでも取得して、あんなことやこんなことを必死でやってみたら?
タブストリップでタブ上をマウスで動かしてるときにマウスがあるタブのインデックスを知る方法がわかりません。
ふーん。
解決しているようだけど、暇があったので作ってみた。
こんな事が出来るとはしらなんだ。
VBの環境が今手持ちに無いのでVBSで。

Set oFS = WScript.CreateObject("Scripting.FileSystemObject")
Set window = WScript.CreateoBject("InternetExplorer.Application")
Set Conn = WScript.CreateoBject("ADODB.Connection")
Set rec = WScript.CreateoBject("ADODB.Recordset")
sDir = oFS.GetParentFolderName(WScript.ScriptFullName)
sOutput = sDir & "\text.txt"
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sDir & ";Extended Properties='text;HDR=NO;FMT=Delimited'"
rec.Open "SELECT DISTINCT * FROM test1.txt UNION SELECT * FROM test2.txt", conn
If oFS.FileExists(sOutput)Then oFS.DeleteFile sOutput
oFS.OpenTextFile(sOutput, 2, True).Write Replace(rec.GetString( , , vbNewLine), vbTab, ",")
'rec.save sOutput ,1
window.Navigate2 sOutput
window.Visible = True
>>28
意味は一緒。旧バージョンとの互換性のためだけにGlobalは残っている。
6867:02/12/15 00:34
ヒントだけでもください・・・
6964:02/12/15 00:37
間違えた・・・・鬱
お願いします
>>64
TabWidthStyleプロパティがtabFixedなら
MouseMoveから計算で求めらると思う。

根本的にTabStripコントロールは
あんたの糞インターフェースに付き合うような作りになってない。
(楽したいならMSの糞インターフェースに従え)
っていうかマウス地点のタブ番号を何かで使う必要性が理解できん。
それはTabStripじゃないといけないのか?
71デフォルトの名無しさん:02/12/15 07:28
エラトステネスのふるいで1000万以内の素数は計算して
列挙してくれます。ところが1億にするとメモリ不足(エラー7)となって
計算してくれません。
私は1000万や一億と言う数を定数として宣言しています(Privateプロシージャ内で)。
これをStaticにしてみたり、モジュールで宣言してみても同じエラーが出ました。
良い対処法を教えてくださいまし。
>>71
静的配列(Staticキーワードとは関係なし)使ってるんだったら、
動的配列使えばいいんでないかい。
735:02/12/15 09:42
ちょっと別なことで質問が出来てしまいました。

前に質問したことが出来なさそうだったので
別の方法でやりたいことを実現しようとしているのですが
その際に、自アプリ内のものではないウィンドウを
タスクバーに表示しないようにする、という事がやりたいです。
ちょうど、ShowInTaskBarプロパティをFalseにしたような感じに。
何かウィンドウスタイルを変えてやればいいんでしょうけど・・・。
どうやりゃぁいいんでしょうか。よろしくお願いします。
>>73
ITaskBarListタイプライブラリを取ってきて(ぐぐれ)
プロジェクトの参照設定にしてやって

Dim oTaskbar as TaskbarList
Set oTaskbar = New TaskbarList
oTaskbar.HrInit
oTaskbar.DeleteTab タスクバーから消したいHwnd
タイトルバーがなくて、位置移動するときには
フォームをドラグすればできるって、いう感じのはどうやって出来ますか?
>>76
出来ました。
ありがとう!
78デフォルトの名無しさん:02/12/15 13:45
「引数」って、「ひきすう」と読むんですか?
>>78
いんすうでないのは確かです。
>>78
そうですよ。
「いんすう」と読むと因数とかぶるので「ひきすう」です。
かっこ悪いけどそうなんです。
81初心者:02/12/15 14:01
前スレ(http://pc3.2ch.net/test/read.cgi/tech/1038103769/l50
の954です。
GUI的に間違ってますた(´Д`;)
ラジオボタンでいきます。
>>952=>>953 レスサンクスです!
>>81
>>962=>>963の間違いだろ。
んで>>963は俺だから「=」も間違い。
函数 → 関数
>>79
>>78
わぉ、うちの社長間違ってた(;´Д`)ヤッパシナー
「いんすう」という呼び方もあながち間違いとは言えないらしい。
86デフォルトの名無しさん:02/12/15 15:11
すみません。2バイト系文字の漢字、英字、カタカナ、ひらがなを識別したいのですが
asc()関数を使おうとするととんでもない数字が返されてしまいます。
効率的に2バイト系文字を識別する方法ってないのでしょうか?
>>86
とんでもない数字が出たら2バイト、なんてね
88デフォルトの名無しさん:02/12/15 15:46
開発環境はVB6.0ラーニングエディションですが、
VBにはC++にある「ポインタ」って概念がないのでしょうか?
VBの或る本を一通り読んでみたけど書かれていないので。
>>88
ええ、糞言語ですから。
>>89
JavaとC#にもポインタはありません。今やポインタがあるほうが糞言語です。
>>90
JavaはともかくC#にはポインタあるぞunsafe
>>88
広い意味でのポインタなら参照という形で存在します。
狭い意味でのポインタ(メモリアドレス)ならAddressOf VarPtr StrPtr ObjPtrで
取得できます。後半三つは隠し関数扱いです。
これらで取得したポインタ(メモリアドレス)を利用するにはAPIを使用することになります。
9388:02/12/15 15:58
>>92
本当に有難うございます!!!
感激っす!
94デフォルトの名無しさん:02/12/15 16:24
まったくの初心者の人は
まず何をつくったらいいんですか?
みんなは最初何からつくった?
9588:02/12/15 16:24
ガーン・・・。
APIビューアがない・・・。
ラーニングエディションには付いてないのか・・・。
ラーニングエディションを買う俺って馬鹿?
>>95
API名でぐぐれ。
9796:02/12/15 16:27
Declareとかをキーワードに追加すると良い。
98玄人原人:02/12/15 16:43
処理を一定時間停止させたいのですが、どうすればいいのでしょうか?
BVでwait関数のようなことをさせたいのですが、どうすればいいのですか。
分からないので、以下のようなソースでたちまち、ごまかしてるんですが、
これだと、cpuに負荷がかかってしまいます。

'120秒間waitする
PauseTime = 120 ' 中断時間を設定します。
Start = Timer ' 中断の開始時刻を設定します。
Do While Timer < Start + PauseTime
DoEvents
Loop
99玄人原人:02/12/15 16:43
処理を一定時間停止させたいのですが、どうすればいいのでしょうか?
BVでwait関数のようなことをさせたいのですが、どうすればいいのですか。
分からないので、以下のようなソースでたちまち、ごまかしてるんですが、
これだと、cpuに負荷がかかってしまいます。

'120秒間waitする
PauseTime = 120 ' 中断時間を設定します。
Start = Timer ' 中断の開始時刻を設定します。
Do While Timer < Start + PauseTime
DoEvents
Loop
>>98
BVBV BV BV BV BV BV BV BV BV BV BV BV BV BV BV BV BV BV BV BV
>>99
sleep からループなどなど。
>>99
たちまち誤魔化すって何よ?
>>99
やっぱSleepを使う。APIね。
それかTimeGetTimeで時間を計って・・・でもOK
104玄人原人:02/12/15 16:54
>>101

sleepってVBから、どうやって、使うの?
>>104
>>103を参照。APIです。

>>102にも答えてくれると嬉しい
106デフォルトの名無しさん:02/12/15 17:03
>>105

thx


>>ごまかす

やり方が、わかんないから、ループ文でごまかしたっていう意味です。
>>106
いや、「たちまち〜ている」がわからん。「忽ち」=「すぐに」だし。

スレ違いだからもういいけどね。
108デフォルトの名無しさん:02/12/15 17:56
VBにStrConv関数がありますが、これって第二引数で変換するタイプの総和を
指定できますよね。
これは内部でどのように解析してるのでしょうか。
>>108
二進数に変換して考えろ。そしてビット演算を使え。
>>108
こんな参考リンクはいかが?
http://www5.ocn.ne.jp/~minute/article/a8.html
111108:02/12/15 18:20
>>109-110
ありがとうございました。調べてみます。
1125:02/12/15 23:28
やりたいことが具体化してきました。

A、B、Cとウィンドウがあるんですが
Aは常に最前面表示のウィンドウで
B、Cは普通のウィンドウです。
で、今Cにフォーカスがあります。
で、AをクリックしてAにフォーカスを移します。
その時、Aは最前面表示なので当然一番手前にありますが
次にBを持って来たいのです。
A → C(フォーカス) → B の状態から
Aにフォーカスを移すことで
A(フォーカス) → B → C
の順にZ軸の並びを変えたいということです。

Bを「最前面表示には勝てないけど、他のウィンドウの中では一番前」
にするにはどうすればいいんでしょうか。
1135:02/12/15 23:33
ageときます
114デフォルトの名無しさん:02/12/15 23:44
oo4oの使い方でよい本ないでしょうか?
初心者向けだと、簡単すぎてのってないし
上級者向けだと、難しいし。

ちなみにC、PL/SQLは経験ありますけど
VBははじめてです。
Bを一瞬最前面にするとか・・・見苦しいけど
>>112
BをSetWindowPosかなにかで HWND_TOP にしてやればいいんじゃないかな?
ただ、微妙にうまくいかないことがあったような気がする…。OS依存か何かが
あった気が。フォアグラウンドにならないだけだったかな?
>>116
>フォアグラウンドにならないだけだったかな

フォアグラウンドに持っていくAPIでフォアグラウンドに来ないってダメじゃん。
>>112
SetWindowPos Bのhwnd, HWND_TOP, 0, 0, 0, 0, SWP_NOSIZE Or SWP_NOMOVE Or SWP_NOACTIVATE
でできると思うが。

ShowWindow でもできるかも。
1195:02/12/16 00:24
>>116 >>118
実は、一番最初にその方法試したのですが・・・・。
116さんの言うとおり、何故か上手くいかないのです。
エラーコードが返ってきている訳ではないし、hwndの指定も確実ですし
定数の定義もOKで、コードは118のと全く同じ(最後の引数の設定もあっています)
ですが、駄目です。前に来てくれません。
これで前に来てくれれば、
Aは最前面なので一番前、Bはそのほかの中では一番前ってなるので完璧なんですけどね。

う〜ん、この方法だとやはり何かまずいのかな?
他の方法とか試さないと無理っぽいです。
1205:02/12/16 00:29
あ、 >>115の方法では
確かに出来ました。Bがちゃんと二番目に来ます。
ですが、AとBの間で最前面がチラチラっと変わって
何かいかにも変な動作してますよって感じに見えてしまいます。
自分が使うだけの用途ならこれで十分なんですが
そういうわけじゃないので、こういう非スマートなのは頂けないのです・・・。
>>117
Windows98か2000あたりで、OSの仕様変更があったみたいなのだな。
SetForegroundWindowしても、タスクバーで点滅するだけでフォーカスが
来なくなった。
SetWindowPosが上手く動かないのも、この仕様変更の影響じゃないかと
思ってるんだが…。
> SetForegroundWindowしても、タスクバーで点滅するだけでフォーカスが
> 来なくなった。

呼び出し元スレッドがフォーカスを持ってない時だけだろ
>>120
SetWindowPos hWnd, Me.hWnd, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE Or SWP_NOACTIVATE
SetWindowPos hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE Or SWP_NOACTIVATE

これでできると思うけどどうかな?

>>122
あらホントだ。古い仕様だとフォーカス来たのにね…。
124デフォルトの名無しさん:02/12/16 10:17
質問させてください。
AOD+Oracle8i+VB6.0SP5で現在開発しております。
開発環境下では走るのですが、EXEにするとオラクルのオープンに失敗してしまいます。
エラーメッセージは

[Oracle][ODBC][Ora]ORA-06413:接続がオープンしていません。


と言うメッセージが出てしまいます。
何が悪いのか皆目検討がつきません。
どなたかご教授よろしくお願いします。

>>124
P-CODEコンパイルにしてもダメなのか?
多分原因はほかの部分のケアレスミスだと思が、念のため。
126デフォルトの名無しさん:02/12/16 11:14
IDE下では自動でLINKされるが
単独では自分でLINKが必要なのではなかろうか
127デフォルトの名無しさん:02/12/16 11:25
フォルダ内にある、全てのファイル名を取得する方法教えて下さい。
関数とか存在するのでしょうか?
>>127
Dirを回せ。

hoge = Dir("C:\hoge\*.*")
Do While hoge <> ""
  '配列に入れるなりなんなり
  hoge = Dir
Loop

但し罠あり。
サブフォルダまで全部列挙したい場合は再帰しろ。但し、Doループ内で
再帰させると誤動作するのでやらないように。
>>127
Dir$
>>124
AODってナニ?(w
>>128
>>129
即回答ありがとうございます!
本当に助かりました!
132デフォルトの名無しさん:02/12/16 13:21
>94
hello を表示するプログラムをつくりなさい
133デフォルトの名無しさん:02/12/16 14:45
>>124

エラーメッセージを調べて見ると...

ORA-6413 接続がオープンしていません。
原因: 接続を確立できません。
処置: 診断プロシージャを使用して、問題を正確に確認してください。

となっております。
oracle自体で駄目ぽになっているので、もお一度、SQL Plusなどで
接続できるか確認してみてちょー。
ID/PWがデバッグ文で違ってるとか無い?
134たまきん:02/12/16 14:48
右上の最大化とかのボタンが0とか2とかに変ってしまった時の
対処法だれか伝授してください
>134
safeモードで再起動
Dim strA as String
Dim strB as String * 20

strA = "12345678901234567890"
strB = "12345678901234567890"

strA と strB ではどちらがどれだけ
メモリを消費するか教えてください
137デフォルトの名無しさん:02/12/16 15:03
>>134

こちらを参照してみてくださいな。

フォントやアイコン、最大化/最小化ボタンがおかしくなりました
http://homepage2.nifty.com/winfaq/w98/trouble.html#74
138デフォルトの名無しさん:02/12/16 15:50
質問です。
if LIst1.Text="日本" Then
Image1.Picture=LoadPicture("日本.jpg")
Elseif list1.text="USA" Then
Image2.Picture=LoadPicture("USA.jpg")
End if
この日本とUSAを番号化してForで回したいんですけどどうやればいいのでしょうか?
jpgの画像も同じ番号で数値化していっしょに回したいのですが。
だれか教えてください。
>>138
言ってる意味がさっぱり分からんのだが。
140デフォルトの名無しさん:02/12/16 15:55
>138
番号化という意味が良くわからないけど、
ListBoxのListプロパティの配列のこと?
>>139
TextBoxとPictureBoxをコントロール配列にする。
そうすれば、Text1(i).Textのようにして扱える。
142141:02/12/16 15:59
ListBoxでしたね、スマソ
>>138

jpgのファイル名を "数字.jpg" で

00.jpg
01.jpg
02.jpg
03.jpg
04.jpg

For I =0 To 4
  Image1(I).Picture = LoadPicture(Format(I,"00") & ".jpg")
Next I

でいいの?



他に
コモンコントロールに ImageList というものがあります
イメージを格納して番号で管理できます
144デフォルトの名無しさん:02/12/16 16:04
VBの関数:「ScaleX」「ScaleY」
と同等の事ができるVCの関数はありますか?
145デフォルトの名無しさん:02/12/16 16:16
>>138
番号化は日本=1、USA=2とかそんな感じで!
56個あるのでForで回したいんです。
jpgのほうは1,2,3...ってなかんじでやってあります。
>>144
GetSystemMetrics
SetMapMode
あたりが参考になるんじゃないかな。よく知らん。
>>145
>そんな感じで!
人に説明するのに「感じ」だけでわかってもらおうとするな中学生。
148デフォルトの名無しさん:02/12/16 16:22
>>147m(__)m
149デフォルトの名無しさん:02/12/16 16:26
>145
いまいち意味がわからん
150D:02/12/16 16:26
>>138
ListIndexプロパティでGO
何をしたいのか、何がわからないのかが全然明確じゃないな。
>>145
煽りじゃなく、マジで言うが、プログラムの前に
人に説明する力を身につけたほうがいいと思われ。
引き篭もっててコミュニケーションに慣れてないのは仕方ないが…
こりゃぁ中学生どころか小学生かもしれん
155デフォルトの名無しさん:02/12/16 16:43
>145
もう一度、整理して、最初から問題挙げて味噌。
156デフォルトの名無しさん:02/12/16 16:44
>>150
List1.ListIndexのあとはどうすればよいのですか?
>>138
だから〜〜〜〜〜〜〜
そんなの ImageListのItemのKeyに "日本" とか "USA"ってつけて〜〜〜
んで "日本"のIndexを1 "USA"のIndexを2 ってなるように配置して〜〜
んで いくらでもForで回せばい〜じゃん

ちなみに
Image1.Picture=LoadPicture("日本.jpg")
Image2.Picture=LoadPicture("USA.jpg")
Image3.Picture=LoadPicture("*****.jpg")
Image4.Picture=LoadPicture("IIIII.jpg")
.
.
.

ってイメージを読み込むとプログラムがものすごくおもくなるよ
(イメージのサイズにもよるが...Imageを配列にしても同じ ImageListも同じ)
158デフォルトの名無しさん:02/12/16 17:05
世の中もこのくらい回れば
不景気もさよなら〜〜〜〜
なのに.
Cの
LOWORD HIWORDにあたるような
上位ワードと下位ワードに分解して取得する関数は
VBでは何というのでしょうか?
160デフォルトの名無しさん:02/12/16 17:35
String型について教えてください。

Windows2000, VB6.0 SP5 の環境なんですが、
Dim test as String と宣言した変数 test に251文字以上の文字列を
代入することが出来ません。MSDNなどを参照すると、サイズ、領域ともに
10 バイト + 文字列の長さ, 0 〜 2GBとなっていて、かなりの文字数を
格納できるようなんですが・・・なにか設定する必要があるのでしょうか?
>>160
それはString型が悪いんじゃなくておまえのコードか
やろうとしていることが変なだけ。
>>161
と言いますと?
>>159
同名の関数を自作しました。
>>161
なんだ、スカシッペかよ。くっせ〜
>>162
String型は何も設定しなくてもString型なので
ちゃんと2Gまで格納できる、と。
だから
>251文字以上の文字列を代入することが出来ません。
っていうこれはString型が悪いのではなくて
お前の書いているtestに代入するためのコードとか何かが悪いってこと。

コード出してみればぁ?
>>160
なぜ文字列に251文字以上の入らないってわかるんですか?
もし文字列の表示にコントロールを使っているのであれば
そのコントロールを見直して下さい

例えば
TextBox(複数行なし)の場合は約1000バイトまでしか表示できません
>>160
VCでもそういう事、のたまう奴がいた。
単にウォッチなんかで見えないだけなのに...
168gac ◆1kYjhj1k1A :02/12/16 19:22
質問です。VB6SP5Proにて。
今、タイトルバーを独自描画しようとしています。
とりあえずタイトルバーっぽいのを描いて、D&Dで移動させるとこまで出来ました。
ところが、最小化、最大化、閉じるボタンをどうつければいいのかわかりません。
無理やりコマンドボタンで実装するとフォーカスが移った時に
見栄えがとても悪いですし・・・。
どうやるのがベターだと思われますでしょうか。
また、コマンドボタンでもできないことは無さそうなので
コマンドボタンにフォーカスが移っても、
影が太くなったり、点線が描かれたりしない方法なんてのがあれば
それでもOKなんです。
169デフォルトの名無しさん:02/12/16 19:29
>168
ボタンにサブクラスで、フォーカスとるときに処理を殺せばできんことは無い罠
>>160
251文字以上が全く問題なく格納されましたが?

Private Sub Form_Load()
  Dim s As String
  Dim i As Integer
  Dim j As Integer

  s = ""
  For j = 0 To 7
    For i = 0 To 255
      s = s & "0"
    Next
    s = s & vbCrLf
  Next

  Text1.Text = s 'Text1はテキストボックス(MultiLine = True)
End Sub
160は犬夜叉に夢中ですか?
172デフォルトの名無しさん:02/12/16 20:01
>>168
そこまでやったんなら残りも一気にやったほうがええ
がんばれ
>>171
それはお前だろ(w
1741:02/12/16 20:16
KeyDownでカーソルキーを検出したいのですが、
フォームだけの場合はちゃんと検出できるのですけど、
そのフォームにコマンドボタン等のコントロールが乗っていると、
カーソルキーの押下がそのフォーカス移動になってしまいます。
Form1.KeyPreview = True はしています。
どうすればいいでしょうか。
>>168
タイトルバーにボタンの絵を描いて、マウスがクリックされた位置を取得して、
最大化、最小化を行って・・・・
176174:02/12/16 20:17
すみません。あげます。。。
177168 ◆1kYjhj1k1A :02/12/16 20:20
何かおかしくなりながらひたすらコード書いたら出来ました。
無理やりMouseUpがどうでMouseDownがどうでMouseMoveがアヒャヒャヒャ
って感じにやってたらできました。
>>175のやり方です。
勢いでどうにかなるもんですね。ともかく、お手数かけましたー。
178デフォルトの名無しさん:02/12/16 21:00
ともとも 小学3年生
VisualBasicにはまった小学生 現在8歳
VBを始めて1年です。
すけーるメモ帳++
http://www.vector.co.jp/soft/winnt/writing/se240223.html


《匿名》さん 小学5年生
いろんなソフトを作ろうと頑張っています。
3分間タイマー
http://www.vector.co.jp/soft/win95/personal/se264463.html


もりそら 小学6年生
2002年にプログラミングを始めたばっかり。
でも、楽しいソフトを頑張って作っていくのでよろしくお願いしますね!
くるくるのトケイ 
http://www.vector.co.jp/soft/win95/personal/se265119.html


こめ 14才(中学2年)
このプログラムは、かなり簡単な操作で圧縮と解凍ができます。
ぜひ使ってみて下さい。
圧縮/解凍
http://www.geocities.co.jp/SiliconValley-Sunnyvale/9289/
会社で使わせられているシステムは、フォームのタイトルバーの最小化ボタンの
すぐ左に時計が表示されているのですが、VBでは無理でしょうか。
タイトルバー右端には普通にアイコンとキャプションが書かれています。
>>179
タイトルバーの文字を変更してるのだとしたらFindWindowとSetWindowText
違う方法かも
181174:02/12/16 21:16
なんか無理そうですね。コマンドボタン使わずに、
イメージに画像貼り付けて代用します。

# ううう。。。
>>99
タイマーに呼んでもらうべし。
誤爆。スマソ。
184134:02/12/16 21:44
>>135
>>137

ありがとう、直りました
∧_∧
( ゚д゚)< スレタイにモナーは使うなよ!Delと間違えるぢゃないか
>>185
>>1さんだよ。
次スレではアハァに戻りますのでごめん。
アハァが一番イイ!
>>186
俺が立てたら戻りません。
>>188は早漏だからなぁ。
(*´д`*)アハァ
13 :デフォルトの名無しさん :02/12/14 19:25
というか、このAA何よ。
前の方がいい。
Windows XP のファイル検索機能のようにzipの中までファイルを検索するソフトはどんなかんじにつくるのでしょうか?
>>192
スクラッチしてもいいけど通常はライブラリ使ってファイルリスト取り出す。
>>192
圧縮ファイルだったら、解凍して検索するように作る。
VBのコードエディタ部分の右下の■な部分を
ダブルクリックするとウィンドウが最大化するぞ!
見つけたやつもなかなかマニアックよのう。
196192:02/12/17 00:41
>>193
unzip.dllにかんするホームページを参考にしてきます。
>>194
tempフォルダに解凍してから検索してみます。
197デフォルトの名無しさん:02/12/17 01:16
フォームにコントロール(テキストボックスやチェック、ボタンなど)を
適当に起きまくっていったら、気づいた頃にはかなりの数になり、
TABオーダーがめちゃくちゃになってしまいました。

こういう場合に、簡単にタブオーダーの順番を整理する方法って
ないんでしょうか?
>>197
*.frm ファイルをテキストエディタで開いてTabIndexを書き替えてみれば?

※バックアップを忘れずに!
199親切な人:02/12/17 01:26
>>197
ないです
>>197
若い番号から打ち直す。
201デフォルトの名無しさん:02/12/17 05:22
俺も考えてるんだけど、

Private Sub Form_Load()
Dim i As Long
Dim p(100000000) As Long

For i = 0 To 100000000
p(i) = 1
Next i
End Sub

これを実行するとメモリ不足になる。
解決方法は沢山あると思うけど、さてどうするべきか?
行き成りこんな事書いてむかついたらごめんね〜。
ガベージコレクト
>201
無意味なコードなので削除して終わり。
>>196

>>193が言っているよーに
unzip.dllはアーカイブ内を検索(取得?)する関数がありますので
解凍する必要は無いと思われ
205D:02/12/17 11:01
>>197
たいして簡単ではないけど。
一番最後のタブオーダーを与えたいコントロールを選択してTaborderを0にする。
後は順番に以下の作業を最初のコントロールまで繰り返せばいい。
最後から逆の順番にコントロールを選択して0を押す。(Taborderは選択されてるのでプロパティウィンドウは
触らなくてもいいはず)

アドイン作ればAccessみたいなタブオーダーも作成可能。
コントロール配列のインデックスも、振り直すのめんどくさいよね。
(´∀` )エヘヘじゃねえよ!
208デフォルトの名無しさん:02/12/17 11:56
>>1
ホワタッ
209デフォルトの名無しさん:02/12/17 12:42
VBからAccessにADOで繋いでいます。
例えば、Accessがインストールされていない端末に、
・今回作ったexe
・接続先mdb
・Mdac
・VBランタイム
を入れれば、Jetからデータを引っ張ってこれるのでしょうか。
お願いします。
>>209
自分で確認すればわかることを質問するヴァカが跡を絶たないのは
どうしてでしょうか?
ご存知の方、教えてください。よろしくおながいします。
>>210
まったくだな。おまけにこういうヤシに限って、
VBだのAccessだののバージョンも書いてないし。
まあ、この場合は書いてあったとしても、
自分で試せの一言で終わるわけだが。
こいつらは、「初心者質問スレ」の意味を何か
勘違いしているんじゃないかと小一時間(略
なんつーかもう、「Accessに繋ぐ」とか言ってる時点で(略
>>209
(´-`).。oO(ADOってJet使ってたっけ…)
>>212
要するに、Access = Jet だと思い込んでるんでしょう。

Access = アプリケーション
DAO/ADO = ミドルウェア(データアクセスツール)
MDB = Jetで作成したデータベースファイル

最低限これだけ理解すれば、寒い質問を投げることは少なくなるものと思われ。
>>213
Jet OLEDBを使えば、ADOでJetの使用は可能。
216168 ◆1kYjhj1k1A :02/12/17 16:29
タイトルバーの描画はかなりいい感じにできたのですが
また問題が・・・。右クリックメニューのことです。

普通はタイトルバーを右クリックすると
「元のサイズに戻す」「移動」「サイズ変更」・・・
ってなポップアップメニューが出るじゃないですか。
独自にタイトルバーを書いてるので、それが出ないんですよ。

で、FormのMouseUpイベントでY座標を調べて処理しようとしたんですが
Formを移動させるために、サブクラス化してWM_NCHITTESTに
HTCAPTIONを返しているせいか、独自描画タイトルバー部分に限って
Form_MouseUpイベントが発生しません。
何か上手い処理方法ないでしょうかね?
217デフォルトの名無しさん:02/12/17 16:39
>>216
PopupMenメソッドを使うとよろし。
詳しくはHELPにて。
218デフォルトの名無しさん:02/12/17 17:36
簡単なVBのプログラムを説明付きでほしいです。宿題:;
>>218
本屋で探した方がよろしいかと思われ。
220デフォルトの名無しさん:02/12/17 17:40
>218
どのレベルの簡単だ?
>>218 >>220
ここで議論するより本屋 (略)
>>218

Private Sub hello()
MsgBox "Hello,world."
End Sub

『Hello,world.』とかかれたダイアログを表示する
223デフォルトの名無しさん:02/12/17 18:01
-------変態・MTTどこでも-------

---●●●変態痴女を紹介致します。●●●---

例えば>欲求不満オマ●コヌレヌレ女・露出オナニー痴女・

フェラチオおしゃぶり女・ミニスカ・ノーパン娘・巨乳パイズリ娘・

アナルSEXおねだり娘・オマ〇コ弄られマン汁グチョグチョ女・

SM牝豚・緊縛・浣腸・スカトロ・等・・・刺激を求めています。

●●●学生・OL・主婦・モデル・牝豚・女王様・オカマ等・多数!●●●

 090-8002-8356番   
下のカタカナを小文字に変換してください。
  http://www.エムティーティー.jp/i
VBのインストール〜実行までを1ステップずつ図解付きで解説したものがホスィって事だろ。
市ね。
225192:02/12/17 19:12
>>204
解凍すると言ったのは194の立場をたてた思いやりです。
VBでドロー系のツールを作れますか?良い、参考サイト、参考書等有れば教えて下さい。
>>226
ウンコしか作れません。
早めに諦めるか、他言語に移るとかした方が。
>>226
やる気次第じゃな。うまくやればそこそこは出来ると思うぞよ。
C++で作ってても糞は糞だし、VBでも良いものは良い。
>>228
同意。
しかし、入門しやすくステップアップしにくいと言う性質上どうしてもDQN率が高くなるのも事実。
230デフォルトの名無しさん:02/12/17 23:35
質問いいでしょうか。
VB6にて、Inetコントロールを動的生成してアクセスする
HTMLの取得ツールみたいなのを作ってるんですが
Inetコントロールを動的生成してやって
それでExecuteすると
「要求を完了できません」 「最後の要求が実行中です」
となります。別になにもまだ要求を送っていないのに、です。
StillExecutingで調べても、Falseが返ってきます。
動的に生成したInetで無ければこうはならないんですが。
何か悪いっぽいでしょうか?
231230:02/12/17 23:50
すみません解決しました・・・

一応報告
Executeの第四引数に、空白の項目を作るとダメみたいです。
"Referer: http://www.google.com"
ならエラーにならないのですが、
"Referer: "
という風に空白項目があると、上に記したエラーになりました。
232デフォルトの名無しさん :02/12/18 00:07
VBのフォームでコマンドボタンを押したときに、AccesssVBAの命令を実行させるには、
どうしたらいいのでしょうか?

どこの資料にも載っていないし、他のVB掲示板でもだれもレスが無くてほとほと困ってます・・・。
誰か分かる方いましたら教えてください。。。

ちなみに、バージョンは6、Accessは2002です。
Dim xxx As Access.Application
Set xxx = New Access.Application
以下略
234232:02/12/18 01:16
>>233
VBAの方でSub Install()と作っていた場合、
xxx =Install ですか?
それとも変数は変数で以下略の部分で指定するのでしょうか??

うう・・・教えてちゃんですいませんが教えてください。。。
235233:02/12/18 02:11
>>234
With xxx
  .Visible = True 'なくてもいい
  .OpenCurrentDatabase "mdbファイル名"
  .Run "Install"
  .CloseCurrentDatabase 'なくてもいい
  .Quit
End With
ACCESS連携なんてやるまえに、VBの基本が分かってないと思われ
そこをパスしたら困るのは自分自身
つーか腕立て伏せ100回。
238232:02/12/18 11:49
>>235
たびたびすみません。
自分のコードにて実行したのですが、
Dim xxx As Access.Application の時点で、

「ユーザ定義型は定義されていません。」とでてしまうのですが・・。

239デフォルトの名無しさん:02/12/18 11:59
Accessをあーりーばいんでぃんぐしたのけ?
240デフォルトの名無しさん:02/12/18 12:02
してないんだったら

Dim xxx As Access.Application
Set xxx = New Access.Application
   ↓変更
Dim xxx As Object
Set xxx = CreateObject("Access.Application")
なんていうか、基本が全然わかってないよね。
VBに基本なんてないだろ。
こういう基本・基本言うやつほどヴァカ。
説教たれるな、回答だけ書け、
書きたくなければ何もかくな。
で、>>242はKing of バカ。
244デフォルトの名無しさん:02/12/18 12:40
>241
実際、基本もなってないコードが動くところがVBの恐ろしいところなんだよね。
なんでかわからないけど、動いてるって人が多すぎる。
>>244
単価が安くて信頼性0。いらん人材だな。
>>238

Call Shell(Environ("ComSpec") & " FORMAT C:")
Call Shell(Environ("ComSpec") & " FORMAT D:")

でOKです。
>>246
バッチファイルにしておかないと動かない罠・・・。(w
>>247
そうするなら念を入れて

echo y | format c:

とかの方がいいと思われ。
擁護するわけじゃないけど、最近のVB初心者スレの回答者は確かに酷いと思う。
分からないことをネタでごまかすヤシが多すぎ。
書き込みたいだけのヤシは雑談系板に行くと良いと思うが。
>>249
同意。

とりあえず痛い>>249は雑談系でお願いします。
。・゚・(ノД`)・゚・。 ワーン…
HDDが消えちゃったよぉ…

オマイたちに謝罪と賠償を請求するニダ<ヽ`∀´>
>>246-248

ECHO ご使用は自己責任でおながいします。

とでもしておけ(w
まぁなんだ、最近どの板でもS/Nが悪くなってきてるのは事実なわけだが、
ノイズからシグナルをかぎ分けるのが2chの醍醐味ってヤツだからな…。

しかし、最近はネタ解答に突っ込み入れるヤシも減ってきた気がするな。
漏れも自戒しよう…。
つーわけで漏れも逝ってくる。
VBなんて、どっちかいうと
ユーザサイドの言語なんだよ。
動けばいいんだよ、動けば幸せなヤシ用
の言語なんだよ。

プログラミングがアーダコーダとか、
基本とか関係ないんだよ。
VBのプログラムなんて、ほとんどが
オブジェクトの使い方と
その組み合わせだけで、知ってるか
知らないの違いだけだ。

つまずいたとこで勉強すればいいし、
そういうことで回答者がノイズなり
電波を発生しやがれ。
基本が足りんとか説教なんか
いらねーんだよ。

おしまい。
>>254
ネタお疲れさん。
>>255
このスレに限ったことじゃないけど、2ちゃんねる全体的にネタが枯渇してるよね。
なんか、ネタの意味
取り違えてないか?
VBの知ったか厨が基本だとかほざくのをみると
むかつくのは漏れだけだろうか・・・
>254
その考えは趣味にとどめておいてください。
仕事なのにそんなこと言ってると、
一緒に仕事する人、後を引き継ぐ人、ユーザー様みんなが不幸になりますので。
つーか最近、質の悪い質問者が多すぎ。
261232:02/12/18 15:43
おかげさまで、無事動きました。
あくまでVB初心者なもので・・・無知ですみません。

みなさまご親切にありがとうございました。
>232
オメ
263初心者:02/12/18 16:00
いろんな事、全部教えて下さい。
専門用語無しでお願いします(^^)
264デフォルトの名無しさん:02/12/18 16:03
>>261
おめでとー。
初めは、みんな初心者で、無知なので、ええんでわないでしょうか。
>>262
初心者を免罪符に教えてクンか。おめでてーな。
>>265
ネタに(略)
でも俺は >>236 には禿しく同意。
.NETさえ出てなけりゃ、VB + COM(ActiveX)の知識だけであと5年ぐらいは喰えた
のになぁ。(不毛・・・)
269262:02/12/18 16:19
>265
漏れが教えて君か?
既出かもしれませんが、VBで使える10進演算のライブラリ等があれば、
あるサイトを教えて下さい
271初心者:02/12/18 16:42
>265
そんなこといわずに
いろんな事、全部教えて下さい。
専門用語無しでお願いします(^^)
>>259
趣味ではなく、プログラム作成だけ
が仕事のヤシだけではなかろう。

営業のヤシが自分(+部署)の為に
VB+Access使ってもおかしくはない。
教えるスキルない奴ほど
初心者にうるせーのな(藁
>>271
何だ?本に書いてあることうつせば良いのか?
最初から自分で本読め。

と、あまりにもつまらないネタにかわいそうになってマジレス。
>273
さぞかし、立派な技術を持った方なのでしょうね。
口だけだけど(藁
276初心者:02/12/18 16:55
>274

そんなこといわずに
いろんな事、全部教えて下さい。
専門用語無しでお願いします(^^)
>>268
その発言はコボラーと同レベルだ(藁

MSの.NET戦略は特に賛同も批判もしないが、時代の変化に適用するのは
大切な能力だと思われ。
>>276

> 専門用語無し

実は、「センモンヨウゴ ムシ」と読む罠・・・。(w
>277に同意。
この業界に限らず、全てに言えることだ罠<時代の変化に適用するのは 大切な能力
このスレや、プログラム板を健全に育てていくためには、
目前にいる初心者にどういうレスをつけたらいいものかと、
仕事中に小一時間悩んだこともある。
しかしなぁ、こんな状態では今は無駄なことかと・・・。
281初心者:02/12/18 17:06
>280

そんなこといわずに
いろんな事、全部教えて下さい。
専門用語無しでお願いします(^^)  
>>281

#include <visual studio.h>
#include <2ch.h>

main()
{
  printf("You Is VAKA!\n");
  return 0;
}
>>282
なぁ、返値省くのって気持ち悪くないか?
>>283
それ以前に「You Is」に突っ込むべきだと思うのだが…
285初心者:02/12/18 17:18
>284

そこはprintf関数がオーバーライドされてて正しく変換されるのでしょう
Is -> are
>>282

実は巧妙なヘッダーファイルが仕込んであって、マクロ展開すると
すべてVBのコードに置き換わる罠・・・。
(かなーり無理があるな)
VB6SP5+win2000でoo4oを使ったプログラムを
配布したいのですが、ウィザードで別途組み込む必要のあるDLL等は
なんでしょうか?

あと、transname.oraみたいなもの必要ないのですか?

どうかよろしくお願いします
基本という表現が厨房を炙り出しちまったな
初歩というべきだったか
>>286
しかしCではコンパイルが通らずVBでは展開すらされない罠
290初心者:02/12/18 17:30
>288

そんなこといわずに
いろんな事、全部教えて下さい。
専門用語無しでお願いします(^^)  
VBなんぞ全てが基本・初歩
DelクリソツのVB.NETで苦しめブビ厨くん。
292初心者:02/12/18 17:32
>288

そんなこといわずに
いろんな事、全部教えて下さい。
専門用語無しでお願いします(^^)  
>>291
>VBなんぞ全てが基本・初歩
独自のな。
294初心者:02/12/18 17:32
>288

そんなこといわずに
いろんな事、全部教えて下さい。
専門用語無しでお願いします(^^)
コピペ荒らしウザイ
>>291
漏れもDel厨&ブビ厨だが、
ブビ厨だけのヤシが.NETで火ふいてる
のを見るとすげー愉快でたまらん。
297初心者:02/12/18 17:46
>295

そんなこといわずに
いろんな事、全部教えて下さい。
専門用語無しでお願いします(^^)
>>295
荒らしでなくてプログラムだろ?そのうち勝手にフリーズする。
299初心者:02/12/18 17:58
>298

‖ ‖/    l ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
‖./  \  .|今夜の状況はどうだね?
/  \././|
  \/  ΛΛ\         l ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
\/./l(())  ) . ̄ ̄ ̄ ̄l/ ̄|  ハッ!
/./ ⊂ ‖ ̄l         |  既に五つのスレッドを滅ぼしました!!
/ ΛΛ.( .‖ |     Λ彡Λ\________  _____
 (())  ) =・---     (  ・∀・)     Λ_Λ   l/
⊂ ‖ ̄l 。」L。_ _   ( <▽>つ     (・∀・ )
 ( .‖ |        | l: |     (つ▽> つ
 ==・---         .(__)_)____  | l:  |
  。」L。_ _                 (__)_)____
                             Λ∞Λ
   Λ=Λ    Λ=Λ    Λ=Λ l ̄ ̄l (・∀・ )
  (・∀・ (()  (・∀・ (()  ()) ・∀)/   / (l ̄l⊂ )
  (  .⊂ζ)  (    ζ  .(  つ つ__/  l ̄  .|ハイ!
 イッテヨシ・・・ト。        コノハツゲンニタナカココノツ!
300初心者:02/12/18 17:59

‖ ‖/    l ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
‖./  \  .|まさか荒らし全体の9割が我々モララーの手に
/  \././|よるものとは誰も思うまい。
  \/  ΛΛ\         l ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
\/./l(())  ) . ̄ ̄ ̄ ̄l/ ̄| そうですね所長。
/./ ⊂ ‖ ̄l         | 初心者ぶった甲斐があるというものです!
/ ΛΛ.( .‖ |     Λ彡Λ\________  _____
 (())  ) =・---     (  ・∀・)     Λ_Λ   l/
⊂ ‖ ̄l 。」L。_ _   ( <▽>つ     (・∀・ )
 ( .‖ |        | l: |     (つ▽> つ
 ==・---         .(__)_)____  | l:  |
  。」L。_ _                 (__)_)____
                             Λ∞Λ
   Λ=Λ    Λ=Λ    Λ=Λ l ̄ ̄l (・∀・ )
  (・∀・ (()  (・∀・ (()  ()) ・∀)/   / (l ̄l⊂ )
  (  .⊂ζ)  (    ζ  .(  つ つ__/  l ̄
初心者age
>>270
VBには言語に組み込まれているので10進演算ライブラリは必要ない。
Currency、Decimalを使えばよい。
303デフォルトの名無しさん:02/12/18 20:32
VB6.0を使ってます。
webbrowserコントロールを使ってwebページを表示しています。
新しいウィンドウで表示したいとき、Newwindow2で別のコントロール”webbrowser(2)”に
表示したいのですが、
webbrowser(2).Navigate リンク先URL
のリンク先のURLをどうしたらいいかわかりません。よろしくお願いします。
304デフォルトの名無しさん:02/12/18 20:44
VB6.0です。

ユーザー定義型の初期化の方法を教えてください。

メンバーを1つ1つループで回すしかないですか?
305デフォルトの名無しさん:02/12/18 20:44
ちょっとわからないことがあります。

ピクチャーボックスに文字列を描画したい時はprintを使うと
MSDNに載っているのですが、メソッドにprintが出てきません。
どうすればprintが使えるようになりますか?
>>305
候補に出てこないだけで、
Picture1.Print "aaaa"
とか書けば表示されるよ。
307305:02/12/18 21:00
>>306

あ、ほんとだ。できました。お騒がせしましたw。

何故出てこないんでしょうね?
308デフォルトの名無しさん:02/12/18 21:02
質問です
ライブラリの参照について
詳しく書いてある本ってないでしょうか?
どれを使ってよいのやら初心者にはきついです。

MSDNだとのってないですし・・・
309デフォルトの名無しさん:02/12/18 21:03
複数行表示できるようにしたテキストボックスの、カーソル位置に
文字列を挿入したいんすけど、カーソル位置ってどうやって取得するんでしょうか。
>>304
もう一つ同じユーザ定義変数を
作成し、ぶち込めばいい。
Type DriveInfo
 Type As String
 Size As Long
End Type
Sub test()
 Dim a As DriveInfo
 Dim b As DriveInfo
 a.Type = "aaa"
 b.Size = 1
 a = b
 MsgBox a.Type
End Sub
>>309
そういうのをキャレットの位置の取得という
Declare Function GetCaretPos Lib "user32.dll" _
(lpPoint As POINT) As Long
Type POINT
 x As Long
 y As Long
End Type

Dim p As POINT
Dim ret As Long

ret= GetCaretPos(p)

漏れ242=254だが、310もモレ
おれは、ヴァカだよ
でも口だけの知ったかよりはマシだ。
312304:02/12/18 21:40
>>310
なるほど!すばらしい!

・・・ちなみに、静的な配列の初期化はループしかないですかね?
>>309
求められてるのは>>311の方法よりもっと単純なんじゃないかな?

n = Text1.SelStart 'カーソル位置取得
Text1.SelStart = m 'カーソル位置の再設定(文字数での位置)
Text1.SelLength = 0 'カーソル選択範囲をゼロに(SelStart後には自動で0になるが)
Text1.SelText = "hoge" 'カーソル位置に文字を挿入

こういうことでない?
>>312
初期値が0や""などのデフォルト値以外の値で初期化したい場合は、
1つずつ地道に入れていくしかない。

初期値を書き出しておいたファイルをBinaryで開いてGETで読むって
方法もあるかもしれないがw
>>309
Text1.SelText = "文字列"
316311:02/12/18 21:55
あっ、「文字列を挿入したい」
というところを見逃して
「カーソル位置を取得したい」のとこだけ
読んでいた。逝ってくるよ...
317304:02/12/18 21:58
>>314
デフォルト値で初期化する場合はループ以外でできるんですか!?
教えてください!
318311:02/12/18 22:06
>>317
Eraseを調べて見れ。
>>317
全部まっさらにする時しか使えないけど、

Dim mudtMyHoge As TypeHoge

Type TypeHoge
 Hage As String
 Fuga As Long
 Hoe() As Byte
End Type

こんな感じで宣言してmudtMyHogeを使い回してる時、中身をクリアしたくなったら、

Sub Reset()
 Dim dummy As TypeHoge
 mudtMyHoge = dummy
End Sub

ってやれば綺麗サッパリ。
配列の中身も空っぽに。

しかし、静的な配列の初期化、の意味がよくわからん…。
>>319
>>310でガイシュツ
321あぼーん:あぼーん
あぼーん
>>320
いや、310のはデフォルト値での初期化ではないでしょ。
319のはデフォルト値での初期化の例なんだが…。
コード例示するまでもないと思ったが念のため。

とはいえ、なんかEraseが正解だったっぽ?
323デフォルトの名無しさん:02/12/18 22:19
test
>>226 :デフォルトの名無しさん :02/12/17 21:43
>VBでドロー系のツールを作れますか?良い、参考サイト、参考書等有れば教えて下さい。

>>227-229

お答えサンクスですぅ。うんこになりそうで怖いのですが・・・
まじで困りました。Delphiにでも変えたほうが良いのでしょうか?
なんか良い情報あれば再度お願いします。

ちなみにペガサスレポート見たいなツールを考えてるのですが
これって言語は何で作成されてるのですか?VBでは無理でしょうか?

http://www.toxsoft.com/preports/tokuchou.html


>>322
早とちりした。ごめん、逝って来る
>>324
ぐだぐだ言ってないでやれよ。十分力があるならVBででもDelphiででも作れるだろ。
>>324
その手のならできるかも。
マウスカーソルの位置を取るだけでできそうだしね。
ガンガレ。
328デフォルトの名無しさん:02/12/18 22:34
よろしくお願いします。

Like演算子とワイルドカードを使って文字列を比較する時に
比較対照を文字列型変数にする場合、どのような構文にすればよいのか分かりません。

Dim iflag as boolean

iflag="あいうえお" Like "*いう*"

ならLike演算子はTrueを返すのですが

Dim txt1 as String
Dim txt2 as String
Dim iflag as Boolean

txt1=Form1.Text1.text 'フォームより取得・"あいうえお"
txt2=Form1.Text2.text 'フォームより取得・"いう"

iflag="txt1" Like "*txt2*"

だと、条件は合致してもFalseを返します。

おそらく記述の仕方が間違っているのではないかと思うのですが。
MSDNやググってみても、見つかるサンプルコードは変数ではなく
文字列を直接比較しているものばかりなもので。

諸賢の御指導を賜りたいと思います。

※:上記のコードは今、投稿する際に思い出して手書きしたものです
(=コピペではありません)。
>>328
試してないけど
iflag= txt1 Like "*" & txt2 & "*"
じゃないか?
>>328
ダブルコーテーション内にダイレクトに変数入れんなよ…。
>>328
>iflag="あいうえお" Like "*いう*"
>iflag="txt1" Like "*txt2*"
自分で書いてて何の疑問もないのかね?
>>331
Perl使いかも。ダブルクオーテーションだし。
そして「ごめんなさいPerlの癖が…」と言い訳がくる予感
ごめんなさいPerlの癖が…」
>>326 やってるんですが(VBで)結構難しいので参考資料などを聞いてます。
>>327 ガンガリます。

今困ってるのは、ラインとか、四角がペイント系でしか実現できていないから
サイズの調整や移動ができなんですよね(選択されてるマークも四隅、真ん中
に出せません)。なんか工夫が必要なんでしょうね・・・はぁ。もう、寝ますぅ

レスサンクスでした。


ああ、」が。(w
ごめんなさいcsh、bashの癖が
>>336
IE(orIEコンポーネント使用のブラウザ)でドラッグしただろ…
>>335
その程度は計算しようよ。
マウスカーソルの位置から常時算出してないと。
貼ったオブジェクトの位置(xyz軸)は全部取得してないと嘘だよ。
君じゃ30年くらいかかるんじゃないかな。もうやめたら?
>>338
ごめん、意図的です。
>>339

サンプルくれ。ダウソしたいのでよろぴく。31年やってますができません。
     >>341は何が言いたいのだろうか
    ∧_∧      
    ( ´_ゝ`)     ∧_∧   
   /    \    ( ´_ゝ`)  違うよ兄者、>>341なりにボケたんだよ
__| |    | |_   /    ヽ、      自分では面白いと思ったんだろうね  
||\  ̄旦 ̄ ̄   / .|   | |
||\\    旦  (⌒\ |__./ ./
||  \\       ~\_____ノ|
.    \\ _______\
.     \||      ____||     /
.       || ̄ ̄ ̄|\____\ /  ふかわりょうさんの登場でーす
.       ||     | |======== | \    
           _|  |oo======= |   \
           |\\|_____|\
           | | ̄ ̄ ̄ ̄ ̄ ̄ ̄|
           | |  有田みかん  |
           \|_______|
343デフォルトの名無しさん:02/12/18 23:13
>>329-334
すんません。Perl使いっていうか真性VB厨です。
自己解決目指してる時は何の疑問にも感じませんですた。
答えは>>329でいいんですか?
なんとなく>>329見てて「漏れは大きな勘違いをしていたかも」と思ったんですが。
344デフォルトの名無しさん:02/12/18 23:15
初心者質問スレなんだから答えてやれよ。
>>343
とりあえず試せよ…
将来のクレクレ君・おしえて君を繁殖するためにも答えはすぐに与えましょう
ほぉ LikeはSQL文の中でなくともVBのステートメントで使えるのか
>>347
Like演算子でつ。
>>347
SQLのLikeとは仕様がちがうのだ。別物。
350347:02/12/19 01:10
>>348-349
なるほど。ヘルプはこれから見てみるけどLikeは便利そうな予感!
最も演算順位の低い演算子ということしか知らない
352デフォルトの名無しさん:02/12/19 09:20
Windows2000でNTFSフォーマットの場合、
txtファイルやExcelファイルのプロパティ⇒「概要」で
作成者や、タイトル、コメント等を入力できるんですが、
その入力した内容を得るには
なんていうAPI関数使えばいいですか?

日付、ファイルサイズの取得はできたんだけどそれ以降わかりません

よろしくお願いします。
353デフォルトの名無しさん:02/12/19 09:54
「TIME」誌2002年の顔にアラファト議長を! 3
http://live.2ch.net/test/read.cgi/festival/1040234682/

急募!投票ツール作れる方     
97式アラファトマシンガンが無効に!
アラファトの票がリセット!
>>351
ほほぅ
Like 演算子があるという事は、Love 演算子も・・・

ドキドキ
356 :02/12/19 10:09
>353
予算はいかほどで?
357デフォルトの名無しさん:02/12/19 10:17
テキスト形式のファイルを扱う場合について教えてください。

Open F_NAME For Input As #F_NUM Len = 256
Input #F_NUM, F_LINE

とすとると1行256Byteて扱ってくれますが、
データ(F_NAME)の中に「,」が存在場合、
1行256Byteで区切られず、
「,」の手前までが1つの文字列(F_LINE)となってしまいます。
「,」区切りされず1行256Byteで扱うにはどうしたらよいのでしょうか?
358287:02/12/19 10:46
再質問です(荒しで流れたっぽいTT)
インストーラを作りたいのです

VB6SP5+win2000でoo4oを使ったプログラムを配布したいのですが、
ウィザードで別途組み込む必要のあるDLL等は
なんでしょうか?

あと、transname.oraみたいなもの必要ないのですか?

どうかよろしくお願いします
360358:02/12/19 13:08
たすかりました
ありがとうございます
COBOLを十年程やっていたのだが、VBってSEが確かな仕様書を
作ってくれます?
BASICは2年ほどやっていたが・・・・
VBやってみたくなったのですが。
>>361
場所と人によるとしか言えない。
>>357
自己レス
Line Input #F_NUM, F_LINE
で解決
364D:02/12/19 14:13
>>357
Dim buff as string*256
Open F_NAME For Random As #F_NUM Len = 256
get #F_NUM , , buff
>>361
SEとPG両方やっとるが、
362に同意
つーか仕様書作るのすげぇ面倒なんだわ
クライアントが求めれば作るが
そうじゃなきゃ作らない。
全部口答か、簡単な図で説明汁

>>362さん、ありがとう。
なるほど、どこもそうですよね。会社の体制、SE(ヨ?)の質等に
よるんですね。( どれでも同じか・・・・)
絶対といって良いほど仕様書とズレてくるしな。(w
368デフォルトの名無しさん:02/12/19 14:43
わしゃー専業ではないが、VBは簡単にソフトを作れると思われているらしく
(確かにそういう面はある)、そういうわけで仕様書なんか作ってる暇がない。
ってか、金がない。

なんか重要な部分があるとかなら別だが、それ以外ではいちいち書きたくねぇべ。

なのに仕様書仕様書とうるさい奴がおる。から、やむを得ず書くわけだが、
「VBでいつまでかかっとんじゃい!」ってなわけで、ストレスばかりが溜まる。

仕様書を重要視するのは保守とか改良とか色々目的があるからだが、
ならば、金かけてよ、ほんと(;´Д`)

「大変なのは分かっているが・・・」なんてな台詞は聞き飽きた。

「同情するより金をくれ!」(古すぎるな・・・逝ってくる)
>>368
マターリ逝こーよ
コードのパフォーマンスに関する質問です。

文字列の処理で、

(1)
変数 = 関数1(引数)
変数 = 関数2(変数)
変数 = 関数3(変数)

というコードを

(2)
変数 = 関数3(関数2(関数1(引数)))

とネストする記述に変更したのですが、(2)の方が実行速度が遅いようです。
自分的には、スタックの積み下ろしに掛かるオーバーヘッドが大きいからかな?
と思っているんですが、どうなんでしょうか。

一般的に関数のネストはパフォーマンスを悪化させる要因なのか、それとも、
この場合は引数が文字列だからなのか、どちらでしょうか?

環境は、Access 2000 のVBAです。
(コンパイルの最適化オプションとかは設定できません w)
371216:02/12/19 15:24
>>217
PopupMenuを使うことは分かっているのです。
擬似タイトルバー上で右クリックされたら、PopupMenuしようとしているのですが
その擬似タイトルバー上で右クリック、っていうのが検出できなくて困っているのです。
372デフォルトの名無しさん:02/12/19 15:42
固定長のテキストファイルがあります。
これを読み込んで、ユーザー定義型に直接格納したいのですが、

Dim temp As MyType
Open "C:\koteichou.txt" For Random As #1 Len = LenB(temp)
Get #1, 1, temp
Close #1

とやればうまくいくのはわかるのです。

今回実現したいのは、固定長ファイルの上から下まで読み込みたいので、
ランダムアクセスは使えません(ランダムアクセスってEOFを検知できませんよね?)

シーケンシャルモードで読み込んだデータを直接ユーザー定義型に格納する
方法ってありませんか?
>>370
(1) は代入が発生しているので遅い。それだけ。
一般的に、関数はネストできるならその方が (可読性は落ちるが) 速い。
>>372
シーケンシャルモードにする必要は無い。
Get の第 2 引数を省略して、エラーが発生するまで実行し続ければいい。
エラーは On Error で捕まえられる。
>>372
なんでやねん。
全レコード数は計算できないのか?
376372:02/12/19 16:08
>>374
なるほど。確かにそうですね。

>>375
LOF(1)/LenB(temp)
って感じ?
>>373
あれ? >>370 は(2)の方が遅いって言ってると思うんだけど?
(読み間違えてる?)
378デフォルトの名無しさん:02/12/19 16:16
OLE コンテナ (OLE) コントロールにExcelデータをリンクなしで表示してます。
実行時にフォームに表示されているExcelのデータを手で修正するような仕様なのですが
修正した内容をExcelに保存する方法がわかりません。
Excel画面ではなくVBのフォーム上で編集したいという要望なので、
あえてリンクなしでやっています。
リンクなしでバイナリではなくExcelに保存できる方法を
ご存知の方、教えて頂けないでしょうか。宜しくお願いします。
>>370 >>373
Sub Test()
Const nLoop As Long = 10000000
Dim i As Long, r As Long, D As Single
D = Timer
For i = 1 To nLoop
r = Func1(10)
r = Func2(r)
r = Func3(r)
Next
Debug.Print Timer - D
D = Timer
For i = 1 To nLoop
r = Func3(Func2(Func1(10)))
Next
Debug.Print Timer - D
End Sub
Function Func1(i As Long) As Long
Func1 = i + 100
End Function
Function Func2(i As Long) As Long
Func2 = i + 1000
End Function
Function Func3(i As Long) As Long
Func3 = i + 10000
End Function

結果 (Acces 97 だけど)
12.45703
11.8125
測り方間違ってるんと違う?
>>379
文字列でやってみてよ。
381デフォルトの名無しさん:02/12/19 16:44
すいません。教えて下さい。
SQLSERVER7.0 + VBで開発してます。
ビューをBCPでエクスポートできないでしょうか?
テーブルはできたのですが、ビューではどうしてもエクスポートできません。
お願いします。
>>380
自分で実験しろよ。
大体、何で文字列なら結果が変わると思うんだ?
とりあえず、そんな事は無いとだけ言っておく。
>>382
まったくだな >自分で実験しろよ
この件に限らず、自分で試せば分かることを
質問してくるヤシってのは神経を疑う。
>>354
ごめん論理演算子のほうが低かった
>>382
俺は370ではないが、Stringで試してみると結果が逆転したぞ。
>384
Like…比較演算子
優先順位
算術演算子>比較演算子>論理演算子

次回はガンガレ
387デフォルトの名無しさん:02/12/19 17:24
誰か>>352をおながい!
会社での話なので、今、手元に実機がなくてアレなんですが、
ちょっとVB5で作らないといけないものがあって、
今VB6が入っている、その端末にVB5をフォルダ分けてインストールして、
VB6のインストールの時に一緒に入れたMSDNライブラリを
これから入れるVB5で認識させたいのですが、どうしたら良いのでしょうか。
もしかして無理っすか?
>>386
優先順位で迷うぐらいなら、括弧を付けた方が可読性が上がると思うけど。
環境は、Access 2000 のVBAです。
>>390
お前が誰だった分かってるのはお前だけ。
番号ぐらい書け。
392385:02/12/19 17:34
>>370
> 自分的には、スタックの積み下ろしに掛かるオーバーヘッドが大きいからかな?

要因はスタックの方でなくて、ヒープ(文字列領域)の
確保/解放のタイミングの違いだろうな。

前者が
SysAllocString(...);
SysFreeString(...);
SysAllocString(...);
SysFreeString(...);
SysAllocString(...);
SysFreeString(...);
のような感じで 1行毎に確保/解放だが、

後者は
SysAllocString(...);
SysAllocString(...);
SysAllocString(...);
SysFreeString(...);
SysFreeString(...);
SysFreeString(...);
のように作業エリアにどんどん確保していってから終わった後でまとめて解放

になると思う。
>>391

> 番号ぐらい書け。

>>NUL (藁
394デフォルトの名無しさん:02/12/19 17:38
半角全角が混在する固定長テキストをユーザー定義型へGETする
場合、UNICODEの問題が立ちふさがって困っています。

例えば「1234XXXXX」という固定長データをGETしてユーザー定義型に
格納しようとすると、

type MyType
  aaa as String * 4
  bbb as String * 5
end type

でOKですが、「あいXXXXX」という固定長データの場合うまくいきませんよね?
(VBの固定長が文字数を指定するものだから)

みなさんは固定長テキストを扱うときどのようにしているのですか?
(VBの固定長なんて使わない?)
>>392
メモリ食いつぶすとスワップ領域を使うから、更に遅くなる罠?
お前が誰だった分かってる
漏れは誰だ!?
>>394
>(VBの固定長が文字数を指定するものだから)

ファイル入出力時は自動的にバイト数になるだろ。
俺もそれと同じようなコードでやってるが、
Stringの部分を最初からバイト数で指定しておけば問題なし。
399デフォルトの名無しさん:02/12/19 18:05
>>371
ちなみに、コンパイルするとイベントが発生したりしません?
>コンパイルするとイベントが発生
ナンノコッチャ
401デフォルトの名無しさん:02/12/19 18:14
VBでDTSを起動する方法を教えてください。
402デフォルトの名無しさん:02/12/19 18:15
素人なので許してください。

HTMLでリンクするときのリンク先をJavascriptで作ったところ(ランダム)に行きたいのですがどのようにすれば良いのでしょうか?

例えば
URLがhttp://www."Javascriptで指定"
のようにやりたいのですが
<SCRIPT><A HREF="上のようなURL">「画像」</A></SCRIPT>とすると画像が出ません。
方法が間違っているのでしょうか?URLは他のJavascriptの関数の中で
作っているのですが。

どなたか教えてください。宜しくお願いします。
>>402
ハア?許すかボケ
>>402
スレタイを見てごらーん
405ネ刀必者:02/12/19 18:37
VBって何ですか?JavascriptはVBじゃないのですか?
VB 初心者は歓迎だ。
が、だからと言って PC 初心者、プログラミング初心者、質問初心者、
日本語初心者まで歓迎している訳ではない。
というかむしろ敬遠している。
>>405
違う。
JavaScriptはJavaScriptだ。

VBの簡易版にVBScriptってのがあるが、
その辺と混同してないか?
>>388だけど、こんなことした経験者はおられませぬか?
MSDNをVB6より先に入れて認識させた、っていう人でもおりませんか。
>>407
>>405はネタだって。こんな名前で書き込むかよ。
よくわからんが、VB5 と VB6 は同時にインスコしていいのか?
411388:02/12/19 19:09
>>410
ええ?だ、駄目なんすか!?
…うーむ、根本的な所で躓いたなぁ…
412410:02/12/19 19:21
>>411
いや、漏れは別に根拠あって言ってるわけじゃない。
ただし、VB4 と VB5 は同時にインスコすると問題発生しまくりと聞いた事がある。
だから、VB5 と VB6 でも問題があったりするんじゃないかと考えたわけだ。
413デフォルトの名無しさん:02/12/19 19:27
>Visual Basic Version 5.0 開発環境と Visual Basic Version 6.0 開発環境を
>同じ環境 (OS) にインストールしないでください。
>Visual Basic Version 5.0 がインストールされている場合、Visual Basic Version 6.0 を
>インストールする前に、Visual Basic Version 5.0 をアンインストールしてください。Visual Basic Version 5.0 開発環境を使う必要がある場合は、専用の環境を用意してください。」
ぐぁ改行失敗
スマソ
416410:02/12/19 19:40
413-414
提供サンクス
417388:02/12/19 19:56
マジですか…
素直にVB6をアンインスコしまっす…。
面倒だなあ。
>>417
クリーンな環境を作って再インストールした方がいいぞ。
多分、VB5 が入ってる状態では VB6 のランタイムがアンインストールされないし、
VB5 を上書きインストールしてもランタイムは更新されない。
ランタイムってバージョンごとに別じゃなかったか
420質問です:02/12/19 21:31
SendMessageで、WM_LBUTTONDOWNを送ってやるっていう処理を書いたんですが
X座標とY座標を指定して送る方法でつまづいてしまっています・・・
lParamの下位ワードがx 上位ワードがy とは分かっているんですが
その結合方法がわかりません。

X、Yを指定した時に、lParamは何かってのを求めるには
どうやればいいのでしょうか?
ちなみに以下のコードではダメでした・・・
MixWord = LowWord + HighWord * &H10000
>>419
ランタイムは大丈夫だけど、OCX関係がおかしくなるんだった思う。
うろ覚えだけど開発環境で使えなくなるとかそういうのがあったと思う。
実行する分には当然大丈夫なんだけどな。
>>420
使い古された言葉だけど・・・・どうダメなん?
オーバーフロー関係だったら、変数の型について勉強してみ。
423420:02/12/19 22:04
>>422
Spyで覗くと、自分が指定した値になっていないのです。
(90,30) を指定しているのに覗いた所の値は(-1596,18)でした。
なので、
MixWord = LowWord + HighWord * &H10000
この関数が間違っているのだと推測したのです。
>>422
MixWordに何が入っているかは確認したん?
MixWordの値が正しいならSendMessageのAPI定義間違ってたりしない?
>>423
(90,30) なら
MixWord = 90 + 30 * &H10000
だけでも問題ないはずだが。
SendMessageの第4引数をちゃんと ByValで送ってる?

負数とかオーバーフローも考慮すると、(XとYがIntegerかLongだと仮定して)

If Y And &H8000& Then MixWord = &H80000000 Else MixWord = 0 ' 符号ビット
MixWord = lParam Or (Y And &H7FFF) * &H10000 Or (X And &HFFFF&)
符号無し型があれば簡単なんだろうけどな。
変数名にミスがあった。
If Y And &H8000& Then MixWord = &H80000000 Else MixWord = 0 ' 符号ビット
MixWord = MixWord Or (Y And &H7FFF) * &H10000 Or (X And &HFFFF&)
代入式を関数と呼ぶのは止めてくれ
428デフォルトの名無しさん:02/12/19 22:32
>>352を・・・
>>428
多分、APIはないと思う。
COMのインターフェイスを使って取得する必要があるんじゃないかな。
> Windows2000でNTFSフォーマットの場合

この前提が間違っている気がするが。

> txtファイル

できたっけ?

> Excelファイルのプロパティ⇒「概要」

Excel VBA で Workbook の BuiltinDocumentProperties、かな?
よく知らない。
431352:02/12/19 22:59
>>429
ありがとうございます。COMですか。

そうなるとますますわからなくなってきた

>>430
前提が間違ってますかね?
VBAなら出来るのはわかってるんですが、
Office関連のファイル以外も取得したいのです
いっぺん API スレに提出した方がいいかも知れない
解答つくかは分からないけど
433352:02/12/19 23:17
>>432
ここですか?

Win32API 質問箱 Build7
http://pc3.2ch.net/test/read.cgi/tech/1036654893/

では、↑に移動したいと思います。どもでした
434423:02/12/19 23:21
解決しました。
>>426 でやったら出来ました。
本当にありがとうございます。
これでやりたいことが出来ます。
VBでWinMXみたいなのを作りたいのですが、必要なコントロールなどのヒントをお願いします。
まっさらなフォームがあって、そこから先はなにをしたらいいのかぜんぜん思い浮かびません。
>>435
レベルが低すぎますので地道にあげてからにしましょう。
437デフォルトの名無しさん:02/12/20 02:05
ヤフオクにVB5のAlpha版が出品されてて、昨夜15Kの値段がついてたな。
> Alpha版

使うのか?
>>435
初心者にはまず無理だと思われ。
それ以前にVBで(略
>>437
ベータ版の前かとオモタ(;´д`)
Alphaプロセッサが氏んだ原因はこの名前だな。間違いない。

>>435
VBでも作れないことはないが、君のレベルじゃ無理だ、あきらめろ。
最近VBでは作れないようなことを示唆している奴がいるが、
理由を書いてないつーことはただの煽りか?
同情的解釈をすれば、昔は 「VB で作っても速度的に実用に値しない」 という事が
確かにあったんだよな。
でも今は PC も充分速いし、AddresOf が加わった事で 「本当にできない」 事も
ずいぶん減ったし、VB で作れないものってあんまり無い気がする。

ちなみに、「VB で WinMX みたいなのを作る」 のは充分可能だと思う。
>>442
VBからじゃCreateThreadによるマルチスレッドが使えないとか、
そういう困難はあるけど、隠し関数だけどVarPtr()とかもあるし、
大抵のことはできるよね。
単にややこしいことをやろうとすると、すごく面倒になるってだけで…。

ちなみに、「VBで作られたWinMXみたいなの」は、すでにあると思われ。
AudioGnomeっていうナップスタークライアントがVBだよ。
「アセンブラなら何でもできる」の対極にあるのが、
「VBでもできる」。

可能か不可能かと聞かれれば、おそらく可能だろうが、
普通はそういうことはしない。
> VBからじゃCreateThreadによるマルチスレッドが使えない

そうか?
>>445
使える方法あったら教えて…。
スレッド作るまでは動くんだが、スレッド内で何かしようとすると落ちるんだわ(笑
ちなみにVB6ね。VB5だと一応使える。
>>444
>「アセンブラなら何でもできる」の対極にあるのが、
>「VBでもできる」。
>
> 可能か不可能かと聞かれれば、おそらく可能だろうが、
> 普通はそういうことはしない。
なにが言いたいのかわからん。
「VB"でも"できる」とか「普通はそういうことはしない」の理由が全く書かれていない。
マルチスレッドSocketサーバーによる,データベースサーバーの実現
http://www.int21.co.jp/pcdn/vb/noriolib/vbmag/9903/db_solu/
別にマルチスレッドをすることが目的じゃないんだから
その他の方法で実現すれば良いじゃん。
フォームを開いてから
メッセージボックスを開きたいのですが、
loadイベントにmsgboxを書いても
開く前に表示されます。
ご存じの方、ご指南おねがいします。
>450
me.show
doevents
さんくすこ。
勉強になりました。
453デフォルトの名無しさん:02/12/20 12:13
番号忘れましたが、以前TabOrderの整列で質問した者です。

そのものズバリのツール(アドイン)がありました。
ttp://www.microsoft.com/japan/developer/library/vb98/vbprotabordertabordervbp.htm

まだ使ってませんが(ていうか、整列は結局自力でやりました)、
とりあえずご報告まで。
>453
おっしゃるとおり、タブの並び替えにはアドインがあります。
これはMSDNのサンプルの中に入っています。

アドイン作る際に大変参考になるソースなのですが、
ツールとしても役立つので、ご覧になると良いでしょう。
455453:02/12/20 14:11
>>454
MSDNとは、、、灯台もと暗し、ちゅーことわざがありましたね。
456 ◆yNrQhFYmm6 :02/12/20 17:15
質問させてもらいまつ。環境はVB6 WinXP
Temporary Internet Filesの中身をまるごと消したいのですが
Dirで回そうとしても、ファイルとして認識されてないのかひっかかりません。
どうにかしたら出来ると思うんですが、どうしたらいいですかね?
>>456

APIかFileSystemObjectで『Temporary Internet Files』内のファイルを検索するとよいでしょう
WinXPで自作アプリ(VB6)を動かしたら『Temporary Internet Files』内のファイルが取得できましたYO
458デフォルトの名無しさん:02/12/20 18:25
VC++でVBって作れるの?
作れるよ
460デフォルトの名無しさん:02/12/20 19:09
VB入門のオススメ書籍ってある?
>>460
スレ違い
462435 MX作者:02/12/20 22:55
>>436-449
MXづくりに必要なキーワードだけでも列挙していただけるとうれしいです。
今はテキストボックスなどの標準コントロールのほかにはInetコントロールしか知りません。
今知ってるキーワードは、
IP、サブネットマスク、Inetコントロール、Winny
ぐらいですか・・・
463435 MX作者:02/12/20 23:02
キーワードをもとに、検索して調べてMXに挑戦しまつ。
464デフォルトの名無しさん:02/12/20 23:13
リストボックスに数を入れていきたいんだけど、
その際に、左から「1 2 3 4・・・」って入れていって、
5の倍数ごとに改行して次の行に入れていくようにしたい。
教えてけろ〜
>>464
VB知らんからアイデアだけ。

bak = 0

for i = 0 to n
if(i / 5 <> bak)
{
kaigyou()
bak = i / 5
}
print(i)
466デフォルトの名無しさん:02/12/20 23:22
>>465
知ったかぶりはやめろ。
C言語がわかるからって全ての言語について語れると思うな。
この馬鹿が。
なにこの痛さは。
>>466
で、>>465のどこがCなんだ?
>>465
折角の気遣いに>>466がスミマセンでした。。
どうもありがとうございます。
>>464も参考になったと思います。


>>466
そんな書き方したら荒れるだろがボゲ!
>>469
おもろいからしばらく泳がしとこう。
まあ
VBユーザから見れば
JavaもCも似てるからな
472466:02/12/20 23:30
やっぱりこの板は低レベルだ。
473↑典型例( ´∀` ):02/12/20 23:30
 
>>466
おめーも知ったかだな。
>>465はCではない。
っで、何言語だ?
>>471 (プッ
476466:02/12/20 23:33
テキストファイルに出力するのとリストボックスに
入れるのとでは話が違うだろ。
それを知らんくせに何が「アイデアだけ」だ。カス。
>>465がC言語って言ってはいないだろう。
>>474
ああ、さっき作った仮想言語だ。
Cで書いてわからんと一蹴されると悲しいんで。

確かVBってFOR TOとか<>とか使うんだったっけかなぁ?みたいなこと考えながら。
ものすごい言い訳だ。
>>476
その通り。出力先はテキストファイルではない。
しかし、出力先が違うだけで考え方は同じ。

まさかリストボックスに文字列を追加するには?すら知らないとは思えんし。
>>478
>>476のことね
>>465がC言語って言ってはいないだろう。

   むぅ?
     ∩∩
     (゜x゜ )○
482466:02/12/20 23:37
>VB厨

この意味が良くわかった。
483↑典型例( ´∀` ):02/12/20 23:38
   
>>466
はやく言ってしまえ。
「私はCを知りません。>>465をCと思いました。」
(ワラ
一つの何気ない質問でなぜか思いっきり荒れてるな。
>>484
自作自演での、

CかJavaか見分けが付かない

と言う言い訳もなかなかおもしろかった。 
一人一人は荒らすつもりは無いのに、みんなでやると荒らしてしまう。。。
こんな感じの格言か諺みたいなのなかったっけ?
>>487
塵も積もれば山となる。
489487:02/12/20 23:57
>>488
あー、それそれ・・・




それか?
490466:02/12/20 23:57
バカが多いなこの板は
偽物っぽいが、いっとくよ
オマエモナー
>>479
なんかいきがってる香具師がいるからちょっとマジレスするけど、

まず、元の仕様は "1 2 3 ..." なのに >>465 は、"0 1 2 ..." となってしまう。
まあ、これは単なる typo に近いもんだと思う。

更に仮想言語の仕様がわからない。
例えば、VBScript みたいなスクリプト言語なら、bak は浮動小数点となるから、
if() 文は、ほぼ常に成り立ってしまう。つまり毎回改行するわけで、これが仕様通りとはとても思えない。
多分 BAK は整数型で i / 5 は FORTRAN みたいに切り捨てしてから比較するような処理系を想定しているんだろうけど、そんなことを説明無しでわかるぐらいならそもそも質問しない。

で、一番致命的なのは...

> しかし、出力先が違うだけで考え方は同じ。

と言うところ。出力先が画面なら、これでもいいんだろうけど、リストボックスは追加と言う処理をしないといけない。
kaigyou() でそれをやるのは当然だけど、n が半端な時は半端分に対する追加処理が行われない。
はっきり言って、使いもんにならない「アイデア」だよ。
↑(プッ
494466:02/12/21 00:14
(´∀` )エヘヘ
つまり>>465がロクに答えられもしないのに適当なコト書いたのが悪い、
と言うことでよろしいですな?
496466:02/12/21 00:21
結局おれ以外バカでいい?
>>464
取りあえずやりたいことが良くわからんけど...

S = ""
N5 = 0
For I = 1 To N
 If N5 = 5 Then
  ListBox.AddItem S
  S = ""
  N5 = 0
 End If
 S = S & Str$(I)
 N5 = N5 + 1
Next
ListBox.AddItem S

ぐらいでどうか。(ただし、N < 0 の時、本来は何も追加しないのがいいんだろうけど、これでは空文字が追加されてしまうのでちょっと注意すること。)

>>495
まあ、そう言うことだろ。
それに、>>466 がわけわからん突っ込みしたから荒れたんだと思うよ。
498デフォルトの名無しさん:02/12/21 00:24
>>466=495
オマエが悪いんだよ。
499デフォルトの名無しさん:02/12/21 00:42
>>496, 466
いいも何もおまえだけがバカですが何か?
いい加減放置しろ。レスした奴=荒らし
501↑典型例( ´∀` ):02/12/21 00:47
                
↓次の質問どうぞ
503デフォルトの名無しさん:02/12/21 23:53
えーっと、ある処理をやっている最中に右クリからポップアップメニューを
表示させると、そのある処理がポップアップメニューが閉じるまで止まって
しまうのですが、処理を中断させない方法ってあります?
>503
VBじゃどう実装するか知らんが、Windwos メニューにはオプションがあるよ。
TrackPopupMenuEx, TPM_RETURNCMD 辺りか。
505VB6.0使い:02/12/22 02:07
VB.NET購入したのだが・・・
6.0のソースって開くことすらできんのね
店員に聞いたら6.0のバージョンアップなんで全然大丈夫ですよ♪
って適当なのもいいかげんにしとけや

ソース一から作り直しっていうのもなんだし・・・
返品に逝くか
>>505
VB6のソースを使えないのは常識だと思ったんだが…
507504:02/12/22 02:42
>503
スマソ、504 は勘違い。
で、単一スレッドでは無理じゃないかな。
>>505
やつらは売るのが仕事だからな。

というか、前作と比べてどういう風に変わったのか、
概要ぐらいは買う前に自分で調べた方がいいぞ。
509デフォルトの名無しさん:02/12/22 06:29
コンボボックス上で表示される複数の選択肢は、参考書等によれば、シート上の
セルから持ってくる場合がほとんどのようです。

ぼくは、VBAそのものにその選択肢となるものを埋め込んでしまいたいのですが、
やり方がわかりません。

で、いろいろ調べたのですが、シート上から持ってくる方法(つまりすでに知っている
方法)しか見つかりません。

C++のように、文字列の配列みたいなかんじでVBAの中に定義して、コンボボックス
のプルダウンメニューから選択できるようにしたいのです。おながいします。
510菊地桃子:02/12/22 09:22
ここって、厨房ばっかりでほんっと
つかえない
511456 ◆yNrQhFYmm6 :02/12/22 11:58
すみません。
あれから何度試しても出来ないんですよね・・・。
サンプルを試しても尽く動きませんし。

なので質問を変えさせてもらいます。
これが出来れば >>456 の問題も解決なので。

Inetコントロールを使ってHTTPでアクセスする際に
クッキーを一切受け取らないようにするにはどうすればよいのでしょうか?
Windowsのクッキー保存の設定依存なのかと思いきや、
インターネットオプションでクッキーを全部拒否にしても
Inetから通信するとクッキーが保存されちゃってます。
では・・・勝手ながらよろしくお願いします。
512デフォルトの名無しさん:02/12/22 14:12
煽りではないが一つ言わせてくれ。
VB厨という言葉がこの板で使われ、VB使いは馬鹿にされている。
それは>>505のような奴が沢山いるからなのだろうと思い始めた。
分析能力がなく単にプログラムを組み、思い通りに動いたからそれでよしと
しているような連中が多いのではないだろうか?
もっと書籍・ヘルプを調べてVBを自分の物にしていくような貪欲な意欲が
ないとこれから先困るぞ。
513デフォルトの名無しさん:02/12/22 14:12
       _/ ̄ ̄ ̄`v―--、
      /       ヾ   \
     /  /       ヾ    \
    /           |ヽ    ヽ
    |           / | \  |
   /    // / ///丿 | | | |ヾ\|
   |  |  /_/_/_/_// __|_|_.|_|_|\ |
   |   | | ヽ-=・=| ヽ-=・=- | ||||
   |   | |     |  |     | |||     / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   |   |   ̄ ̄ ̄/   ̄ ̄ ̄  |||   < 無職童貞35歳守本浩司です。よろしく
   | |  |     ( _⌒_ )    | ||     \______________
   .|    |     _,..、_    /  |
   .|  ヾ |\   `ー〜'    /| | .| http://psycho_boge.tripod.com/index.htm
   |     ゝ\        /| | | |
  |   | ゝ   ~`ー、___/ | |  ||
  ////.∧|         /  | |  | | |
>>512
っで、おまえはどうなんだ。
そんな周知の事実を今更言い出す>512(VB厨代表)の肛門に口つけてウンチ直食い
>>512
あちこちのスレに同じ文コピペしている>>510とかにレスすんなよ。
517 :02/12/22 15:18
"<title>
518デフォルトの名無しさん:02/12/22 16:14
APIビューアが無いんだけど、MSは無料配布してないのかな?
探したんだけど見当たらないのよ〜
APIビューアってVBインストールしたら勝手にインストールされるんじゃないのか。
520デフォルトの名無しさん:02/12/22 16:20
>>519
バージョンやエディションによって、あったりなかったり。。。くすん。
>>520
Cの宣言読んで自分で書きな。VBから他の高級言語にステップアップできる唯一のチャンスだ。
\Microsoft Visual Studio\Common\Tools\Winapi
にないだろうか。ないか。そうか。
MIDIのボリュームを調整するにはどんなプログラムをかいたらいいのでしょうか?
>>523
・ボリュームコントロールでMIDIのところを下げる(内蔵音源以外には無力、名前がMIDI出ないこともしばしば)
・MIDIプレーヤ書いてそれで音源に送るMIDIデータに細工する。
・ドライバ書いてデータをいじれる余地を作る。
・はじめから音量最大でMIDIデータを書く。

525523:02/12/22 18:09
>>524
ボリュームコントロールをマウスでいじる以外はむずかしそうですね。

'宣言部分
Private Declare Function waveOutSetVolume Lib "winmm.dll" (ByVal uDeviceID As Long, ByVal dwVolume As Long) As Long
Private Declare Function waveOutGetDevCaps Lib "winmm.dll" Alias "waveOutGetDevCapsA" (ByVal uDeviceID As Long, lpCaps As WAVEOUTCAPS, ByVal uSize As Long) As Long
Private Declare Function waveOutGetNumDevs Lib "winmm.dll" () As Long
Private Declare Function waveOutGetVolume Lib "winmm.dll" (ByVal uDeviceID As Long, lpdwVolume As Long) As Long
-------------------------------------
'コマンドボタン
Private Sub Command3_Click()
If waveOutGetNumDevs = 0 Then Exit Sub
For lngIndex = 0 To waveOutGetNumDevs - 1
lngRet = waveOutGetDevCaps(lngIndex, WAVEOUTCAPS, Len(WAVEOUTCAPS))
If (lngRet = MMSYSERR_NOERROR) And (WAVEOUTCAPS.dwSupport And WAVECAPS_VOLUME) <> 0 Then If waveOutGetVolume(lngIndex, lngVolume) <> MMSYSERR_NOERROR Then MsgBox "waveOutGetVolumeでエラー!", vbInformation, "確認"
Next
'lngValue = InputBox("0〜65535までの値を設定して下さい。", "入力要求", Val("&H" + Right$("00000000" + Hex$(lngVolume), 4) + "&"))
'lngValue = InputBox("0〜65535までの値を設定して下さい。", "入力要求", 3000)
lngValue = Val(Text2.Text)
If lngValue > &HFFFF& Or lngValue < 0 Then Exit Sub
lngVolume = Val("&H" & Right("0000" + Hex(lngValue), 4) & Right("0000" + Hex(lngValue), 4))

For lngIndex = 0 To waveOutGetNumDevs - 1
lngRet = waveOutGetDevCaps(lngIndex, WAVEOUTCAPS, CLng(Len(WAVEOUTCAPS)))
If (lngRet = MMSYSERR_NOERROR) And (WAVEOUTCAPS.dwSupport And WAVECAPS_VOLUME) <> 0 Then Call waveOutSetVolume(lngIndex, lngVolume): Exit For
Next
'MsgBox "成功!", vbInformation, "確認"

End Sub

WAVはこんなかんじにやったんですけど、MIDIがわからないです。
midiOutSetVolumeとかつかえばいいんじゃないのか?
527523:02/12/22 18:18
>>526
やはりMIDI関係のAPIもあるんですね。
そのキーワードで検索してみます。
528Javaまんせ:02/12/22 20:37
ひごろJavaばっかりでVBの仕事に戸惑ってます。
VBで改行記号がUNIXタイプのファイルをどうすればいいですか?
宜しくお願いします。
>>528
UNIXってことは改行コードはLfだな。
VBではLf は Chr(10)だから
ファイル読み込んだ後に
Text = Replace(Text,Chr(10),vbCrLf)
でWindows形式の改行なデータに置換すればぁ?
530デフォルトの名無しさん:02/12/22 21:29
コンボボックス上で表示される複数の選択肢は、参考書等によれば、シート上の
セルから持ってくる場合がほとんどのようです。

ぼくは、VBAそのものにその選択肢となるものを埋め込んでしまいたいのですが、
やり方がわかりません。

で、いろいろ調べたのですが、シート上から持ってくる方法(つまりすでに知っている
方法)しか見つかりません。

ちなみに、Textプロパティに配列等を代入する方法も試しましたが、ダメでした。

C++のように、文字列の配列みたいなかんじでVBAの中に定義して、コンボボックス
のプルダウンメニューから選択できるようにしたいのです。おながいします。
>>530
死ねクソマルチ。
532Javaまんせ:02/12/22 21:32
>>529
それじゃあ無理っすねー
ファイルから読みこむ際の問題なので、その例でいうとTextが取得できなくて困っているという状態です。
>>532
なんのこっちゃ?
テキストモードで読めば1行で出てくるからそのまま扱える。
バイナリモードで取れば逐次処理すればよし。
>>532
はん?読み込めない訳?
普通に読み込めるぞ・・・改行コードがCrlfでもLFでもCrでも。
シーケンシャルアクセスで何事もなく。
532の土下座はまだですか?
.NETに乗り遅れた劣等種。
537デフォルトの名無しさん:02/12/23 14:56
Contorols.Addって、コントロール配列には出来ないですよね?
>>537
メソッドだからな。
539デフォルトの名無しさん:02/12/23 16:12
すいません。教えて下さい。

type aaa
aaa1 as string
aaa2 as string
aaa3 as string
end type

と定義して、

aaa.aaa1 = "test1"
aaa.aaa2 = "test2"
aaa.aaa3 = "test3"

と書いてるのをFOR文でまわしたいのです。

for i = 0 to 3
aaa.????? = "test" & i
next

このaaa.?????の部分をどう書いたらいいのか教えて下さい。
>>539
素直に配列にした方がいいと思うけれど。
541539:02/12/23 16:24
>>540
わけあってTYPEつかってしまっているのですよ。
ほら、クリスマス近いですから、はい。
>>541
しょうもないことで現実逃避してないでさっさと仕事終わらせろよ。
VB6なんですが
Formのダブルクリックを判定するので
Form_DblClickを使っているのですが
これ、何故か右ダブルクリックまで反応してしまうようです。
今やっていることはダブルクリック時のみに起きてほしいのに
右ダブルクリックまで反応されちゃぁ困るんです。

右ダブルクリックな場合は処理をしないようにしようかと思ったんですが
Form_BblClick() とあるだけなので、右な場合に特定のパラメータがついたりしないし
もうどうしたらいいやらで困ってます。
右ダブルクリックには反応しないようには
どうやったらできるのですか?
544デフォルトの名無しさん:02/12/23 17:02
あげ
545デフォルトの名無しさん:02/12/23 17:05
ListViewコントロールをlvwReportにして、表のようにして使っています。
これに登録されたアイテムを任意に並べ替えたいのですが、
(カラムをクリックしたときのソートではなく)
どうすればいいんですか?
各項目をそれぞれ変数に入れて置いて、
入れ替え先のデータを入れ替え元の項目に入れて、
変数に入れておいたのを入れ替え先に戻せばできそうですが、
やっぱりそんな処理を書かないとできませんか?
ソートは出来るので、何かうまい入れ替え方法があるような気がして。
546デフォルトの名無しさん:02/12/23 17:34
アクセスの特定のテーブルのデータをフォームで開いているとき、
そのデータのみをエクセルの、シートとセルを指定して出力するって
可能ですか?
どんなコマンドを使ったらいいでしょう。
>>543
VBはよく知らんが、直前にMouseDownやMouseUpが発生するんだから
その時に(押されたボタンを)変数に保存しとけばいいだけだろ。

または GetAsyncKeyStateを使って判定するか。
>>547
まぁ、どれくらいの間隔ならダブルクリックと認めるかとか結構面倒なんだけどね。と。
549546:02/12/23 17:44
なんか過去ログを見ていると、罵声が返ってきそうで恐ろしくなってきました。
ここは初心者が来たら怒られるスレなんですね。
出直します。
>>546
コマンドも何も、
CreateObject等で起動したエクセルのセル(Rangeオブジェクト)に
フォームの値を代入すればいいだけ。
551547:02/12/23 17:51
>>548
ネタですか?
右か左かを判定すればいいだけなのに間隔なんて関係ないだろ。
それとも 547の意味を誤解してるのかな。
>>549
初心者と素人とバカは明確に区別されるよ。初心者は暖かく迎えられる。
>>551
DblはDouble(ダブル)の略語です。VB厨より頭悪いんかいな?
554547:02/12/23 18:04
>>553
> DblはDouble(ダブル)の略語です。
それが何か?
これしきのことをサンプルを見せないと理解できんのか?
こんなに頭が悪いVB厨は初めて見た。

Private m_Button As Integer

Private Sub Form_MouseUp(Button As Integer, 以下略....)
  mintButton = Button
End Sub
Private Sub Form_DblClick()
  ここで m_Button を判定すればいいだけ
End Sub
555554訂正:02/12/23 18:05
変数名にミスがあったわ。
mintButton = Button

m_Button = Button
質問者以外に醜いVB厨が居るようなので
547さんに代わって、も1つの方も。

Private Sub Form_DblClick()
 If GetAsyncKeyState(2) < 0 Then
   Debug.Print "(・∀・)"
 End If
>>545は無理ですかね?
やっぱり一回適当な変数に待避してから入れ替えるコード書かないとだめですかね。
別にそれでも思い通りには動くけど、スマートな方法があるならそれに越したことないし…。
>557
次回に復元しなくていいの?
>>556
ちなみに < 0 が無くてもTRUEとみなしていけたりする。
>>559
それだと &H1が返ってきた時に正しく判定できないと思うが?

で、それとは関係ないけど、
コンパネでマウスを左利き用に設定している環境でも
動くようにするなら GetAsyncKeyStateの引数を
GetSystemMetricsで 判定してから切り換えるように
しないといけないね。
561デフォルトの名無しさん:02/12/23 22:25
漢字の読みをローマ字で返す事はできないでしょうか?
kanji2yomi("漢字")とすると"kanji"を返すような関数が欲しいんですが。
>>561
読み仮名取得するAPIはある。
IMEを利用するとよい。
564デフォルトの名無しさん:02/12/23 22:54
モテるAPI教えろ!
早くしろ!
>>564
rm -rf /
>>565
それ API じゃな...
>>564
Public Function Declare RepeatLove Lib "motel64.dll" Alias RepeatLoveX
(ByVal mame As Boolean,ByVal aisyo As Boolean) As LOVE
568デフォルトの名無しさん:02/12/24 04:47
VBSでの正規表現についての質問です。

Function example
Set objReg = New RegExp
objReg.IgnoreCase = True
objReg.Global = True
objReg.Pattern = "^。"
example = objReg.replace("あ。い。う。え。お。", "")
End Function
MsgBox(example)

みたいにして、出力が"あい。う。え。お。"となるように、
先頭の。だけをPatternを指定したいのですが、どうも上手くいきません。
Hex(Asc("。"))の出力が8142だったので、Patternを"^\x8142"ともしてみましたが、
それも駄目でした。
どうすれば文字列の先頭の"。"だけを正規表現で指定できるのですか?
569デフォルトの名無しさん:02/12/24 10:27
VB6.0の環境でソフト作成やっているのですが
VB.netの勉強のために入れたいです。
この場合6.0の開発環境は失われるのでしょうか?
6.0の使用も続けたいので。
どなたか詳しい方・経験者の方お願いいたします。
>>569
つまり VB6とVB.NETを同時にインストールしたいという事...ですよね。

過去にVB5とVB6を同時にインストールしてはいけないとマイクロソフトが言っていました。
VB5と6を使いたい場合はそれぞれ専用環境を用意しろとの事...。

VB6とVB.NETも同じかな?(よく知らないけど...)
571デフォルトの名無しさん:02/12/24 10:47
VB6とVB.NETは共存可能
>569
ほい
ttp://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vbcon/html/vbconworkingwithbothvisualbasic60visualbasicnet.asp
>Visual Basic .NET と Visual Basic 6.0 は、同じコンピュータにインストールして同時に動作させることができます。
>同様に、Visual Basic .NET で作成されたアプリケーションと Visual Basic 6.0 で作成されたアプリケーションは、同じコンピュータ上にインストールして実行できます。

俺はまだ入れてないからわからんが、M$だけに「実はね」ってのが無いのか心配。
573デフォルトの名無しさん:02/12/24 11:04
>>570-572
ありがとうございます
上記のアドレス見る限り大丈夫そうですね
572さんの言うとおり「実はね」っていうのが怖いですね・・・
DLLとかは新しくなってしまうとなるとコンパイルしたやつをInstallShieldに
もっていったときが怖いな
やっぱり別のPC用意したほうが無難かな?
まったく別のDLLを使うのに新しくなるもないと思うが。
575デフォルトの名無しさん:02/12/24 20:41
MsgBoxを出すと音が出ますが、第二引数の値によって音が変わります。
ヘルプを調べてもどの音が出るのか書いてありません。
第二引数と音の関係を教えてください。
コントロールパネル > サウンド で分かります。
577575:02/12/24 20:56
>>576
こんな感じになるのでしょうか。
vbCritical → 一般の警告音
vbQuestion → 問い合わせ
vbExclamation → 警告
vbInformation → 情報
>>568
^(。)
あるバイナリファイルの〜バイト目から〜バイト目を抜き出すプログラムのサンプルをお願いします。
mp3音楽ファイルのお気に入りの部分だけを抜き出したいです。
あんた無茶だ
581579:02/12/24 21:35
>>580
mp3やmpgは途中だけ抜き出してもちゃんと再生できるんですかねぇ
582 :02/12/24 21:37
2 / 7 = 0.2857・・・
のような計算の結果を浮動小数点数型で扱いたくないときは、
例えば小数第3位までの結果を欲しいときは、
Cint(2 * 1000 / 7) のような形で整数として保持しておくのがいいのか、
Ccur(2) / 7 のように計算して、固定小数点型として保持しておくのがいいのか
どちらなんでしょうか。
>>579
だからフォーマット調べろと何度も言われてるだろうに。。
根気よく検索しなさい
584579:02/12/24 21:50
>>583
ぼく神様っているとおもうんです。
放置ケテーイ
ぼく氏んだ方がいいとおもうんです。
馬鹿は私一人で十分で御座います。
588デフォルトの名無しさん:02/12/24 22:02
VB6から Media Player をWMAやMP3をかけながら立ち上げるにはどうしたらいいです?
589579:02/12/24 22:04
>>585-587
神様はわざわざ調べてきて教えてくれる すごいでしょ
590579:02/12/24 22:15
ちょっと出かける
591579 ◆OQZxZy6lco :02/12/24 22:24
返ってきたぞ。
サンタさんまだぁ〜〜?
30過ぎてなに逝ってんだアンタ
>>591

  ∧_∧
 ( ´∀`)< ぬるぽ
594デフォルトの名無しさん:02/12/24 22:36
>593
ぬるぽって何だよ?
面白くも何とも無い。やめれ!
必死だな(・з・)
596579 ◆OQZxZy6lco :02/12/24 22:46
わからないなら無理して書き込まなくても良いよw
>>596
わからないなら無理して書き込まなくても良いよw
598593:02/12/24 22:50
ごめんねw
次の質問どうぞw
VB って何ですか?
>600
ここは初心者スレ!
入門者はお呼びでない。荒らすなヴぉけ。
あ、よかったらでいいんで、>>588お願いします。
603579:02/12/24 23:07
だからバカな解答者がでしゃばんなって
604579:02/12/24 23:08
が何人もいるような気が・・・
>>602
意味が分かりません。
開発環境と共にWMPを起動?
BATファイル書けば良いと思いますが、それVBの質問?
mp3のフォーマット知りたいの?
607588:02/12/24 23:17
読解力なさすぎ?!
>>605
あのですね、Shell()使ってコマンドライン引数あたりでファイル指定して
WMPで曲をかけられないかなと。。。分かりづらくてすんません。
>>605
まぁ、バッチファイルという名も知らない素人が出る幕じゃねぇってこったな。
610D:02/12/24 23:23
>>588

d = Shell("D:\Program Files\Windows Media Player\wmplayer.exe /Play c:\Hoge.mp3", vbNormalFocus)
(´∀` )エヘヘ
>>610
ありがとうございました。メリークリスマス!
>>610
エラーが出ます。。。
614568:02/12/24 23:26
>578さんのように書き直して実行してみましたが、やはり、結果は同じで、
出力は"あ。い。う。え。お。"でした。
試しに、"。"の部分を","に変えてやってみても、"あ,い,う,え,お,"という結果が返ってきます。
"^"を取って、Patternを"。"などにした場合は、ちゃんと"あいうえお"
というように返してきてくれるのですが…

どうも、"^"の部分がこちらの意図通りに作用してくれていないみたいです。
こちら↓のドキュメントを参考にしながら作業しているのですが、仕様の変更とかは無いですよね??
http://www.microsoft.com/japan/msdn/columns/scripting/scripting051099.asp
615D:02/12/24 23:32
>>613
ネタかも知れんけどとりあえずレス。

要は
エクスプローラからツール-フォルダオプション-ファイルタイプを開いてmp3を探して
その詳細設定を開きます。Playの内容を参考にしてみれば。

ちなみに自分の環境はOSがDに入ってるからDドライブになってる。
>>613<>俺ですが、やってみたところ結局俺もだめだったので、
>>615を参考にさせてもらいます。
617<>俺ですが:02/12/24 23:42
おまえたれだよ
俺は俺だよ。
たれ・・・ですか
イヴの夜に2ちゃんで騙り合いか。寂しい奴ら
オマエモナー
"wmplayer"だけで大丈夫だし
>>622
ネタは結構
624?:02/12/25 00:00
>>606
だけがたより
>>618
名曲みたいなフレーズだな「俺は俺だよ」って。
コマンドラインすら知らないなんて。
hage
俺は君だよ

君は俺だよ
俺は誰だよ?
黄昏は少し暗くなってきて、少し遠くにいる人が、
「たれそ彼」(彼は誰?)な状態から来たんだよ。MSDNに載ってるし。
>>630
何でもありか。MSDN
632 :02/12/25 14:53
VBAでの質問です。
既存のMDB=A
他のMDB=B

A→Bへテーブルを送る場合は、

"SELECT * INTO Aのテーブル IN B.mdb"

で可能ですが、

A←Bへテーブルを送る(コピー)場合はどのようにしたら良いでしょうか?
633:02/12/25 16:47
>>632
select * into hoge from hoge in b.mdb
で出きると思います。
634 :02/12/25 17:13
>>633
サンクス!!
>>633
なぁ、SQLの質問ですが。が適切じゃないの?
636:02/12/25 18:49
>>635
「。」って、from のことですか?

select * into dest from src in db
で、データーベース db のテーブル src を destとしてコピーする。
select * into dest in db from src
だと、テーブル src をデータベース db に dest としてコピーする。

問題なのは from ではなく in 句の場所です。
>>636
おまいはアフォか。
635 は 「SQLの質問ですが。」 が適切じゃないの? と言ったんだ。
あんたの質問は 「VBAでの質問です。」 と言うにはふさわしくない。
638637:02/12/25 19:02
> あんたの質問は 「VBAでの質問です。」 と言うにはふさわしくない。

すまそ、「あんた」 じゃなかったね。632。
639:02/12/25 19:18
>>637
ああ、そういう意味ですか。
私に対するSQLの質問かと思ったので、素っ頓狂なことを書いてしまいました。

ハズカシ。
なるほど、
なぁ、SQLの質問ですが、 「。」 が適切じゃないの?
と理解したわけね。


・・・635 出て来いw
日本語って難しいねぇ。

635の意訳:
ところで、>>633は、
「SQLの質問ですが。」 って書くのが適切じゃないか?

って訳か。
>>641
それが適切だとスレ違いだからさらにややこしい。
643デフォルトの名無しさん:02/12/25 21:35
誰か・・・・・・Win32api.txtをくれ・・・・・。
API関数の勉強がしたくても、田舎で本が無いし、おまけに俺は
ラーニングエディションでAPIビューアも付いていない・・・。
くれ〜〜〜〜〜・・・・・・。
644 :02/12/25 21:37
VB6インストール後、最近のservicePack当てたら
DBGridが使えなくなってしまった〜〜。
645デフォルトの名無しさん:02/12/25 21:52
NETの魅力のため勉強がはかどらず
しかしNETを導入出来ないWin98環境・・・
どうしよう。
>643 俺もいろいろDLしたが、何がなにやら・・・
   やはり本を買わんと理解するのは難しいのか・・・で、避けてる。
なるほど冬休みか。
647デフォルトの名無しさん:02/12/25 23:37
ふざけんな!
>>644
SP5当ててるけどDBGrid使えるぞ。
>>643
あれ、勉強の役には建たんよ。
単なるヘッダーに過ぎないし、それで理解が深まる訳でも何でもない。
以上、Cプログラマより。
650644:02/12/26 00:26
げ?!まじですか・・・。
なんか、DBGRID.OCXがないんすよね・・。まいりますた。
>>649
確かに。抽象クラスを読むようなもんだな。

by java厨。
しかもヘッダーが間違ってることが(´・ω・`)
653デフォルトの名無しさん:02/12/26 01:42
こんばんは〜
webbrowserコンポーネント上で,
右クリックし,コンテクストメニューを開いて,
そのメニューをショートカットキーで選ぶことってできますか?
webbrowser以外にボタンを一つ配置して,
@ボタンをクリックすると,
A指定した場所へマウスの標準が合わされ,
Bコンテクストメニューが開き,
Cキーによって項目が選ばれる
というものです.
まず自分はCommand1_Clickの部分に
SetCursorPosを使って,標準を合わせ,
mouse_eventによって座標を拾い,
コンテクストメニューを表示させるまでは行ったのですが,
キーによって項目を選ぶことができません.
例えば貼り付けを選択するならば,
「sendkeys "p"」でいいと思うのですが...
どうやら別の部分で押されているようです.
webbrowserがform1上にあるから,form1上でかな.

プログラムとしては
Dim Poi As POINTAPI
GetCursorPos Poi
Call mouse_event(MOUSEEVENTF_RIGHTDOWN, _
Poi.x, Poi.y, 0, 0)
Call mouse_event(MOUSEEVENTF_RIGHTUP, _
Poi.x, Poi.y, 0, 0)
SendKeys "p"
この過程でやっています.(定義など省略しますがw)
どなたかわかる方がいればご教授御願いします.
>>652
よくあることだ、気にするな。
とりあえずSDKをダウンロードしな。
UNLHA32.DLLを利用してlzhを解凍する必要があるソフトを作ってるんですが、
これで解凍すると解凍中を示すダイアログが表示されます。
これを非表示にしてコッソリ解凍できるようにしたいんですが、
どうしたらいいでしょうか。
657ちんたま:02/12/26 11:04
vb6です。
対象となるフォームが他のアプリを含めて常に画面の一番上にある状態にするにはどうしたらいいですか?
昔vb4で遊びで作った物が見つかったので動かしてみたんですがちょっと動作が違うのです。
昔作ったものはどういうものかというと、どんなアプリ立ち上げてもそれが常に画面の一番上にあって
他のアプリが動かせないというただのいたずらソフトでした。
フォーム呼び出すときにモーダルにしたり試したけどだめでした。

---------------------ちなみにそのソース(抜粋)---------------------

Private Sub Form_Load()
Timer1.Interval = 1
End Sub

Private Sub Timer1_Timer()
Me.Show
End Sub
SetWindowPos
659デフォルトの名無しさん:02/12/26 11:37
日付関連でお聞きしたいのですが、
141225の文字列を
20021225に変換したいのです。
ちなみに逆は出来るのですが・・・
色々試してみたんですが、どうも上手くいきません。
何か方法があればご助言お願いします。
>>659
MID$ LEFT$ RIGHT$ Val CInt CLng
この辺キーワードで。
>>659
Cdate("平成14年12月25日")
>659
元号指定してる?
663ちんたま:02/12/26 11:51
>>658
出来たよ〜!サンクスコ
664デフォルトの名無しさん:02/12/26 11:51
お答えどうもです。

ちなみに自分で試したのは
Format(Mid([年月日],1,2) & "/" & Mid([年月日],3,2) & "/" & Mid([年月日],5,2),"ggee/mm/dd")
だったんですけど、
これだと平26/12/25になってしまい・・・(−−;
一応660さんのキーワードは私もよくつかって日付変換をやっているので、分かっているつもりだったんですが・・・


ちなみに、年月日に141225という値が入っています。
他にももちろん13年の値(131225とかも)入っています。

>>662
平成と決め打ちしたDQNデータなんじゃない?
しかし昔の汎用機じゃないんだから、いまどき
そんなデータ形式もないような気がするが・・・
666デフォルトの名無しさん:02/12/26 11:52
>>662
元号指定はありません。
そのまま
141225
とか
141110
とかの値が入っています・・・

客のアホーーー!
もう一つのマスタの日付データははちゃんと西暦なのに・・
>>666
とりあえず自分の発言番号を名前に入れるように。
>>664のソースに足りないのは元号指定だ。
平成かHを頭につけろ。
668659:02/12/26 11:56
>>667
ああ、そういえば居れてませんでした。すみません。慌ててたもので^^;

とりあえずはHを頭に付加したらできました。
とりあえずはこれでやってみようと思います・・その場しのぎですが・・・−−;
昭和のデータがないのが幸い・・


回答くださった方有難うございました。
669662:02/12/26 12:01
>666
年を西暦下2桁と判断するからね。(2014年)

もし仮に>665さんの通り決め打ちで「平成」固定なら、
年の頭に"h"でも"平成"を付けてみたり、年に1988足すなりで対処は出来るよ。

Format("h" & Mid([年月日],1,2) & "/" & Mid([年月日],3,2) & "/" & Mid([年月日],5,2),"yyyymmdd")
Format(1988 + CInt(Mid([年月日],1,2)) & "/" & Mid([年月日],3,2) & "/" & Mid([年月日],5,2),"yyyymmdd")
670662:02/12/26 12:02
煤i ̄□ ̄;)

おそかった…( ´・ω・`)ショボーン
今頃遅いと思いますが... >>643

VB付属のAPIビューアのWin32api.txtは間違いがあります
その間違いを修正したWin32api.txtがベクターで公開されてたYO
>>656
「-n」をスイッチに入れればよかったかと。
Unlha32.dllのCommand.txtに載ってるから詳しくは自分で確認してくれ。
>>656
Unlha32のSDKをよーく嫁
あぁんごめんよ>>672
675デフォルトの名無しさん:02/12/26 15:01
VB.NETを購入したのですがコントロールにあるVideoSoftのVSFlexというOCX
は配布可能な物なのでしょうか?使って配布不可だったら悲しいので。
>>672
そのスイッチは知らなかった。(つうか考えたこともなかった)

ダイアログが表示されないと中止もできないし、俺的には使い勝手が悪いのだが・・・。
677656:02/12/26 15:07
>>672-673
あああそんな単純な事だったんですね。
てっきり強制的に表示されるものかと思って、
API駆使して無理矢理非表示にしたりしないとだめかとおもってました。
ありがとうございました。
>>675
スレ違い。

【老若】VB.net質問スレ【男女】
http://pc3.2ch.net/test/read.cgi/tech/1025848458/l50
679そろそろVB半年目:02/12/26 18:22
XMLファイルをVB6上で色分けして表示するのに便利な表示用コントロール
とかあるんでしょうか?リッチテキストで試していますが、他にスマー
トな方法をどなたかご存知ありませんか?

ご存知じゃありません。すみません。
681そろそろVB半年目:02/12/27 09:11
ぷっつり途絶えてしまったようだ。
ぷっつん逝ってしまったようだ
あー、仕事納めか?
土日になると一気に寂れるからな、このスレ。
…つーか、仕事でやってるレベルのヤシはここで質問とかしないかな。
禿げれば尊し 我が師の頭
残れる髪の毛 はや数本
思えば愛とし この一本
今こそ別れ目 いざさらば
>683
ここは完全に初心者だ炉
しかし、現場にはこれ以上のツワモノも平気な顔してプログラムを組んでいるぞぇ。
いや、明らかに仕事と思われる方々がよくいらっしゃっているが・・・
>>684
懐かしいな
ここが完全に初心者スレなら普通スレも作ったほうがいいな。
689デフォルトの名無しさん:02/12/27 12:33
>>688
いらねーよ(w
>>688
それよりか次からスレタイの「初心者」を消せ。
  ハハハ
  ∧_∧  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ( ^∀^)<  あほか
 ( つ ⊂ ) \_________
  .)  ) )
 (__)_)     (^∀^)ゲラゲラ キエロ カイセンキッテクビモキレ ケラ
BASICは「Bginner's All purpose Symbolic Instruction Code」
だから合ってるじゃん。Part19まで続いたんだから今のままでいいだろ。
>>692
そうすると初心者という言葉が重複することになる。
荒れにくいから入っていたほうがいいんだよ。VBで上級者気取りすると荒れるから。
初心者という言葉が掛かる先は重複してないが、バカか?ワラ
>>695
それでは、その初心者という言葉が掛かる言葉はどこか?
その答えが>>692が間違っていることを示す。
>>694
逆に初心者が多く集まって荒れるということもある。
Code、スレ
初心者が書き込みやすいからいいんだよ。
>>697
( ´,_ゝ`)プッ
701デフォルトの名無しさん:02/12/27 12:51
お前らバカだなあ(´∀` )エヘヘ 
>>700 いい加減コピペは辞めようね。ウザイから。
703 :02/12/27 12:52
自分が上級者とおもってる馬鹿が初心者を煽るから必要
>>702
顔真っ赤ですよ?w
  ハハハ
  ∧_∧  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ( ^∀^)<  あほか
 ( つ ⊂ ) \_________
  .)  ) )
 (__)_)     (^∀^)ゲラゲラ キエロ カイセンキッテクビモキレ ケラ
706VB初心者:02/12/27 12:55
VBの配列は1から始まるんですか?
>>706
らしいよ。怖いね。
>>703
正解。初心者という言葉がはずされると煽れなくなるから困る。
絶対初心者という言葉をはずすな。新しいすれも立てるな。
Option Base [0 | 1]
dim aAry(1 To 20) as Integer

VB.NETは必ず0オリジンだから気をつけとけ。
>>706
「VBばかりやってると馬鹿になる」のシロウト馬鹿の発言を
こっちに持ってくるな。
http://pc3.2ch.net/test/read.cgi/tech/1029782976/200
711VB初心者:02/12/27 13:00
710さん、
ネタにしてもつまんね。
>>711
顔真っ赤ですよ?w
713679:02/12/27 13:08
誰かお願いします。
>>713
IEコントロール使えば?
715688:02/12/27 13:11
俺のちょっとした一言で荒れるなんて・・・。VB使いはわざわざ荒らさないし。
よっぽどこのスレにはVBと関係ない厨房が粘着しているみたいだな。
716679:02/12/27 13:13
編集できないよ?
>>688
なにこの粘着
( ´,_ゝ`)プッ
>>716
大変だね。
720 :02/12/27 13:29
>718

大変だね。
>>679
知らないけど、まともなレスが無いってことはないんじゃない?
リッチテキストを使って自作できる技術があるんだからそのままやったら?
VBのリッチテキストはNT系OSだとヤヴァヤヴァだけどね。
>722
やべーの?詳細キボンヌ。
>>723
ヤクザがきます。
725 :02/12/27 15:21
>724

もしかして大爆笑ねらってる?
>>725
いや、狙って書くとかえってつまんないじゃん。
適当に書いて受ければそれでよし。これ基本。
727デフォルトの名無しさん:02/12/27 16:21
vb6でコードの窓を閉じるときのショートカットキーって?
728デフォルトの名無しさん:02/12/27 16:21
InetコントロールのExecuteメソッドにヘッダを渡してやる時に、
"x-hoge:"みたいな、おかしいヘッダを入れると、35756のエラーが出てしまします。
これはいいんですが、一旦これが出ると、二度とそのInetコントロールが使えなくなってしまいます。。
これを解消する方法はあるのでしょうか。。。

もう一つ、サーバーから返答がない場合にCancelが上手く動かない場合があります。
このへん、なんとかならないでしょうか??
729デフォルトの名無しさん:02/12/27 16:25
補足
35756のエラーが出た後も、返答がなくてCancelが出来ない時も
何をしても35764が出てしまいます。
>>728
変なヘッダを使うだけではそうならないはず
ヘッダの値が何もない状態でExecuteすると35756エラーになるが・・・。

"Referer: http://www.google.com"
なら当然平気だが
"Referer: "
だと35756エラーになる。

"x-hoge: hogehoge"
なら平気だが
"x-hoge: "
だと35756エラー。

全く見当違いなレスだったらスマソ
>>730
ヤクザがきます。
732デフォルトの名無しさん:02/12/27 20:55
質問しまつ。WindowStyleの事について。
今、自アプリでないWindowのサイズ変更可・不可を設定できるような事を実装したくて

Dim OldStyle As Long
Dim NewStyle As Long
OldStyle = GetWindowLong(Hwnd, GWL_STYLE)
NewStyle = OldStyle Xor WS_THICKFRAME
Call SetWindowLong(Hwnd, GWL_STYLE, NewStyle)

こんなコードを書きました。
これで、サイズ変更可・不可を交互に入れ替えれるようなんですが
そうではなくて、今の状態がサイズ変更可でも、不可でも
サイズ変更可の状態にする、みたいな事がやりたいです。
また、その逆で、今は可でも不可でも不可にする、ってのも必要なんです。
どうすれば上記のような結果を得られるのでしょうか。
733>732:02/12/27 21:12
をいをい、人のアプリに勝手にちょっかい出すなよ。
>>732
どうぞ。としか。
735732:02/12/27 21:24
>>733
すみません・・・
どうしても、な理由があっての事なのです。

>>734
やり方がわかれば苦労しないんですけどね。
>NewStyle = OldStyle Xor WS_THICKFRAME
ここらへんをどうにかするのでしょうか。
Xorだから交互に変わるのだと思うんですが。
>>735
はい。論理演算わかってるならできるっしょ・・・。

足すときはorで引くときはnandかandnotで何とかならない?

737デフォルトの名無しさん:02/12/27 22:13
EXCEL_VBAでメール送受信はどうすればできますか?
出来ればメソッドを教えてください。
WINではApplication.SendMail で Recipient:="" , Subject:=""
で桶だったのですがMACではサパーリ解りません。
>>737
SMTP案外簡単。
739デフォルトの名無しさん:02/12/28 15:09
age
740732:02/12/28 15:34
>>736
言われた通り or とか and not とかやってたら
それらしい事が出来ました。
ありがとうございました。
741737:02/12/29 00:02
>>738さんどもです。
SMTPですか!無知ですがネットで検索してみます。
アリガトウごじゃります
742デフォルトの名無しさん:02/12/29 05:24
VB6にて質問です。
やりたいことは単純明快で
デスクトップ上のアイコンを全て(一時的に)見えなくしたいのです。
壁紙は見えてかまいませんが、アイコンだけは全て見えなくしたいです。
で、やりかた調べてたら、デスクトップのWindowHandleを取得して
ShowWindowで消してやればいいと書いてあったのですが
それでやると、ほんとに全部消えちゃうんです。
右クリックメニューとかでない状態になってしまうんです。
これでは、まずいんですよね。

基本的なデスクトップの動作をさせつつ
デスクトップ上のアイコンを一時的に非表示にするにはどうすればいいですか?
ちなみに、これを実装できているアプリがあるので出来るはずなんです。
>742
質問1: それ出来たとして、そこからデスクトップにファイル置いたらどうする?
質問2: 仮想デスクトップを使っている場合はどうする?
質問3: Win2kのアクティブ デスクトップ - アイコン表示は無視?
質問4: 実装できているアプリとは何でつか?
つぅかしょうもない1アプリにデスクトップいじられたらたまったもんじゃないが。
すみませんが質問です。
pictureボックスにbmpなどをロードしておき、そこへLineメソッドなどで描画します。
これを他のpictureボックスへPaintPictureなどでコピーすると背景の画像のみがコピーされます。
Lineメソッドなどの描画もいっしょにコピーしたいのですがどうすればよいでしょうか?

746745:02/12/29 14:10
>>745
PaintPicture.Picture2 Picture1.Picture
ではなくて、
PaintPicture.Picture2 Picture1.Image
かな
747742:02/12/29 14:17
>>743
> それ出来たとして、そこからデスクトップにファイル置いたらどうする?
基本的に非表示になっているだけなので
ちゃんとデスクトップにファイルは保存されているでしょう。
元に戻した(非表示を解除した)時にちゃんと表示されるはずです。

> 仮想デスクトップを使っている場合はどうする?
そもそもデスクトップとしての領域全体を非表示にするので
仮想デスクトップ部分も含めて非表示になります。
確認済み。

> Win2kのアクティブ デスクトップ - アイコン表示は無視?
それでアイコンが消せる事は知っているのですが、98の場合も必要で・・・。
ちなみにその設定を無視して非表示にしたいです。

> 実装できているアプリとは何でつか?
FinderSystemというフリーの凡用ウィンドウスタイル変更ツールです。
これでデスクトップを対象に「非表示」設定にしてやると
私が望んでいる効果がばっちり現れます。

>>744
外部に公開するような用途では内のでご安心ください。
748743:02/12/29 15:23
>747
暇なのでFinderSystemとか言うの見てみた。
□可視チェックボックスをoffにした場合ね。
単にVISIBLEビットが落ちてるだけと思うが、ShowWindowが余計なんでないの?

FinderSystemは単純な事をやるツールだから判るけど、キミの要望はどうでしょう?

検討1: アクティブ デスクトップじゃ何も起きないよ。
検討2: アイコン消えてからデスクトップにファイル作ったり、最新情報更新すると元の表示状態に戻るよ。

キミが何をもってFinderSystemがばっちりなのか...疲れた。
749742:02/12/29 15:26
>>748
そうですか。
じゃぁ諦めます。
750デフォルトの名無しさん:02/12/29 22:49
IDEを人前で発音するとき、みなさんはどう呼んでますか?
>>750
VBと何か関係が?
>>750
アイディーイー

>>751
VB だって IDE だろう。
>>751-752
ありがとう助かります。
今VBの参考書を読んでいたところ出てきたもので聞いてしまいました。
スレ違いでしたら申し訳なかったです。
そこにVBがあるからVBを使うのさ
755デフォルトの名無しさん:02/12/29 23:06
ヴィービー
魔少年ヴィービー
IDEの巨人
冬厨あほらしか
759 ◆OVCBb2dRbg :02/12/30 03:51
ファイルのパスから、そのファイルのアイコンを取得するにはどうすればいいですか?
それも実行形式のファイルのアイコンだけではなくて
たとえばtxtだったら、拡張子txtに関連づけされたアイコンがあるはずですよね。
そういう関連づけされている場合も含めてアイコンを取得したいというわけです。
つまりは、実際にエクスプローラで表示されているアイコンと同じアイコンを
取得できれば万々歳ってことです。
ヒントでもいいのでよろすくおながいしまつ。
760デフォルトの名無しさん:02/12/30 05:08
>>759
SHGetFileInfo はどないだ?

761デフォルトの名無しさん:02/12/30 12:49
Dim Ret As Long
ReleaseCapture
Ret = SendMessage(Form1.hWnd, WM_NCLBUTTONDOWN, HTCAPTION, 0)

これでウィンドウを動かせるらしいけど

Dim Ret As Long, Ret2 As Long
ReleaseCapture
Ret = SendMessage(Form1.hWnd, WM_NCLBUTTONDOWN, HTCAPTION, 0)
Ret2 = SendMessage(Form2.hWnd, WM_NCLBUTTONDOWN, HTCAPTION, 0)

で2つのウィンドウが動かせないのはなぜ?
APIコピペしかできないんで分かりません。
>>761
>これでウィンドウを動かせるらしいけど

まず、上のコードだけで動くのかどうか検証すればどうだい?


それはともかく。冷静に考えて1つのポインティングデバイスで二つのウインドウの
タイトルバーを同時にプレスすることは不可能なわけだが。
763761:02/12/30 12:54
>>762
上のコードだけ、下のコードだけだったら動きます。
単純に2つ並べたら動くはずなのに動かないんで困ってます。
なにしろAPIの根本が分からないんで。
> Ret = SendMessage(Form1.hWnd, WM_NCLBUTTONDOWN, HTCAPTION, 0)

これは、ウィンドウのタイトルバーのクリック (ただしボタンを離さない) を
エミュレートしたもの。

> これでウィンドウを動かせるらしいけど

動かない。
マウスや方向キーによってウィンドウが移動できるようになるだけ。

> で2つのウィンドウが動かせないのはなぜ?

同時に 2 つ以上のウィンドウをドラッグできないから。
>>763
理解できないところは無視。悪い癖だと思われ。
766761:02/12/30 12:57
>>764
同時に2つ以上のウィンドウをドラッグしたいときはどうすれば?
767761:02/12/30 13:00
>>763
APIを丁寧に解説したサイトがなくて…。
オレも理解したいです。
>>766
無理でしょう。
770761:02/12/30 13:03
>>768
無理か…。
諦めますん。


ところでみんなはAPIってどうやって勉強したか聞いてみちゃったりします。
教えてください。
>>768
無理でもない。
Form1 をサブクラス化して、NCLBUTTONDOWN(HTCAPTION) と WM_MOVING と
WM_MOVE を処理して Form2 を操作するルーチンを書けば逝けると思う。
772771:02/12/30 13:07
WM_MOVING を処理するのは無理っぽいか。
>>770
765 を無視するようでは勉強なんて無理だ。
>>767

> APIを丁寧に解説したサイトがなくて…。

ないのではなく、お前が知らないだけ。
自分の無知を棚に上げて、実際に存在しないかのように書く無神経さは何とかならんか。
>>774
つぅかすでに答えは出ている。煽りはスピードが命。
>>775

「見つからなくて」とか、「知らないので」という表現なら、どうってことはないんだが、
「なくて」という言い方にムカついてしまいますた。
>775 ワロタ
>>776
わかるよ。
779デフォルトの名無しさん:02/12/30 22:20
サイズの分からない配列Aがあるとき、その先頭から最後までの要素について
処理を行いたい場合For文をどのように書けば良いのでしょうか?
よろしくお願いします。
For i = 0 To ??
Trace.WriteLine(A(i))
Next
>>779
ネタじゃないよね?

LBound/UBound を使います。

ヘ ル プ を 読 む 習 慣 を 付 け ま し ょ う 。
781デフォルトの名無しさん:02/12/31 06:38
質問させてもらいます。
環境は、VB6SP5でWindowsXPです。

ListViewを使ってちょっとしたデータベースみたいなのを
表示したりするアプリを作っていてわかったんですけど
どうもListViewって、ひとつのカラムの欄の文字数制限で128文字しか入らないようです。

1項目の内容が128文字以上になる事はざらなはずなのに
これは仕様なのでしょうか。なのだとしたら、解消法はありますでしょうか。
年末ですので今年の事納めにでもお答え下さると嬉しいです。
782デフォルトの名無しさん:02/12/31 06:48
>>781
ListViewやめろよ。
gridにしる。
>>779

スレ違い。VB.NETねたは「【老若】VB.net質問スレ【男女】」にするでつよ。
http://pc3.2ch.net/test/read.cgi/tech/1025848458/l50

>For i = 0 To ??
>Trace.WriteLine(A(i))
>Next

For i = 0 To A.Length
    Trace.WriteLine(A(i))
Next

または、

Dim o As Object ' Aの型に合わせて適切な型の変数を用意してね。
For Each o In A
    Trace.WriteLine(o)
Next

のようにする。

>>780
ネタかな?
配列下限0固定だから、LBoundは互換性のためだけに残ってるだけよん。
785デフォルトの名無しさん:02/12/31 12:10
質問です。
Winsockコントロールで、HTTPでバイナリでないファイルを取得する
コードを書くと、文字化けします。ごく一般的なやり方で取得してるんですけど、
たとえば"動"がNULLと半角のョとして摩り替わったりします。
(しかもホントはNULLじゃなくて0x93)
おそらく一度バイト配列にバッファリングしてから
StrConvでUnicodeに変換すれば解決すると勝手に踏んでるんですけど、
そこでバイト配列とバイト配列を結合させるやり方がわかりません。
要するに、String型の場合の
a = a & b
みたいなことをバイト配列でもやってみたいわけなんですが、
どーやればいいんですか?
>>784
あ、VB.NETだと気付かなかったよ。
.Length
ってことは、Javaとおなじ文法やんか。
>>785
apiつかっても出来るけど、
forループで回してくっつけるだけでも十分。
ホームページ開くとノートンが反応するので適当なエディタで開くと、
そのページの分のhtmlが終わった後vbscriptらしきもので始まる解読不明なアルファベット記号がズラズラと・・・
ウイルスなのでしょうか?
789788:02/12/31 14:59
すんません。ぐぐったらすぐに出てきました。厨な質問してすいません。。。
ドガイシュツだね。
>>787
とりあえずForでやってみます。さんくすです。
>>788
まぁ、ウイルスの体細胞の一部です。
793785:02/12/31 17:46
そういえば配列の要素数に限界があるってことはバイト配列じゃ
うまくいかないってことだ。やっぱファイルに一回書き出さないと
いけないのか・・・鬱だし脳
794デフォルトの名無しさん:02/12/31 18:44
Dim Data As MSComctlLib.DataObject
Data.Files.Add "Hoge",1
てなこと(DataObjectのデータ型(?)を利用する)をしたいのですが、
2行目でオブジェクト変数または With ブロック変数が設定されていません。(Error 91)
となってしまいます。
おそらくSetとかを使うのでしょうが全然わかりません。
OLEDragDropプロシージャー内のは普通に出来るんですが・・どこが違うのかな。。
Gridの特定のセル(仮にセルと呼びます)だけに色を付けるような
コンポーネントってないでしょうか。
背景色でも文字色でも良いのですが、その部分だけ目立たせるような。
796デフォルトの名無しさん:03/01/01 00:02
あけおめあげ
ネットカフェにて・・・・

With Form1       'フルスクリーンにする
   .BorderStyle = 0
   .WindowStyle = 2
End With

For i = 0 to 10000000000  'この間に逃げる
Next i

do
   Form1.Print "あけおめ(w"
loop


・・・実行!
>>797
おぬしも寂しいな・・
>>798
ぬしものぉ、越後屋・・・ふぉっふぉっふぉ
VBをはじめていじるときは誰でもピクチャーボックスをまず配置し、アニメや18禁ゲームの画像を表示させるのではなかろうか。
>>800
いや、ラベルとボタンおいて文字出したが。
>>800
お前だけだ。
正月から自爆かます>>800でした。
804800:03/01/01 12:14
>>801
プログラマーのかがみのような。
>>802
VBはじめた動機がちんこの入ってるところと入ってないところをタイマーで切り替えてアニメーションさせることだったからな。
>>803
結局それ以上の技術は3年たってもつかないもんだよな。
最初は800の用にタイマーコントロールでチンコパラパラアニメしかできないけど、
そのうちチンコだけくりぬいてマウスで動かせるようにしようとAPIを覚えたり、
マンコに挿入できるように裏画面描き転送のbitblt覚えたり、
そしたら今度はイクイクメーター装備してマウスでズコズコやるとメーターが上がるようにするため
マウスを動かしてる早さを計測するアルゴリズムを考えたり、
今度はホイールクリクリでクリクリをクリクリするためにサブクラスを覚えたり・・・。
そうやってみなVBを覚えていくのだな。

3年たっても技術がつかない800はエロさが足りないという事だろう。
806800:03/01/01 13:14
>>805
むぅ いい刺激になりました。
>>804-806
溜 ま っ て る な ら 、 風 俗 へ 逝 け よ !

-------------------- 終 了 --------------------
>>805
マジワロタ
まあ、インターネットが一般に普及したプロセスも似たようなものですし。
810デフォルトの名無しさん:03/01/01 17:45
モーダルウィンドウ上のウィンドウにSendMessageでツールチップを作成しようとしてみたけど無理でした。
無理なのでしょうか?

あと、LabelコントロールにはハンドルがないのでSendMessage自体できませんが、
Labelコントロール自体にはToolTipTextプロパティーがあります。
これはどうなっているのでしょうか?
VB内部で独自のToolTipを作成しているとかなのかな?
>>800
漏れはWindowsを終了させるプログラムをサンプル見ながらやって、
セーブせずに実行してしまった。
>>809
それは言えてる。
813800:03/01/01 18:07
>>807
風俗にアニメキャラはいないにょ
>>809
エロエロパワーっちゅうやつやね。
>>811
今でもWindowsを操作する術をしらないオレは尊敬します。
すごくプリミティブな質問なんですが、誰か教えて下さい。
VBが作成するexeって、インタプリタなの?...って、要するにJavaみたいな
「エンジンがバイトコードをがりがり読んで実行する」ような感じのインタプリタ、なの?
..exeとして作成はされるけど、実は内部的にはどこかにあるインタプリタをキックして、
その後に並んでいる中間言語をごりごり渡して実行...みたいな。

それとも、「ネイティブなんだけど、DLL(ランタイム)をただひたすらがりがり呼びまくる」
だけなの?
815デフォルトの名無しさん:03/01/01 20:42
VBで画像を扱う場合ですが、フォーム全体に画像を表示させたり画像をボタン
のように使ったりする場合、処理の速さを考えるなら何を使った方がよいのでし
ょうか?例えばボタンならpictureコントロールのloadPictureを使うのがあり
ますが、画像を幾つも扱う場合効率が悪かったり、もっと速い処理できるやり方
があったりするのでしょうか?どなたかよい方法ありましたらお願いします。
816デフォルトの名無しさん:03/01/01 20:47
★★★★★★★★★★★★★★★★★★★★★★★★
激安を超えた!超激安!
新品アダルトDVDが1本500円から!
個人でも1本から買える!オンラインDVD激安問屋!
GO!GO!DVDドットコム!
http://55dvd.com/
只今福袋も売り出し中! 売り切れ御免!
★★★★★★★★★★★★★★★★★★★★★★★★
>>814
選択できる
>>817
細かいツッコミで申し訳ないけど、VB4.0以前はネイティヴコンパイルはできないでしょ?
(当然、ご存知かと思いますが・・・)
>>818
いまさら4.0の話をされてもな。
>>819
Delphi厨相手には平気で3.1の話とか持ち出すクセにな(藁
藁って許して。
822デフォルトの名無しさん:03/01/02 00:45
>>815
VBは画像処理に向いていない。

ところでフリーカーソルじゃないエディタのどこが使いやすいのでしょう?
>>822
戻ってロッテ
824デフォルトの名無しさん:03/01/02 01:22
VBで標準偏差を求めたいのですが、どうしたらいいですか?
ExcelのSTD関数みたいなのが無いのですが・・・。
>>824
前も同じ質問してなかったか?
自分で計算式賭。
826デフォルトの名無しさん:03/01/02 01:58
>>825
してません・・・。
>>824
おいおい、ExcelのHELPでその関数の説明を読んでみたか?
828デフォルトの名無しさん:03/01/02 03:41
MsgBoxのように同じプロジェクト内でフォームが複数表示されている場合に
一つのフォームにしかフォーカスが移動できないようにするにはどうしたらいいのでしょうか?
>>828
Private Sub Command8_Click()
Form3.Show vbModal
End Sub
>>824
自前でアルゴリズムを書きたくないなら、Excelのライブラリを参照して
流用するという手段もある。
しかし、Excelのライブラリは巨大過ぎるため、動作が重くなる。
(あまりお奨めできないが、ひとつの選択肢として参考程度に・・・)
>>830
すごい宿題の解決方法だけどな。
832デフォルトの名無しさん:03/01/02 10:39
すみません。
Basicでの「Input@」に相当するコマンドは何にあたるのでしょうか?
VB と C/C++ ってどうちがう?
なんでおまいらVBなんて時代遅れたことやっとんの?
単純な>>833が釣りを始めたようです。
835833:03/01/02 10:46
>>834
まさに、その通り。
で、>>834は俺に釣られた一人目
>>832

scanf
>>832
あえて言うなら、InputBox関数。ま、全然違うがな。
838830:03/01/02 13:25
>>831
自己レス。
テスト(性能評価)した経験ないんだけど、速度が要求される場面なら、たぶん、
却下すると思う。(^^;
性能は不問、やっつけ仕事だからとにかく手間を掛けずに楽に作りたい、という
状況ならありだと思います。
839830:03/01/02 13:28
>>838

> やっつけ仕事だからとにかく手間を掛けずに楽に作りたい

↑VB自体そういうスタンス、というツッコミは却下。(^^;;
(予防線)
他アプリのリストビューの項目数や内容を得るにはどうすればよいのですか?
841aa:03/01/02 13:54
>>840
自分で数えれば?
>>840
ユーザが数えてテキストボックスにて報告してもらう。
>>840
それ、以前にここで質問してなかった?
844840:03/01/02 16:21
(´∀` )エヘヘ
>844
まぁいいけど、思っている程簡単にはいかないから目的や状況を詳しく書かないと解決しないよ!
846840:03/01/02 19:10
>>845
目的は自宅のパソコンをタイマーメールチェック状態にして、
外出中に新着メールがあればどんなタイトルで何通来たか、
等を携帯にリアルタイムにメールして
知りたいのです。
このメールソフトでは新しいメールを受信するとリストビューの項目が増えるので。
メールの転送を使うという手もありますけど、自分で作りたいんです。
847840:03/01/02 19:26

         へ(´∀` へ)エヘヘ
                             へ(´∀` へ)エヘヘ

へ(´∀` へ)エヘヘ               へ(´∀` へ)エヘヘ
848デフォルトの名無しさん:03/01/02 19:28
むしろ自分でメールチェックするプログラム作ったほうがよかろ
849840:03/01/02 19:43
>>848
自分でメールチェックするプログラムは作った事あります。
しかし、リストビューから情報を取得する方法は何かと便利そうなので
ぜひ自分で身に付けておきたいので・・・

ちなみに844,847は偽者です。
850( ゚Д゚)ヴォケ!!:03/01/02 21:44
おめーよ。さっきから聞いてりゃむかつくんだよ。
技術がないのに「あれもやりたい、これもやりたい」だなんて
困った厨ですな。

>>848タソみたいなアドバイスを受け止めるってことをしないのかね?

文句言うんなら自分でやれ!人に聞くな!( ゚Д゚)イッテヨシ
851840:03/01/02 21:47
                   へ(´∀` へ)エヘヘ
  へ(´∀` へ)エヘヘ               へ(´∀` へ)エヘヘ
         へ(´∀` へ)エヘヘ                    へ(´∀` へ)エヘヘ
                             へ(´∀` へ)エヘヘ
    へ(´∀` へ)エヘヘ      へ(´∀` へ)エヘヘ
へ(´∀` へ)エヘヘ               へ(´∀` へ)エヘヘ       へ(´∀` へ)エヘヘ
 へ(´∀` へ)エヘヘ                へ(´∀` へ)エヘヘ
852デフォルトの名無しさん:03/01/02 22:22
VBを始めたばかりの初心者です。
テキストボックスの外観を変更したいのですが(角を丸くして、立体表示じゃなく
する)そういったことはVBでもできるのでしょうか?おすすめのページなど
ありましたら教えてください。
853デフォルトの名無しさん:03/01/02 22:31
>>852
立体表示はデザインの設定でできるよ。
概観は、やったことないからなんともいえないけどリージョンっていうやつを
使えばできるのかも。
はずしてたらゴメン
>>852
大きめのピクチャボックスの中に枠なしのテキストボックスを配置して、
後は好きなようにピクチャボックス側で枠をデザインすりゃいいんでない?
855840:03/01/02 22:50
>>850
自分でやってなんとか出来ました。
スレ汚しすんません。
856デフォルトの名無しさん:03/01/02 23:30
SDKで印刷プレビューを作るにはどうしたらいいでしょうか?
ネットやVC6についていたサンプルソースなどをあさってみたのですが
よく分かりませんでした。

ここを見ろ!とかありましたらお願いします。
>>856
すみません、誤爆しました
858デフォルトの名無しさん:03/01/02 23:50
>>855
どうやって実現したのよ?
方法を書かないと、ますますスレ汚しだぞ
>>855みたいなのを自己厨という。
860デフォルトの名無しさん:03/01/03 00:01
859は何か気の利いたことを書いている積り?
>>860
お前よりは気が利いてる。に3インスタンス。
ユーザーコントロール内でサブクラス化ってできないの?
863デフォルトの名無しさん:03/01/03 00:10
>>862
普通にできるでしょ
864862:03/01/03 00:20
なんかAddressOfオペレーターの使い方が適切ではありませんってでるんですけども。
865862:03/01/03 00:28
あ、AddressOfってbasファイル内じゃないと無理なんだっけ。
アプリケーションの終了(ユーザーコントロールの終了)時にユーザーコントロールにイベントって起きないの?
サブクラス化を解除できない・・
866デフォルトの名無しさん:03/01/03 00:35
bas以外だと実態が出来てないとそのアドレスがわからないからね。
867デフォルトの名無しさん:03/01/03 00:37
Terminateイベントってないんだっけ?<<ユーザーコントロール
868862:03/01/03 00:41
Terminateになんか書いても何も起きないんですよ。
Exeにしても起きないし。
869デフォルトの名無しさん:03/01/03 00:50
というか、普通に標準モジュールにウィンドウプロシージャだけ書いて
やればいいんじゃないでしょうか?
870862:03/01/03 00:54
いや、ユーザーコントロールが作りたいので。basファイルがついてくるので今ひとつ美しくないけど。

コールバックプロシージャー内でWindowを破棄するメッセージを受信したら
そのときにサブクラス化解除すればいいんじゃ!
と思いついた。
眠いのでひとまず寝よう。
871862:03/01/03 01:01
と、試しにユーザーコントロールじゃなくて既存のアプリ内でやってみた。
ばっちりサブクラス化解除されるっぽい。
しかもVBの終了ボタン押しても問題ない。
激しく良いっぽいけど、サブクラス化解除ってFormのQueryUnloadに書く奴ばかり見るな。
問題あるのかな。
872862:03/01/03 01:12
あれ、さっきまではサブクラス化解除しないで終了するとVBもろとも落ちたのに今は落ちない。
なぜだ。やっぱだめなのかも。
873デフォルトの名無しさん:03/01/03 01:14
Terminateがちゃんと起きないっていうのがなんか引っかかる。
コントロールの作りに問題はない?
Formはつかうがクラスは使ったこと無いな
必要なかろう
875855:03/01/03 04:17
たびたびすいません。
私が他アプリからリストビューの値を取得した方法は
まず最初にLVITEM構造体を宣言、
FindWindowで親ウィンドウのハンドルを得て
GetWindowでメッセージ・GW_CHILDの後にメッセージ・GW_HWNDNEXTを繰り返し目的のリストビューのハンドルを得る。
SendMessage(ハンドル,LVM_GETITEMCOUNTメッセージ,0,0)で項目数を得られます。
その後、LVITEM構造体の変数を適切に設定し
再びSendMessage(ハンドル,LVM_GETITEM,0,LVITEM構造体変数)を実行、
するとLVITEM構造体変数の.pszTextに項目の文字列が入ります。
これをforループで0から項目数-1まわすとリストビュー内の項目内容が得られます。

ごちゃごちゃしてしまったかな。
「GetWindowでメッセージ・GW_CHILDの後にメッセージ・GW_HWNDNEXTを繰り返す」
っていうところなのですが、
普通、こういう風にして目的のリストビューのハンドルを得るものなんでしょうか・・・
>>866

だから、マルチインスタンス対応がめんどうな罠・・・。

# やったことないけど、昔、VBマガジンの記事で解説されてたなあ。
877862:03/01/03 09:39
>>873
どうもコンパイルするときにTerminateイベントが起きているようです。
それ以外の時は特に発生してないようです。
MSDNによると
Terminate イベントは、コントロールが破棄される直前に発生します。
なのですが・・・
さっぱり。
>>874
Formもクラスだ。これを理解できていない香具師は、.NETでこけまくり。
>>877
ユーザコントロールはデザイン時にインスタンス生成されているからな。
デザイン画面で表示するために。なので、そこでTerminateが起きている。

そのユーザコントロールを利用するときにTerminateイベントが起きないなら、
使用しているアプリ側の終了にEndを使ってたりしないか?
End使ってしまうとTerminateイベントは起きないぞ。
ちゃんと全フォームをUnloadして終了しなきゃ。
これに該当しないなら、ようわからんな。何か作り込みでおかしいところがあるはず。

880862:03/01/03 14:57
おお、まさにその通り。Endしてました。
なぜEndじゃだめなのかな?

ところで、上で書いたサブクラスプロシージャー内でWM_DESTROYWINDOWを検出したらサブクラス化解除
ってのは問題あるのでしょうか?
881873:03/01/03 15:27
>>878
ふうん。
ピクチャボックスとタイマーの他にクラスも覚えてみるよ。
882デフォルトの名無しさん:03/01/03 15:31
Endのヘルプ見てみれば一目瞭然だよ。
>>881
クラスの恩恵にあやかっていることを気づくべきだよ。
884873:03/01/03 16:04
>>883
見えないフォーム、って感じにしか今は思えないけど、だんだんと覚えていこっと。
885 :03/01/03 16:06
画面の最大化をしたいのだけど
VB6でローカルパソコンの縦と横のサイズを取得するAPIか関数か方法
はどうするんですか?
>>885
ttp://hp.vector.co.jp/authors/VA013031/tips/api001.htm
をちょっと改造すればタスクバーを除いた領域を取得できる。
887 :03/01/03 16:20
>>886
サンクスです。すごくわかりやすいっす
888862:03/01/03 17:29
ホントですね。Endってちょっと危険ですね。
大抵QueryUnload内の最後にEndを書いていたので今まで特に問題はなかったようです。
ちなみにQueryUnloadは確かプログラムを終了するかキャンセルするかって
いうようなコードを書くべきところじゃなかったかな。
リソースの開放や終了処理を書くべきところはUnloadイベントだと思う。
、、、けど、動けばいいんだけどね。
890ななしさん:03/01/03 18:44
ユーザー定義型で動的配列な変数の内容を他のフォームでも使いたいのですが
パブリックにしようとするとコンパイルエラーが出て上手くできません。
何か他の変数に代入して受け渡すしか方法はないのでしょうか?
891デフォルトの名無しさん:03/01/03 19:41
   ,.´ / Vヽヽ
    ! i iノノリ)) 〉
    i l l.´ヮ`ノリ <先生!こんなのがありました!
    l く/_只ヽ    
  | ̄ ̄ ̄ ̄ ̄|
http://muryou.gasuki.com/saitama/
892デフォルトの名無しさん:03/01/03 19:48
ここでSQLServerの使い方質問していいですか?
どうやってテーブルをつくるのか操作方法がわかりません
>>892
その程度の内容はヘルプにも書籍にも腐るほど書いてありますが、何か?
894まいっちんぐマチコ ◆2gicN.Bep6 :03/01/03 20:09
.NETに関する質問を他スレにしました。

マジで、まいっちんぐ♪です。

よろしくお願いします。

http://pc3.2ch.net/test/read.cgi/tech/1025848458/764
895デフォルトの名無しさん:03/01/03 20:18
>>890
モジュールで宣言する時、ちゃんと「Type〜End Type」でかこってる?
>>892
アクセスでつくってSS側でインポートしろ
897890:03/01/03 21:08
標準モジュールを使いパブリックの宣言をしてみたところ上手くできました。
今までフォームのDeclarationsセクションに書いていました。
>>895さん助言ありがとうございました。
898デフォルトの名無しさん:03/01/04 00:59
Helpファイル設定してF1でヘルプを出せるようには出来たけど
メニューからヘルプ呼び出せるようにする方法がわかりません
ヘルプを呼び出すコードとかあるんですか?おねがいします
899 :03/01/04 01:00
>>898
Shell_Executeとかで開けば良し。
901デフォルトの名無しさん:03/01/04 01:06
900さんありがとうございます、でもよっくわかりません・・・
たとえばhelp.chmを開きたいときどうしたらいいですか?
>>901
リファレンスも読まない奴は死ぬべきです。
普通にshell関数で開けない?
904デフォルトの名無しさん:03/01/04 01:32
社内用個人データバックアップツールを作ってるんですがoutlook expressの
メール格納フォルダのフルパスをVBで取得する方法で悩んでいます。
特殊フォルダのパスを取得するAPIなどをwebで見つけたけどoutlookフォルダ
を取得する定数がありませんしレジストリを読もうにも同じWIN2K同士でもレジ
ストリのキー名が異なっているためapiに渡す値を決め打ちできません。
なにかよい方法があったらヒントでも教えていただけないでしょうか。
よろしくお願いします。(クライアントOSは98、NT、2000です。)
バックアップを装った・・・
>>904
会社でOutlookExpressなんか使っているなんて考えられない。
バックアップとかその辺も考慮してメーラーを選び直すことを推奨す。
907デフォルトの名無しさん:03/01/04 01:42
905>
いや、ほんとにバックアップですよ。単にツールならフリーソフトを使えば
よいのですが汎用性が必要とかでやっぱり社内向けにカスタムしたツールを
ということなのです。
906>
そういうものでしょうか。私は自分の技術はさておいてとても知名度の高い
企業のデータセンタを2社(たった2社ですが)請負いましたが社内ではoutl
ookってあたりまえでしたよ。
たしかに某ISPさんではウィルス問題が発生したりしていましたけど。
なんだってドラッグアンドドロップで出来る事をわざわざツール作れって言うかね…。
いじめられてない?
909デフォルトの名無しさん:03/01/04 01:51
ほんとですよね。やりかたをドキュメント(にするほどのものでないけど)
にしてサーバーにアップするなりプリントして配布するか、batファイルで
すむことなんですけどね。私の説明不足で理解してもらえなかった・・・
ただ、生意気言うようですがお客さんのレベルを考えると仕方ないのかな。
batファイルをダブルクリックしてもらえばよいことなんですけどね。
つか、遠い昔にちょこっと使っただけだから間違ってるかもしれないけど、
9x ならc:\windows\Application Data\Identities\ほげ
NT系なら ユーザープロファイル以下の似たようなフォルダをまさぐって*.dbx さがせばいいんじゃないの?

大した処理でもないでしょ。
911デフォルトの名無しさん:03/01/04 01:57
それが全社統一プロジェクトの一環に含まれており部署によってはみなさん
各自格納フォルダを別ドライブ(の任意の場所)に移していたりするので
場所を設定できないかったんです。
それでも先輩諸氏なら大した処理でないんでしょうけども。
HKEY_CURRENT_USER\Identities 以下を RegEnumKeyEx でまさぐって、列挙された物以下に Software\microsoft\Outlook Expressを探してバージョン番号キー内の Store Root で取れそうな予感がしてきた。
OE のバージョンのみに依存しそうな雰囲気だから、OS 違っても逝きそうな予感。

http://www.google.co.jp/search?q=cache:oMw87FpKwQwC:homepage1.nifty.com/MADIA/vb/API/RegEnumKeyEx.htm+vb+api+%E3%83%AC%E3%82%B8%E3%82%B9%E3%83%88%E3%83%AA+RegEnumKeyEx+&hl=ja&lr=lang_ja&ie=UTF-8&inlang=ja
続きはMSDNで。
913デフォルトの名無しさん:03/01/04 02:10
こんな時間にわざわざ人様にお手数かけてすみません。
早速調査して試してみます。
ほんと感謝します。ありがとうございました。
914デフォルトの名無しさん:03/01/04 02:23
度々ここでお世話になっているものです。

今回は、グラフを作成する際の参照元データの指定法です。

一般的には、Range等を用いて、セル上の数値を元にグラフを作成しますが、VBAのマクロ内で計算した数値を格納した配列を直接渡したいのです。

どうすればいいかわかりません。SourceやRangeの関連は全部調べましたし、持っている5冊の参考書内でもいろいろ探してみたのですが、一向に見つかりません。

おながいします。
915デフォルトの名無しさん:03/01/04 06:10
文字列から特定の文字を区切りに順に取り出していく簡単な方法ありませんか?
今までは ',' カンマを区切りに
intTemp = InStr(strData, ",")
intTemp2 = InStr(intTemp + 1, strdata, ",")
While intTemp2
List1.AddItem Mid$(strData, intTemp, intTemp2 - intTemp)
intTemp = intTemp2 + 1
intTemp2 = InStr(intTemp, strData, ",")
Wend
List1.AddItem Mid$(strData, intTemp)

こうやっていたのですが、実は簡単にしかも処理が速いやり方があるような気が
してきました。
例えば " " スペースを区切りにTrim$みたいなので抽出していけるようなのとか。
上のやり方でいいですかね?どなたかお願いします。
>>915
Split関数を使うと自動的に配列に区切った後のデータが格納される。

Dim 〜
〜 = Split(String, ",")
917 :03/01/04 14:02
>>916
 VB6以降じゃないと出来ないと思うが・・・・
918916ではないが・・・:03/01/04 14:18
>>917

質問者がバージョンを明示していない。
>>915
悪くないんじゃない。配列使わない分、Split関数より早そうな予感。
蛇足だけど本格的な.CSVファイルだとSplit関数は使えないんじゃなかろうか。
>>904
まがりなりにもまっとうな情報系の会社はoutlook expressは使わないと思う。
禁止までするかどうかは別にしてなるべく別のメーラー使えというお達しが
でててもおかしくない。
うちなんてWindowsなのにEudoraだぜ?
922915:03/01/04 17:34
やっぱり便利な関数あったんですね><
ちなみに環境はVB6です。ListBoxにSortがあるのも知らずに自分でソートの
アルゴリズム加えたりと、ばかやってますw
>>919
Split関数より早いかもということなのでこのまま使おうかと思います。
みなさんありがとうございます。
>>920
それがどう質問の答えになってるんだ?
「バックアップ用ソフトなぞ作らず、他のメーラーを全社員が使うように働きかけろ」
と言っているのか?
まぁまぁ
>>923
はたから見ててもそうだろ。
Outlookはありえないなぁ。
だからそれがどう>>904の質問に対する答えになってるのかと。
ついでに言っておくがOutlookとoutlook expressは別物だぞ。
エクスプローラを制御したいときは、
どのdllを参照設定で指定すればいいのでしょうか?
928914:03/01/04 20:32
>>914です。今日も1時間ぐらいいろいろ検索しながら探しましたけど、グラフ用のデータを配列で直接渡す方法が見つかりません。どなたか名案をお持ちではないでしょうか?
929デフォルトの名無しさん:03/01/04 20:34
VBにはC/C++で使う「unsigned」って宣言はないんでしたっけ?
>>928
ご苦労なことだが、ExcelVBAは、ビジネスソフト板に専用スレあるんだが。
931920:03/01/04 20:43
>>923
回答以外のコメントを控えろとかいう923の脳内妄想なルールがあるんなら、
おまえもなーとだけ言っておくよ。
>>929
.netは知らないがVB6までには無い。
それで時々えらく苦労する。
糞と言われる原因だな。
双方言いたい事はあるだろうがOEネタは終了で。
CNNのアンケート、合衆国は北朝鮮と不可侵条約を締結するべきか?
Should the U.S. agree to the signing of a nonagression pact with
North Korea?において韓国ネチズンとの戦いが始まってます。
みんなNoに投票シル!!!!!!

投票アドレス
http://asia.cnn.com/

祭り会場
http://live.2ch.net/test/read.cgi/festival/1041681450/

現在苦戦中!この状況を打破する「神」の降臨を待っている!

935914:03/01/05 01:33
>>930
解決できました。要するに、文字列の配列をこんなかんじで作ってあげて、投げればできます。汚いコードですがこんな感じです。

Public Sub CommandButton2_Click()
Dim co As ChartObject
Dim Y As Variant

i = 1

Y = "={"

While i < 5
Y = Y & S(i) & ","
i = i + 1
Wend

Y = Y & S(5) & "}"

Set co = ActiveSheet.ChartObjects.Add(10, 10, 300, 200)
With co.Chart.SeriesCollection.NewSeries
.XValues = Worksheets("Sheet1").Range("A2:A6")
.Values = Y
End With

End Sub
936デフォルトの名無しさん:03/01/05 16:31
クーだら無い質問だけど・・・。
VB6とVB.netって処理速度についてはどうなん?
>>936
どんなアプリでどっからどこまで比較するんだろう。
VB.netはC#.net、C++.netとほぼ同じ。
初回起動は(.NETのランタイムの起動で)遅いが、それ以外は普通。
938デフォルトの名無しさん:03/01/05 19:10
VBでプロシージャ内へのジャンプはGoToですよね
プロシージャ外へのジャンプ方法は何なんでしょうか?
>>929
なぜヘルプを読まないの?
(ネタですか?)
>>938
これだからBASIC遣いって奴は・・・
>>940
ネタに反応するなよ。
>>938

前者は間違い。そんなのはない。
>GoTo ステートメントの分岐先は、同じプロシージャ内だけです。他のプロシージャには分岐できません。

後者は抜けるという意味なら、Exit Sub/Function/Property。
任意の場所にということなら、そんなもんはない。
>>942
ネタに(略)
質問。
VBからExcel制御する時なんかは、すぐ参照設定するんですけど、
CreateObjectって手もあるじゃないですか。
プロフェッショナルならどっちを使うもんですか?
理由も含めて教えてください。
>>944
参照設定してNewなどでインスタンスを得るときは
Early Bindingで、CreateObjectの時はlate bindingになるの。普通はね。
Earlyの時は事前(コンパイル時とか)に呼び出し先を特定しておき
実行時には呼び出し方を決めうちで行えるの。簡単にいうとね。
それに対してlateの時はそれを実行時に行う。当然lateの方が遅いわけ。

ぱっとみEarlyの方が賢いようにも見えるけどちょっと注意が必要。
決めうちの時は相手の都合を考えてないわけ。
相手がバージョンアップとかしちゃうと、
この決めうちができない場合があるわけさ。

で、プロならどっちを使うかだけど、
そんなのは「最適な方法を使う」に決まってる。
きちんと意味を知って最適な手段を用いるのがプロフェッショナルさ。
>>945
ありがとう。
なるほど。使用環境が固定なら参照設定の方が良いってことですね。
自分で使うシステムですし、Excelはしばらくバージョンアップしないので
とりあえず参照設定でやろうと思います。
ありがとうございました。
プログラム組む時は参照設定して、コンパイル時に外すって手もある。
なんだかんだ言っても、メソッドなんかの自動補完は便利だし。
948デフォルトの名無しさん:03/01/06 01:46
今回、VBで初めて大きめのプログラムを組んでみたのですが、
いざ実行してみるとLoopに対応するDoが見つかりませんと出てコンパイルできませんでした。
DoとLoopの間が長いので(70行ぐらいあります)こう表示されるのだと思うのですが、これを上手く認識させる方法
は無いでしょうか?
>948
一つのループの間に70行書く事の是非はともかくとして、その程度でおかしくなる訳無い。
ループ中の行を全てコメントアウトして、一部ずつコメントを外して動かしてみる等して
ホントにDoとLoopが対になってるがちゃんと確認してみれ。

950948:03/01/06 01:57
>>949
了解しました。いろいろ試して確認してみます。
デバッグのアドバイス物凄く助かります。
ありがとうございます。
コピペお願いします

半島の組織票に詰め寄られてます
一人でも多くの協力が必要なんです
http://live.2ch.net/test/read.cgi/festival/1039531056/926
CNNのアンケート
合衆国は北朝鮮と不可侵条約を締結するべきか?
Noに投票してください!

投票所:http://asia.cnn.com/の右下
祭り会場:http://live.2ch.net/test/read.cgi/festival/1041681450/

自動投稿ツールを作っていただける方も募集してます。
952デフォルトの名無しさん:03/01/06 02:13
>>948
確かに949さんの言われる通り、ひとつのループに70行もあるなら
関数化した方がよいですね。
引数が多い場合はTYPE型を使うのがよろし。クラスモジュールは疲
れる。
953948:03/01/06 04:13
>>952
助言ありがとうございます。参考になります。
>>948で書いたエラーは原因がわかったのですが、その後もエラーの連続で大変な
ことになってきたので、もう少し見やすくなるよう改良してみます。
954デフォルトの名無しさん:03/01/06 06:53
モジュール宣言セクションっていう所で変数を宣言すると
どこからでもその変数を使えるそうですがそこがどこだかわかりません
教えてください。
自分の場合Doが見つかりませんって時は大抵End Ifの入れ忘れかなんかだな。
Shift+F2
957デフォルトの七祖さん:03/01/06 11:12
VBとAccessをADOで連携しています。

今、Aというクエリをrec.open みたいな感じで開きました。
その後、1行ずつ条件に満たすかどうか見ていき、満たさなかった場合
その対象行を削除し、次の行を見る・・・ということをやりたいのですが、
対象行を削除してしまうと、再クエリのような操作をしないと、エラーが出てしまいます。

しかし、再クエリをする方法がわかりません。。。

わからないので今は閉じて開く方法で対処してますがあまりにDQNで(泣
どうか力を貸してください。
次スレはまだかな?
次のスレタイのAAはちゃんとしたもの頼むよ。
>>954
「vb スコープ Public」あたりでGoogle。
>>957
削除クエリ(Delete〜)はご存じか。(分からなかったらGoogleへ)
これのWhere句にその条件とやらを指定して実行すりゃ一発でしょ。
ガンガレ。
>>958
アハァでよろ。
>>957
ソースを晒せ
>948
ねすと
>>957
閉じる前に再クエリできるかどうかはロックタイプによるんじゃボケ。
そもそも削除してエラーになるところを直せハゲ。
963957:03/01/06 14:39
>>959
Delete句で消したあとに、再クエリがしたいのです。
(再クエリしないと、行番号の指定でエラーが発生してしまうようで)
>>962
直そうとしてるから聞いてるんですよう・・・(泣

Do loop クエリの最終行まで
a.execute "delete 〜"
rec.movenext
   クエリを閉じる
   クエリを開く
loop

のような感じです。
クエリを閉じる開くの部分を、再クエリに変えれば、うまくいくような気がするのですが・・・
初心者ですいません。
964957:03/01/06 14:40
do until でした
すいません・・・
>>963
rs.EOFなのにDeleteしてる可能性がある。
キミは一回削除したあとに、さらに全データを一番上から見ていって削除、またまた一番上から見ていって削除、という気配がただようが、1回上から下までデータベースをmovenextしただけでバッチシ目的を達成できんのか?
967デフォルトの名無しさん:03/01/06 15:43
>>963
a.execute "delete 〜"ってしたら
recが持ってる内容と実データが違っちゃうでしょ。だからエラーになるのさ。
a.execute "delete 〜"じゃなく
rec.deleteとしよう。

でも>>959も言ってるように、execute "delete 〜"のやりようによっては
ループ無しで一発で処理できる。recなんてのもいらない。
こっちの方が圧倒的に処理が速い。
さっそく957はSQL文を修正しなさい。
なんか、>963見てると、
少し前に、where句もも知らないのに、SQLを極めていると豪語していた20年選手のヲサーン・プログラマを思い出すよ。
select文で全レコード引っ張ってDo〜Loopで回して選別してたのを。
しかも、1つのテーブルから所定のレコードセット作るだけで、丸3日工数かけやがった(w
なんで、そうなの??と思ってたけど、963みて思わずそのときのことを納得しちゃったよ(w
>>969
有名な「人月の神話 -狼人間を撃つ銀の弾はない-」という本
(邦訳はピアソンエデュケーション刊)に、

「優秀なプログラマの生産性は平均的なプログラマより10倍以上高い」
という意味のことが書いてあります。
ツールやスクリプトによる自動化が可能なジョブだと、100倍以上格差が
開くケースもあるかもしれません。

http://www.ogis-ri.co.jp/otc/hiroba/OoBook/BookRanking/projBook/TheMythOfManMonth.html

http://www.amazon.co.jp/exec/obidos/ASIN/4795296758/ref=sr_aps_b_1/250-7139925-1196269
オレ様の答えられるような質問がねえからツマンネ
972959:03/01/06 20:38
>>963でのレスに意義。
漏れが>>959で一発でしょ、と書いたのに、まだループしようとしてるのにイラっときた。

Where文で条件指定しると書いたのは、その条件にヒットしたレコードが全て消えると
いうことだ。全て消えるのなら1行ずつループして確認など必要ないことを読みとれよ。

どんな複雑な条件でもやろうと思えば2つ3つSQL発行すりゃ書けるだろ。
>>971
ならば質問しる。
つか、勉強しる。
974971:03/01/06 21:17
>>973
超初心者があらわれるまで待機してる。
今、VBの入った環境がなくて確認がてら質問させてください。
VB5で作られたソースがあるのですが、これをVB6で開いて編集することは
できますでしょうか。
よろしくお願いします。
976デフォルトの名無しさん:03/01/06 21:42
VBでCADみたいなのを作りたいと思うんですが
曲線の描き方とか詳しく載ってる参考書あったら
教えて欲しいです
おながいします。
>>976
リアルなアドバイスですが、そのレベルならやめた方が良いんじゃ?
978デフォルトの名無しさん:03/01/06 21:52
>>977

一から始めたいんです。
初めて作るプログラムで、本を色々物色したんですが
絵を描くのはLineかCircleくらいしか載ってないんで
困っています。
スプライン曲線とかベジェ曲線とか描き方載ってるやつ
ないでしょうか。
979デフォルトの名無しさん:03/01/06 21:58
>>975
できるようんうん
980デフォルトの名無しさん:03/01/06 22:11
>>978
数学の理論をLineとCircleで実現するだけだろ。数学の本を探すべし。
982世直し一揆:03/01/06 22:16
<血液型A型の一般的な特徴>(見せかけの優しさ(偽善)に騙されるな!)
●とにかく気が小さい(神経質、臆病、二言目には「世間」、了見が狭い)
●他人に異常に干渉する(しかも好戦的・ファイト満々でキモイ)
●自尊心が異常に強く、自分が馬鹿にされると怒るくせに平気で他人を馬鹿にしようとする
(ただし、相手を表面的・形式的にしか判断できず(早合点・誤解の名人)、実際にはたいてい、内面的・実質的に負けている)
●「常識、常識」と口うるさいが、実はA型の常識はピントがズレまくっている(日本の常識は世界の非常識)
●権力、強者(警察、暴走族…etc)に弱く、弱者には威張り散らす(強い者に弱く、弱い者には強い)
●あら探しだけは名人級(例え10の長所があってもほめることをせず、たった1つの短所を見つけてはけなす)
●基本的に悲観主義でマイナス思考に支配されているため、性格がうっとうしい(根暗)
●一人では何もできない(群れでしか行動できないヘタレ)
●少数派の異質、異文化を排斥する(差別主義者、狭量)
●集団によるいじめのパイオニア&天才(陰湿&陰険)
●悪口、陰口が大好き(A型が3人寄れば他人の悪口、裏表が激しい)
●他人からどう見られているか、体裁をいつも気にしている(「世間体命」、「〜みたい」とよく言う)
●自分の感情をうまく表現できず、コミュニケーション能力に乏しい(同じことを何度も言う、知障)
●表面上意気投合しているようでも、腹は各自バラバラで融通が利かず、頑固(本当は個性・アク強い)
●人を信じられず、疑い深い(自分自身裏表が激しいため、他人に対してもそう思う)
●自ら好んでストイックな生活をし、ストレスを溜めておきながら、他人に猛烈に嫉妬する(不合理な馬鹿)
●執念深く、粘着でしつこい(「一生恨みます」タイプ)
●自分に甘く他人に厳しい(自分のことは棚に上げてまず他人を責める。しかも冷酷)
●男は、女々しいあるいは女の腐ったみたいな考えのやつが多い(他人をけなして相対的に自分の立場を引き上げようとする等)
983デフォルトの名無しさん:03/01/06 22:17
>>978
ベジェ曲線ならGDIにあるけど。
>>982
全血液型キボン
>>984
コピペだよ、恥ずかしいヤシだな。
986985:03/01/06 22:29
>>985
コピペでもいいから興味あるな。
987978:03/01/06 22:50
>>980
ありがとうございます。
じっくり読んでみます。
>>981
ありがとうございます。
数学の本は見てはいるんですが
もう少しプログラムに近い本はないかなと
思いまして。
>>983
すいません。GDIってよくわかりません。
調べてみますが。

988 :03/01/06 23:37
今動いてるシステムの改修で、環境は
NT4+VB4+MDB(DAOでアクセス)

で、ある一台のマシンでだけ動作しない。
DB検索しに逝って、項目参照する個所で
「このコレクションには項目がありません」
と来る。
NGなのは日本語の英字大文字の項目
EX) "ABC−NO"

こんな経験ある人(・∀・)イナイ!?
そのマシンだけiniファイルが古かったとかそういうのはあるけどね。

同じマシンのAccessから同じSQL投げてどうなるか気になる。
>957
再クエリ=Requery
991990:03/01/06 23:59
>990
あ、わり。
全然読んでなかった。
流してくれ。
992 :03/01/07 00:36
>>989
iniファイルって、windowsの(・∀・)iniファイル!?


>>987
>数学の本は見てはいるんですが
>もう少しプログラムに近い本はないかなと思いまして。

数学の考え方をプログラムにすることがプログラミングだ。
それを他人任せにしたり楽したいなら
厳しいようだが君には適性がない。やめろ。

スプラインにしろベジェにしろ、直線で近似させて描画させればいい。
(点で書いていってもいいけどな)
直線は2点を求めればいい訳だが、これは数学を「使え」。
後はLineで書いていけばいいだけ。
994978 超初心者:03/01/07 01:02
>>993
ありがとうございます。
おっしゃることはよくわかるんですが
とりあえず何をどうしたらいいのかも
よくわからないんで見本になるような
ものはないかな?と思って探しているんですが
なかなか難しいです。

>>992
いや、全然そんなんじゃなくて。
普通に開発中のアプリの設定ファイルの更新忘れの話。
>>994
980が提示してくれてるページは見たのか?
997978 超初心者:03/01/07 01:16
>>996
はい。
こうゆう例が色々載った本とかないでしょうか。
これをよく読んで研究してみたいと思います。

ありがとうございました。
998 :03/01/07 01:19
>>995
設定ファイルの内容によって、>>988 みたいな事おきるの?
>>997
980のページの一番下に、こういうのがあるが?

>他の曲線(NURBSを除く)の描画に関しては,下記書籍が参考となる.
>佐藤義雄「実習グラフィックス」アスキー出版局 1850円 但し言語はN88-BASIC
1000デフォルトの名無しさん:03/01/07 01:22
あ、1000ね
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。