トップページ⇒tech
985コメント293KB

v(・∀-)b VBプログラマ質問スレ(6.0以前) Part25

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
VBの質問スレです。

前スレはこちら
  Part16 http://pc3.2ch.net/tech/kako/1034/10343/1034302532.html
  Part17 http://pc3.2ch.net/tech/kako/1036/10361/1036154952.html
  Part18 http://pc3.2ch.net/tech/kako/1038/10381/1038103769.html
  Part19 http://pc3.2ch.net/tech/kako/1039/10398/1039859691.html
  Part20 http://pc2.2ch.net/tech/kako/1041/10418/1041879465.html
  Part21 http://pc2.2ch.net/tech/kako/1044/10440/1044028945.html
  Part22 http://pc2.2ch.net/tech/kako/1046/10463/1046354784.html
  Part23 http://pc2.2ch.net/tech/kako/1047/10477/1047743187.html
  Part24 http://pc2.2ch.net/test/read.cgi/tech/1050151126/

VB.net関連スレ
【老若】VB.net質問スレ【男女】 (Part2)
http://pc2.2ch.net/test/read.cgi/tech/1043629429/

Win32 API関連スレ
Win32API 質問箱 Build10 (979)
http://pc2.2ch.net/test/read.cgi/tech/1047819779/

心得
壱.質問する前に過去ログにも目を通してみる。
弐.質問する前に MSDN などで調べてみる。
参.VBScript もこのスレでOK。
四.インストーラーなどの質問もOK。
五.荒らしは相手しない。
六. VB情報募集中。
七. VB.NETはスレ違い
0685デフォルトの名無しさんNGNG
> On Error 禁止で挑むのが匠
タダの馬鹿だと思うぞ。
C++等で言えばtry禁止か?
0686デフォルトの名無しさんNGNG
>>684
VB(VBS)のライブラリを使っている限り、エラーは実行時エラーになります。
APIを使えば旧式の「戻り値でチェック」が使えます。
それだけのためにわざわざ面倒なことをする必要はないけど。
0687デフォルトの名無しさんNGNG
>>685
ネタなんだとおもうぞ
0688674NGNG
>>677-680さん
>>674 = 676です
Err.Number 55 で出来そうです。エラー番号があるのを知りませんでした。
どうもありがとうございましたm(__)m
0689デフォルトの名無しさんNGNG
>>688
Err.Descriptionでエラーメッセージが分かるぞ。
ユーザーフレンドリーなエラーとしては使えんが、デバッグ用ならOK。
あと、Err.Raiseで好きなエラーを作成・発生させられる。
これも一緒に覚えておこう。
0690674NGNG
>>689さん
ありがとうございます
MSDN見て勉強してみますm(__)m
0691デフォルトの名無しさんNGNG
InetでTXTファイルをUNIXのFTPサーバにPUTしようとしているのですが、
自分のローカルでS-JISからEUCに変換して
PUTしても、行の最後に^Mがついてしまいます。
これは、どうやったら消せるでしょうか?

初心者質問で申し訳ありません。
0692デフォルトの名無しさんNGNG
>>691
改行コードだろ、多分。WindowsはCR+LFだから、CRを消してLFだけにする。
0693デフォルトの名無しさんNGNG
DataComboについて質問させていただきます。

DataComboのドロップダウンリストの横幅を変更したいのですが
下記のソースの様にAPIのSendMessageを使用しても、変更する事
が出来ません。
通常のComboBoxは上記のAPIを使用して変更できるのですが、DataComboは
無理なのでしょうか?
それとも別の方法で変更することが可能なのでしょうか?
ご存知の方がいましたら、教えてください。

環境
VisualBasic6.0(SP5)
Microsoft DataList Controls6.0(SP)(OLEDB)

*****標準モジュール****************************************************
'API宣言
Declare Function SendMessage Lib "USER32" Alias "SendMessageA" _
(ByVal hWnd&, ByVal wMsg&, _
ByVal wParam&, ByVal lParam&) As Long
'定数
Public Const CB_SETDROPPEDWIDTH = &H160

*****フォームモジュール*************************************************
Private Sub Form_Load()
Call SendMessage(Combo1.hWnd, CB_SETDROPPEDWIDTH, 500, 0)

Call SendMessage(DataCombo1.hWnd, CB_SETDROPPEDWIDTH, 500, 0)
End Sub
0694デフォルトの名無しさんNGNG
>>685
不用意に適用するのは駄目だろ。

保守性は下がるしエラー原因の特定が困難になる。

ちゃんとログを残しながらトラップしてれば良いけど・・・


