トップページtech
1001コメント306KB

(*´д`*)ウッ… VB初心者質問スレ Part15

■ このスレッドは過去ログ倉庫に格納されています
0001エロチカセブンNGNG
  Part 1 http://piza.2ch.net/tech/kako/968/968328471.html
  Part 2 http://piza.2ch.net/tech/kako/990/990793224.html
  Part 3 http://piza2.2ch.net/tech/kako/1000/10005/1000523122.html
  Part 4 http://pc.2ch.net/tech/kako/1006/10069/1006922992.html
  Part 5 http://pc.2ch.net/tech/kako/1010/10106/1010624646.html
  Part 6 http://pc.2ch.net/tech/kako/1013/10138/1013844542.html
  Part 7 http://pc.2ch.net/tech/kako/1015/10158/1015836357.html
  Part 8 http://pc.2ch.net/tech/kako/1018/10187/1018794901.html
  Part 9 http://pc.2ch.net/tech/kako/1020/10208/1020830472.html
  Part10 http://pc.2ch.net/tech/kako/1022/10221/1022127528.html
  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/l50
Win32 API関連スレ
  Win32API 質問箱 Build4
  http://pc.2ch.net/test/read.cgi/tech/1023361418/
心得
壱.質問する前に過去ログにも目を通してみる。
弐.質問する前に MSDN などで調べてみる。
参.VBScript もこのスレでOK。
4.インストーラーなどの質問もOK。
五.下ネタもたまにならOK
0748デフォルトの名無しさんNGNG
>>746-747
Controls("Picture" & i).Visible = False
くだらん質問ばかりすんなよ
0749デフォルトの名無しさんNGNG
くだらなくねえだろ
0750738NGNG
>>748さん
VB極めた気配がしまつ。。
ちょっとやってみて報告します。
>>749さん
私は初心者に超がつくのかもしれません。超初心者スレができないかな。
0751デフォルトの名無しさんNGNG
>>748
くだらないのはお前自身
0752デフォルトの名無しさんNGNG
>>751
オマエモナー
0753738NGNG
みなさん、私なんかの為にけんかしないでください。
気持ちはとても嬉しいですから(*^ _ ^*)
0754デフォルトの名無しさんNGNG
>>748
便乗質問ですが、

strTmp1
strTmp2

という変数があり、
For lngCnt = 1 To 2
strTmp & CStr(lngCnt) = ""
Next lngCnt

みたいなのをやりたいんですが、この場合はどうしたらいいんでしょうか?
0755デフォルトの名無しさんNGNG
>>754
配列にするのがベストかと。
0756デフォルトの名無しさんNGNG
質問です。
シングルコーテーションで囲まれた
CSV形式のテキストファイルを作りたいのですが
どうやればいいのでしょうか?
お願いします。
0757デフォルトの名無しさんNGNG
>>756
やってみて分からない個所だけ聞けよ
丸投げはヤメレ
0758デフォルトの名無しさんNGNG
>>728
可能

>>739
同様の質問が過去ログにある
0759754NGNG
>>755
もちろん普通は配列にするのはわかってますが、
こういうのもできるのかなと思っての質問です。
0760746、738NGNG
Dim i As Integer
For i = 1 To 2
Controls("Picture" & i).Visible = False 'いったん消して
Next

Dim Str1 As String
Str1 = "Picture" 'こんなこともできるのか?
For i = 1 To 2
Controls(Str1 & i).Visible = True '再び表示
Next

ありがとうございました。
見事にできました。
Contorolsも知らなかったので検索キーワードも思いつきませんでした。
やはり分厚い本を最初から最後まで読まないとこういったことは覚えられないか。
0761デフォルトの名無しさんNGNG
>>756
Printで一行分の文字列書けばいいんじゃ
0762756NGNG
Print #1,"'" & Test1 & "','" & Test2 & "'"
ってこと?
0763デフォルトの名無しさんNGNG
>>759
パブリックな変数なら CallByName で出来るかも。
試してないのであくまでも「かも」ですが。
0764デフォルトの名無しさんNGNG
>>762
それでダメなのか?
0765デフォルトの名無しさんNGNG
>>728
object.Execute [url[, operation[, data[, requestHeaders]]]]
MSDEのここのページを見ると詳しく書いてある。
requestHeaders の部分に必要なHttpヘッダを入れる。
0766デフォルトの名無しさんNGNG
>>764
文字列中にシングルクォーテションが入っていた場合が考慮されていない。

どのみち、CSVに書き出すのは簡単だが、取り出すのがめんどい。
0767756NGNG
>>764
なんか簡単な方法あるのかなと思ったのよ
長くなると面倒くさくて
ありがとう
0768765NGNG
そぉりぃ。MSDNでした。
Inet1.Execute , , , "Referer: maeno.page" & vbCrLf & _
"User-Agent: Mybz/1.00" & vbCrLf
0769デフォルトの名無しさんNGNG
>>758
すいません、できれば、User-Agentとかを変える方法の
ヒントとかお願いできないでしょうか
0770738、746NGNG
オレが738の書き込み時間から今の時間までに試したり思ったりしたこと。
-------------------------------------------------
実験1
Dim i As Integer
Dim Ary() As Integer
i = 1
ReDim Ary(i) '動的配列のサイズ指定に変数iを使うことができた。
Dim sAry(i) As Integer '静的配列の宣言にはこの便利な方法は使えなかった。
------------------------------------
実験2
Dim j=5 '変数の宣言と同時に値を代入することはできなかった。
------------------------------------
思ったこと1
>>754のようなかんじのプログラム。
For i=1 to 10
Dim BaseName & i as integer'たぶんエラーがでるけど、こんなかんじで変数を宣言できたら便利
Next

754やこのようなことは配列やコレクションでないとできないのかも。
---------------------------------------
初心者がほえてるのは見苦しいが
まあ勝手にムカついてくれ
0771デフォルトの名無しさんNGNG
>>770
10時50分から 14時27分まで 考えてたのか。
ヒマだね〜〜〜。
0772デフォルトの名無しさんNGNG
>>771
暇そうだな。お前。
0773デフォルトの名無しさんNGNG
VB使うくらいならDelphi使いたいよな
0774デフォルトの名無しさんNGNG
>>773 使えばいいだろ
0775 デフォルトの名無しさん NGNG
いいよね
0776デフォルトの名無しさんNGNG
>>773
使う言語の指定が なければ Delphiを使いたいぜーーー。

ホント VBしか しらねぇやつばっかで 困っちまうぜ。
0777デフォルトの名無しさんNGNG
こまるよね
0778738NGNG
そうでもないよ
0779 ◆ExGQrDul2E NGNG
↑にせものをにせものと見抜けないとレスを返すのも難しい。
0780777NGNG
そうだよ
0781776.5NGNG
そうかな
0782デフォルトの名無しさんNGNG
DataGridコントロールにRecordSetを連結させたあと、
DataGridをクリックした場合、その行のレコードの内容を取得したいのですが、
どうしたらいいのか教えてください。
0783>782NGNG
Private Const SELECT_STRING As String = _
"SELECT * FROM Contacts ORDER BY LastName, FirstName"
Private Const CONNECT_STRING As String = _
"Data Source=Bender\NETSDK;Initial " & _
"Catalog=Contacts;User Id=sa"

Private m_DataSet As DataSet
Private Sub Form1_Load(ByVal sender As Object, ByVal e As _
System.EventArgs) Handles MyBase.Load
Dim data_adapter As SqlDataAdapter

data_adapter = New SqlDataAdapter(SELECT_STRING, _
CONNECT_STRING)

data_adapter.TableMappings.Add("Table", "Contacts")

m_DataSet = New DataSet()
data_adapter.Fill(m_DataSet)

dgContacts.DataSource = m_DataSet.Tables("Contacts")
End Sub
0784デフォルトの名無しさんNGNG
>>783みたいに
本当のプロもいるのよね
0785デフォルトの名無しさんNGNG
この程度でプロなら自称素人の私はプロ中のプロだな
0786デフォルトの名無しさんNGNG
>>784
マジレス。どの辺がプロ?
0787デフォルトの名無しさんNGNG
弱い犬ほどよく吠える
0788デフォルトの名無しさんNGNG
>>786
データベースをやってるとプロの気配がただようんだ。
0789769NGNG
ぼけぼけですた

>>765
めっちゃどうもありがd
0790デフォルトの名無しさんNGNG
>>786
VBって、とっつきやすいから他言語を使っている人から見れば想像を
絶するような初心者が多い。

このスレの趣旨であり大部分を占める初心者質問からみれば十分まと
もなコードだと思うよ。
0791デフォルトの名無しさんNGNG
>783
つーかこれあきらかにMS系のサンプルコードだと思うんだが。
0792デフォルトの名無しさんNGNG
>>782
DataGridコントロールにRecordSetを連結しているという事は、
そのレコードの内容は既にグリッドに表示されてると思うのだが。
0793デフォルトの名無しさんNGNG
たぶんこのスレ、気が弱い人は質問できない。
0794VB信者NGNG
>>793がイイ事逝った
0795デフォルトの名無しさんNGNG
そもそも気の弱い人は2ちゃんに来ない。
0796デフォルトの名無しさんNGNG
ひろゆきが好きでないと2ちゃんに来れない
0797デフォルトの名無しさんNGNG
vb6のdirlistboxやfilelistbox等を使用して
ftp接続したサーバー(linux)のディレクトリを
表示することはできますか?
0798デフォルトの名無しさんNGNG
正直VBを全くのド素人の状態から初めて1ヶ月チョット。
このままVBを頑張るか、他の言語へ乗り換えるか・・・。

なんか色んなスレROMってると、
VBでは難しいこと出来ないみたいなことばっかかいてあったし。
どうなんでしょう?
0799デフォルトの名無しさんNGNG
自分が何作りたいかによるだろ。
0800デフォルトの名無しさんNGNG
そもそも難しいことが何かわからない。


VBで出来ないことも実際あるけどそれが難しいこととは別の話しだし。
0801デフォルトの名無しさんNGNG
VisualBasic6.0上では、隠しファイル(フォルダも含む)を参照することが出来ません。
そこで、getattr関数を使って、ファイルの属性を調べ、隠しファイルであれば
setattr関数を使って属性を変更してまた戻しています。

で、質問なのですが、
「最近使ったファイル」を調べたいのですが、これは「隠しフォルダ」になっています。
MSDNで調べてみると。setattr関数って、ファイルしか属性変更できないみたいなんですけど、
どのように、フォルダの属性を変更すればよいのでしょうか?

あるいは、属性変更せずに隠しフォルダの中身を参照することはできるのでしょうか?

どなたか分かる方ご教授願います。
0802デフォルトの名無しさんNGNG
>>801
参照ってなにで参照してんのよ?

> そこで、getattr関数を使って、ファイルの属性を調べ、隠しファイルであれば
> setattr関数を使って属性を変更してまた戻しています。
つか、やめれ。
0803801NGNG
802様
>参照ってなにで参照してんのよ?
フォルダの中身を調べて、中のファイルのパス名を取り出したいのです。

>> そこで、getattr関数を使って、ファイルの属性を調べ、隠しファイルであれば
>> setattr関数を使って属性を変更してまた戻しています。
>つか、やめれ。
申し訳ございませんが、なぜ駄目なのか教えていただけないでしょうか?
0804追記@801NGNG
質問の回答にはなってませんでした。
>参照ってなにで参照してんのよ?
フォルダの中身を調べて、中のファイルのパス名を取り出したいのです。
ですから、Dir関数を使おうかなと
0805デフォルトの名無しさんNGNG
>>798
ハードウェアよりのことはCやアセンブラ。
データベース系はVB。
VBやってるとVBscriptが使えるASPの習得も楽で、
ASP + SQL Server を運営して2ちゃんのようなサイトを作ることもできる。
0806デフォルトの名無しさんNGNG
( ´_ゝ`)フーン  
0807デフォルトの名無しさんNGNG
駄目だこりゃ
0808デフォルトの名無しさんNGNG
>>805
なるほど、これはもう少し慎重に選択してみたいと思います。
ありがとうございました。
0809デフォルトの名無しさんNGNG
ここはとても温和で気軽にカキコめるスレだと思うがな
他に比べれば
0810デフォルトの名無しさんNGNG
>>804
ヘルプでDir関数の第2引数を調べろ
0811デフォルトの名無しさんNGNG
なんでも知ってる人は聞かれなくても自分からどんどん教えたくなるもんさ
0812デフォルトの名無しさんNGNG
>>797
不可能。
0813デフォルトの名無しさんNGNG
>>797
そn二つで出来るかは知らないが、普通のリストボックスじゃダメなん?