0695デフォルトの名無しさんNGNG
USBで繋げた複数のHDを自動的にフォーマットを行ったり、
ボリュームラベルを変更したりするようなソフトは作ること可能ですか?
0696デフォルトの名無しさんNGNG
>>695
楽勝
0697デフォルトの名無しさんNGNG
>>696
5つぐらい繋げたHDのパーティションを分けることも可能ですか?
0698デフォルトの名無しさんNGNG
楽勝
0699デフォルトの名無しさんNGNG
>>698
なるへそ。
ありがと〜。作ってみます。
0700デフォルトの名無しさんNGNG
>>695
Shell "format ドライブ"
SetVolumeLabel()

>>697
かなり難しいと思う。DeviceIoControl で IOCTL_DISK_SET_DRIVE_LAYOUT で
できそうではあるけどね。
0701ageNGNG
にゃん
0702デフォルトの名無しさんNGNG
VB糞だな
0703デフォルトの名無しさんNGNG
>>702
何をいまさら?
0704デフォルトの名無しさんNGNG
,
0705karenNGNG
VB6.0で画像のヒストグラフ書きたいんですけど
よくわかりません。
とる込むところまではできているんですけど
この後、どうすればいいのですか?
0706デフォルトの名無しさんNGNG
取り込むってなんだよ、プログラミング用語でいってくれ。
0707デフォルトの名無しさんNGNG
>>705
とる込むって何を?
まぁPictureBoxでLineやPsetメソッドなんかを使って描画して
SavePictureでbmpで出力。
0708デフォルトの名無しさんNGNG
激初心者なのですが、
誰か暇で心麗しいシトがいたら宿題教えてください。
おながい致します。

*フィボナッチ数列を任意の項数まで求める事のできるプログラムを
 <For~Next文>を使って作る。
 求める項数はテキストボックスを使って入力する。


 
0709デフォルトの名無しさんNGNG
>>708
潔いな
0710デフォルトの名無しさんNGNG
>>708
で、どこまでやったんだ?
0711デフォルトの名無しさんNGNG
>>700
ありがとー
ボリュームラベルの変更は出来たよ!
でもやっぱ、パーティションの変更はよく分からん( ´・ω・)
今回はフォーマットとラベル変更で勘弁してやら−ヽ(`Д´)ノ
0712デフォルトの名無しさんNGNG
標準EXEのプロセスの優先度をAPIで下げた場合、そのプログラムから
呼び出されるACTIVEX.EXEの優先度はどうなるのでしょうか?
くだらない質問ですいません。
0713デフォルトの名無しさんNGNG

VBのメッセージ出力のような、表示したいメッセージの番号を組み合わせて
(1,2,4で、1,2のメッセージを表示したい時は3というような)
作るパターンの関数を作りたいのですが、これで良いのでしょうか?

Function test(int_ChkNo)

 arr_Data = Array(1,2,4)

 For i=UBOUND(arr_Data) to 0 Step -1

  If(int_ChkNo >= arr_Data(i)) Then

   Select Case arr_Data(i)

    Case "1"

    Case "2"

    Case "4"

   End Select

   int_ChkNo = int_ChkNo - arr_Data(i)

  End If

 Next

End Function
0714デフォルトの名無しさんNGNG
>>713
ビットごとにAnd取ったら?
0715713NGNG
>>714 簡単で結構ですので詳しくお願いしまする
0716デフォルトの名無しさんNGNG
「簡単で結構」≠「詳しくお願い」
0717デフォルトの名無しさんNGNG
ワロタ  
0718デフォルトの名無しさんNGNG
さげろ

.NETスレほど注目されてねーんだよ
勘違いやろーども














こぴぺ推奨
0719デフォルトの名無しさんNGNG
>>715
const MSG_A = 1
const MSG_B = 2
const MSG_C = 4

という形で宣言しておき、

If value and MSG_A Then
End If
If value and MSG_B Then
End If
If value and MSG_C Then
End If

という形で使う。
0720デフォルトの名無しさんNGNG
>>719 続き
ビット演算は基本的テクニックだから、覚えておいたほうがいいぞ。

10進の1 が 2進の0001
10進の2 が 2進の0010
10進の4 が 2進の0100

10進の3(1+2)だと、0011になり、0001、0010のどっちでもヒットする、ってわけだ。
わかりづらかったら、電卓で変換しながら試してみるといい。
0721デフォルトの名無しさんNGNG
VisualBasic6.0ってXPでも動きまスカ?
0722直リンNGNG
http://homepage.mac.com/yuuka20/
0723デフォルトの名無しさんNGNG
>>721
動くよ。いくつかの問題はあるけどね。
0724デフォルトの名無しさんNGNG
>>723
レスありがとうございます。
問題とは具体的にはどういったものでしょうか?
0725デフォルトの名無しさんNGNG
msのnewsgroupの過去ログに詳しい情報があった。

開発環境が固まるとか、Formatでの丸めが違うとか、等幅フォントの扱いが
違うとか、そんな感じ。
0726デフォルトの名無しさんNGNG
>>725
調べてみます。本当にありがとうございました。
0727 NGNG
Enterキーを入力すると編集モードになるコントロールがある場合
プログラムで編集モードに入る方法を教えて頂けませんか?
厨房な質問ですいません
0728デフォルトの名無しさんNGNG
>>727
たとえばどんなコントロール? 普通、なんらかのインターフェイス(メソッドとか
プロパティね)を用意してると思うんだけど。

そういうのがないなら、keybd_event()とかで、Enterを送っちゃうとか。
0729 NGNG
>>728
スプレッドシートみたいなものです。
メソッドやプロパティにもないようなので困っています。

>そういうのがないなら、keybd_event()とかで、Enterを送っちゃうとか。
ありがとうございます。試して見ます。
0730デフォルトの名無しさんNGNG
>>729
だから、どのコントロールか書けっての。
もしかしたら、すごく詳しい人がいるかもしれねーべ。
0731 NGNG
それが他の人が作ったコントロールなんです(^^;
0732デフォルトの名無しさんNGNG
>>731
じゃ、作った人に聞くしかないね。
0733713NGNG
>>719-720
レスありがとうございます。
僕の作ったやつは必ず値の大きい方から表示されていたのですが、
それも一気に解決できました!
助かったです。
勉強になりました。
詳しいお答えありがとうございましたm(_ _)m
0734デフォルトの名無しさんNGNG
時々意味不明に悩まされています。
例えばステータスバーのちょい上にCommandボタンを置いて実行すると、
時々ボタンがステータスバーに半分以上隠れちゃうのです。なぜなんでしょうか
またどうすればいいのでしょうか。
それと、テキストボックスでエンターキーを押すと次のテキストにフォーカス
を移ろうとしても、なぜかコマンドボタンが実行されてしまいます。よく
わからないのですがこれは仕様なんでしょうか?ボタンのコントロールを作っ
て使えば大丈夫くさいんですけど。原因が知りたいと思います。
0735デフォルトの名無しさんNGNG
>>734
意味不明に悩まされました。
0736デフォルトの名無しさんNGNG
ニポンゴ シャベッテ クダサーイ
0737デフォルトの名無しさんNGNG
>>731
ユーザーコントロールでいじくれるなら自分で改造すれば?
0738デフォルトの名無しさんNGNG
>>734
シ ツ モ ン ノ イ ミ ガ カ イ ド ク デ キ マ セ ン
C:\>□
0739727NGNG
>>728

keybd_eventでクリアできました。
ありがとうございました。
0740デフォルトの名無しさんNGNG
>>734
マウスでプログラミングすることなんかにたよってるからそうなるんだよ。
0741デフォルトの名無しさんNGNG
ボタンを押したら画面が切り替わるのは
どうやったらいいのですか?
例えば、最初に名前入力させて
実行ボタンを押すと問題がでるみたいに
したいんですけど…
0742デフォルトの名無しさんNGNG
>>734
ステータスバーはコンテナではないので、その上にコントロールは置けない。
なので、コントロールの上下関係に気をつける必要がある。

Enterでボタンが実行される件は、デフォルトボタンになっていないか確認すれ

>>741
フォームをShowすれ
0743デフォルトの名無しさんNGNG
なんでVBにはSenderないんだYO!
わざわざクラスで作るかYO!
この糞プログラムめ!
Delphiマンセー
スマソ、自分に知識のない香具師の愚痴ですた。
0744デフォルトの名無しさんNGNG
>>743
VB.NETに移行しる
0745デフォルトの名無しさんNGNG
>>743
VBとスクリプトぐらいしか知らん者ですが、Senderってなんですか?
0746直リンNGNG
http://homepage.mac.com/yuuka20/
0747デフォルトの名無しさんNGNG
>>745 なはっなはっ
0748デフォルトの名無しさんNGNG
Sender偉い!Sender偉い!
0749デフォルトの名無しさんNGNG
GP-IB通信ついて、おすすめサイトを教えてくれ
0750デフォルトの名無しさんNGNG
naha naha naha!!!!
0751デフォルトの名無しさんNGNG
>>749
GP-IBボード/カードのサイトがいいよ。
0752デフォルトの名無しさんNGNG
Senderオブジェクトが好きなDel厨よ、
ならば次から作るVBプログラムは全部コントロール配列にしる。
0753デフォルトの名無しさんNGNG
Senderオブジェクトって何?
0754デフォルトの名無しさんNGNG
結局ここには説明できるまともなDel使いはこないのか、、
0755デフォルトの名無しさんNGNG
>>753
イベントプロシージャを呼び出したコントロール。ボタンのクリックイベントなら、
クリックされたボタンが入ってる。

VB.NETでは、Delphiと同様にSenderが利用できる。
0756デフォルトの名無しさんNGNG
前と同じような事を書き込んでしまうのですが、アウトプロセスの
ACTIVEX.exeの優先度を下げるにはどうすればよいのでしょうか?
0757693NGNG
だれか教えてくらはい〜>>693
やはり普通のコンボボックスではないと駄目なのでしょうか?
0758デフォルトの名無しさんNGNG
pointメソッドでPicture1の色情報を得て次に何をしているのかが
わかりません。
HFFってのは色を表しているのだと思うんですが、、、
どなたか教えてください。

For j = 0 To 199
For i = 0 To 199
k = Picture1.Point(i, j) And &HFF
hist(k) = hist(k) + 1
Next
Next
0759デフォルトの名無しさんNGNG
>>757
やって駄目なら無理でしょ。

>>758
色は表してない。いわゆる、「アンドを取る」ってやつだね。
ビット演算について学ぶとよし。
0760デフォルトの名無しさんNGNG
まともなVB厨がんばってるか?
ときどき糞スレたてるVB厨を矯正してくれよ
0761デフォルトの名無しさんNGNG
VBの質問じゃないかもしれないですが
MDBファイルをADOで触ってます
ACCESSでいう「テーブルのレイアウト」というのを、VBから設定することは出来ますでしょうか?
0762デフォルトの名無しさんNGNG
>>761
ADOXを調べてみては?
0763デフォルトの名無しさんNGNG
>>758
赤の輝度を取得している。
AND &HFF00 で緑
AND &HFF0000 で青
0764デフォルトの名無しさんNGNG
(´-`).。oO(VB知らんけど、&H000000FFって書かなくていいんだ・・・)
0765デフォルトの名無しさんNGNG
picture1とpicture2の画像を重ね合わせて表示する方法ってありますか?
0766デフォルトの名無しさんNGNG
>>765
ありますが、どんな結果が望み?
透明色とかアリ?
0767デフォルトの名無しさんNGNG
>766
もちろんありです。
0768デフォルトの名無しさんNGNG
>>767
方法を言い出せばうんざりするほどある
VB標準の機能で自力で描画、TransparentBlt、DIB、DirectXまで。