FTP接続は、アップロード、ダウンロード、ディレクトリ表示などどれも超簡単。
0814デフォルトの名無しさんNGNG
>>801-803
801のプログラムが実行中に、OSが落ちようとも電源が落ちようとも
どんな事態が起きようとも絶対に、ファイルの属性を元に戻す自信があれば、
別にそのように作ってもいいんじゃない。

0815デフォルトの名無しさんNGNG
>>798
VBを一ヶ月ちょっとやって、まだまともに出来ないのであれば、
他の言語に移るのは止めておいた方がいい。

かつ、難しいといわれるプログラムもしない方がいい。
0816デフォルトの名無しさんNGNG
>>814
マルチタスクって知ってるか?
0817デフォルトの名無しさんNGNG
814 名前:デフォルトの名無しさん[sage] 投稿日:02/10/08 22:07
>>801-803
801のプログラムが実行中に、OSが落ちようとも電源が落ちようとも
どんな事態が起きようとも絶対に、ファイルの属性を元に戻す自信があれば、
別にそのように作ってもいいんじゃない。

816 名前:デフォルトの名無しさん[sage] 投稿日:02/10/08 22:23
>>814
マルチタスクって知ってるか?
0818801NGNG
810様 レスありがとうございます。
ヘルプを調べました。フォルダに関する記述は「vbDirectory」のみです。
これはつまり、「隠しフォルダ」については、
普通のフォルダに属性を変更することができない、ということをあらわしているのでしょうか?

814、817様レスありがとうございます。
よく分かりました。なぜ隠しフォルダなのか分からないまま
突発的なエラーが出たときにきちんと対処できるか
どうかという問題ですね。

0819デフォルトの名無しさんNGNG
VBで出来ないことって何━━(゚∀゚)━━ッ??
0820デフォルトの名無しさんNGNG
816は何が言いたいのか?
0821デフォルトの名無しさんNGNG
>>818
んーと、そろそろアレなので解答というか…。
「vbDirectory or vbHiddon」とか。
罠があるのでgetattrしてチェックした方がいいとか、そのgetattrには罠があるとか。
こそらへん調べるといいかな。
0822デフォルトの名無しさんNGNG
>>819
大抵のことはできるでしょ。
VBの基本コンポーネントだけでAPI使用禁止、とか言われたらかなり無理が
出るけど…。
ただ、APIを大量に使い出すとVBである意味がなくなる罠。
まぁ、VBにも他の言語にも向き不向きがあるってこった。
0823デフォルトの名無しさんNGNG
>>819
OSがWindows以外で動作させる事。
つまり、最高精度でWindowsだからあんまり精度を求める処理は無理。
また、高速なスピードを要求する処理。

マルチスレッドは無理すれば何とか。
0824801NGNG
821様。レスありがとうございます。
どうやら私的にもう少しヘルプの熟読と、VisualBasic解説HPの検索が必要みたいです。
第2引数の複数選択が出来るみたいですね。
getattr関数、dir関数ともに勉強し直してきます。