てきとーにやりたいならTransparentBltをお勧めする。
IE5以降が入ってないと使えない上にリソースリークするらしいがな。
0769デフォルトの名無しさんNGNG
テキストボックスの途中に文字列を挿入ってできますか?
[abcghi]→[abcdefghi]みたいな感じに
cとgの間クリックしたらそこにクリップボードから貼り付けみたいな
0770デフォルトの名無しさんNGNG
>>768
一番すすめちゃだめなのぢゃんw
0771デフォルトの名無しさんNGNG
765です。
いろいろありがとうございます。
もう少しがんばってみます。
0772デフォルトの名無しさんNGNG
例えばテキストボックスでform1で入力させた文を
form2に持ってく方法ありますか?
0773デフォルトの名無しさんNGNG
>>772
ふつーにやればできるが。
0774sageNGNG
form1.text1.text1とか頭にフォーム名つける
0775デフォルトの名無しさんNGNG
>>769
クリックイベントに
Text1.SelText = "ほげほげ"
みたいなイメージ?
0776デフォルトの名無しさんNGNG
勝手に補足。対象のインスタンス名がform2の場合は、form2でいいが
インスタンス名が別ならそのインスタンス名をつけること。

例
Dim form2instance As Form2
Set form2instance = New Form2
なんてコードならform2instance.text1.textという風になる。
0777デフォルトの名無しさんNGNG
777
0778デフォルトの名無しさんNGNG
>>774
ほんとありがとうございます。
初心者でとりあえず、某書のビギナー編を買ったんですが載ってなくて…
ググっても見たんですけど、vbのいいHPがなかなか見つからなくて苦労してました。
0779デフォルトの名無しさんNGNG
すいません、vb使ってるとよく馬鹿にされるので他の言語に移行したいのですが、
無理ですか?
0780デフォルトの名無しさんNGNG
>>779
2ch以外で馬鹿にされることはないだろ
0781デフォルトの名無しさんNGNG
>>779
がんばって移行してちょうだい
0782デフォルトの名無しさんNGNG
>>780
プロなら職場でも思いっきり馬鹿にされるだろ
0783デフォルトの名無しさんNGNG
すいません、2chができる前から良く馬鹿にされていました。
VC++などにも挑戦したのですが、挫折したので何かもうちょっと
簡単なものないですか?
0784デフォルトの名無しさんNGNG
馬鹿にされる要素に気づけ
■ このスレッドは過去ログ倉庫に格納されています