ここのスレの皆様、ご教授大変ありがとうございました。
またどうしても分からないことがありましたら、
よろしくお願いいたします。
0825816NGNG
>>820
そのプログラムが属性変更して動いている最中でも
別のプロセスが動く可能性があるということですが。

これでもまだ理解できませんでしょうか?
0826デフォルトの名無しさんNGNG
排他ロックが必要か
0827デフォルトの名無しさんNGNG
ファイルリストボックスやコモンダイアログでファイルを複数選択して、同じ操作を
させたいのですが、どのような記述をすればいいでしょうか?
内容は、バイナリデータをデコードして、CSVファイルにして出力させるというものなのですが。
よろしくお願いします。
0828729NGNG
>動作中のVBアプリがタスクマネージャのアプリケーションの項目に表示されないようにしたいのですが、可能でしょうか?

自己レスです。
過去ログにShowWindowで出来るようなことが書かれていたので試してみました。
hWnd = FindWindow(vbNullString, "キャプション")
ShowWindow hWnd, SW_HIDE
で、"キャプション"に自分以外のアプリのキャプションを指定するとそのアプリはタスクマネージャに表示されなくなりました。
しかし、自分自身のキャプションを指定すると、画面上には表示されなくなるのですがタスクマネージャには相変わらず表示されていました。
これはこういうものなのでしょうか?ご存知の方教えて頂けないでしょうか。よろしくお願いします。
0829デフォルトの名無しさんNGNG
>>828
オーナーウィンドウの方を操作すればできそうだが。
0830729NGNG
>>829 さま
アドバイスありがとうございます。
オーナーウィンドウのハンドルを取得してShowWindowしたところ、願っていた動作をするようになりました。
ほんとに助かりました。やっと眠れます。
オーナーウィンドウの意味がまだよく分かっていませんが、ぼちぼち勉強していきたいと思います。
ありがとうございました。
0831デフォルトの名無しさんNGNG
>>798
むずかしいことをすれば、むずかしいこともできる。

>>811
能ある鷹はチンコを隠す
0832デフォルトの名無しさんNGNG
ちんこみたい
0833デフォルトの名無しさんNGNG
クラスに開始メソッドと停止メソッドを追加したいんですが
予約語で命名出来ません。この場合何てつけますか?

ダメな例 start stop, start end, begin end, open close
0834デフォルトの名無しさんNGNG
質問です。
ダイヤルアップ環境で、オフライン中にインターネットに接続しようとすると
ダイヤルアップのウィンドウが表示されますが、
これを画面に表示させないでWebアクセスなどを試みることは可能でしょうか?
(バックグラウンドで無理やりダイヤルアップ接続する方法とかではありません。)
繋がっていなかった場合はなんらかのエラー検出が出来る方法であればありがたいです。
どなたかご存知でしたら教えてもらえないでしょうか。よろしくお願いします。
0835デフォルトの名無しさんNGNG
ダイヤルアップのプロパティで「ダイヤルしない」にすれ。
0836デフォルトの名無しさんNGNG
>>833
start too stop, start too end, begin too end, open too close

start stoped, start ending, begin ending, open closed
0837834NGNG
>>835 さん
情報ありがとうございます。
ちょっと手元にダイヤルアップ環境がないので調べられなかったのですが、
VBアプリでそのプロパティの項目を「ダイヤルしない」に変更してしまえばよいということですかね?
で、終わったら元に戻してやればいいと。変更の仕方を調べてみます。(分かるかなぁ?)
どなたか他にも情報ありましたらよろしくお願いします。
0838デフォルトの名無しさん NGNG
>>835
丁寧な説明は大いに結構だが、肝心の>>834氏が理解できるかどうか、
甚だ疑問と思われ。
無駄な努力(猫に小判、豚に真珠に値する行為)は放棄すべし。w

・・・他のROM者にはプラスになるのかもしれないが・・・。
0839834NGNG
>>838
そこまで言う事無いでしょう?
なんなんだ?あんたは
0840デフォルトの名無しさんNGNG
「この板はプログラムを作る人のための板です。」
0841デフォルトの名無しさんNGNG
>>839
ダイアルアップ接続中かどうかを調べるAPIならいろいろあるよ
対象のOSは何?
0842デフォルトの名無しさんNGNG
>>839
コピペにマジレスカッコ(・∀・)イイ!!
って どこでみたんだったかな>>838の文章。。
0843デフォルトの名無しさんNGNG
838は コピペ

そんなこと言うなら、 838が 834が理解できるように 説明しろ。
説明できないのに 否定だけするな。
0844834NGNG
すみません、言葉が足りませんでした。
「VBアプリ」でWebアクセスなどを行う場合にダイヤルアップのウィンドウを表示させない方法を探していました。

>>840 さん
そうなんですか!
対象OSはWindows95OSR2以降、WindowsNT4ServicePack3以降のWindowsです。
(幅広くてすみません。)よろしくお願いします。
0845デフォルトの名無しさんNGNG
「このスレは初心者のためのスレです。」
ですが、とりあえず勉強してる、調査したなどの努力は みせましょうね。
0846834NGNG
まことにすみません、>>840 さんではなく>>841 さまでした。
0847834NGNG
>>845 さん
ご忠告ありがとうございます。
ダイヤルアップ関連については初めてでしたので、つい何も考えずに質問してしまいました。
これからは気をつけたいと思います。

少し調べたところRASというAPIがなにやら使えそうなので、もう少し調べてみようと思います。
■ このスレッドは過去ログ倉庫に格納されています