VB初心者質問スレPart3
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNGhttp://piza2.2ch.net/test/read.cgi?bbs=tech&key=990793224&ls=50
01531
NGNGhttp://www.f2.dion.ne.jp/~impact14/
0154デフォルトの名無しさん
NGNGhttp://soramimi-i.com/my2/vb/03/030306.htm
強制終了を禁止するだけなら、こーゆーんで。
0155152
NGNG試しましたが、win2kでは使えないようです・・・
0156デフォルトの名無しさん
NGNGワークシートにコントロールを複数配置したいのですが
うまくいかなくて困ってます。
スピンボタンのlinkedcellの値がF2のものをコピーしても
linkedcellの値がまたF2のものができてしまいます。
ここを相対参照にする方法ってないんでしょうか?
コードも継承されないみたいだし...
0157デフォルトの名無しさん
NGNG実際に使ったことはないけど、midiOut〜っていうAPIを使うか、
DirectMusicでやるのが簡単そうだと思う。
自前で計算したいならMODとかについて調べるといいと思うよ。
0158デフォルトの名無しさん
NGNGよう見てみ。最後のは質問として成り立ってないから
そういう口調になっても仕方ないよ。
>>152
NTと9xでは処理が全然違うんだけど、NT/2K限定でいいの?
http://members.tripod.com/~masapico/doc_DisableSAS.html
0159デフォルトの名無しさん
NGNGシステムが使うDLLを書き換えるのは怖いですが試してみます。
レスありがとうございました。
>>154
言い忘れましたが、レスありがとうございました。
0160152
NGNGAlt + Tab によるアプリの切り替えを防止する方法ってありますか?
0161デフォルトの名無しさん
NGNG偶数行はこの色、奇数行はこの色
のように簡単に見やすく色分けする事は出来るでしょうか。
0162デフォルトの名無しさん
NGNG文字を回転させて表示することは可能なのでしょうか
どなたかお願いします。
0163デフォルトの名無しさん
NGNG0164149/158
NGNG検索してるの?
http://www.tair.freeservers.com/download/killers.html
こことか海外には有用なコード一杯落ちてるよ。日本国内じゃレベルが知れてる。
>>161
.ColSelが効かないのがちょっとアレだけど、.CellBackColorで変えられるよ。
>>162
DCに描画するしかないね。163の言うとおりで初心者のレベルは超えてる。
DC(デバイスコンテキスト)について勉強したほうがいい。
0165
NGNG>Alt + Tab によるアプリの切り替えを防止する方法ってありますか?
Ctrl+Alt+Delを無効にするコードはMSDNに載っています。
絶対に使うな!って書いてありますけど(!?藁
0166デフォルトの名無しさん
NGNGレスありがとうございます
難しそうですが挑戦してみます。
0167名無しさんの野望
NGNG例.
999973261.dat<>こんなしぇんむ〜は嫌だ!! パート4 (123)
1000141155.dat<>QOH & PB ACCESS 7 (572)
subject.txtを読み込む
↓
行の左から14文字取り出す
↓
14文字目に"<"がある項目から"<"を削除する。
↓
配列にファイル名を入れ,次の行へ
↓
繰り返し
という方法を考えていますが,1行ずつテキストを
変数に読みこむという処理はどうすればよいでしょうか。
また,テキストとして読み込むよりバイナリとして
読み込んだほうが,やはり処理は早いのでしょうか。
0168160
NGNGレスありがとうです。
検索はかなりしましたが、日本語ページしか見てませんでした。
海外の方がレベルが高いんですかー。今度は海外も見てみます。
0169デフォルトの名無しさん
NGNG表示させたいのですがどうすればいいのでしょうか?
0170デフォルトの名無しさん
NGNGSetWindowPos の HWND_TOPMOST を使う。
0171!!!警告!!!
NGNG!!!!!!放置開始!!!!!!
0172デフォルトの名無しさん
NGNGSetWindowPos()にHWND_TOPMOSTを指定してやればOK。
ていうかこの手のは検索すれば死ぬほど出てくるが?
>>167
ていうかInStr()使ったほう(".dat"を検索)が早くないか?
>1行ずつテキストを変数に読みこむ
それ以外にどういう方法があんの?Line Inputとかヘルプ見た?
>また,テキストとして読み込むよりバイナリとして
いいところに気が付いたけど、この程度の処理ならロジックが複雑に
なる分と相殺かな。
バイナリで読む利点はメモリにおいて読めることなんで
(ファイルI/Oのオーバーヘッドが減る)
この例のように、行先頭のみ、一行の長さが可変という処理なら
テキストで読んだほうが簡単。
0173136
NGNG0174デフォルトの名無しさん
NGNG0175デフォルトの名無しさん
NGNG今VB使ってないから、
PC内蔵のスピーカ外せ、としか言えない。
0176デフォルトの名無しさん
NGNGTextBoxのKeyPressイベントで、Len(TextBox.Text) >= TextBox.MaxLength が True の場合に、KeyAscii=0にするとか。
やってないのでわからないが、理論上はできるはず。
あとはMaxLengthを2増やし、Len(TextBox.Text) >= TextBox.MaxLength - 2が(以下略)
0179デフォルトの名無しさん
NGNGVBでどうやるのか知らないけど、APIでならGetFontして
LOGFONTに細工してSetFontでしょ。
0180デフォルトの名無しさん
NGNGテキストボックスのプロパティで、
フォーマットを全角のみにした場合でも、半角スペースのみだと
変換されずにそのまま通ってしまいませんか?
回避策を思い付かないので、教えていただければ幸いです。
0181デフォルトの名無しさん
NGNG文字が一番下の行に表示されてしまうのですが、
一番上の行に表示させることはできるでしょうか?
よろしくお願いします。
0182デフォルトの名無しさん
NGNG0183デフォルトの名無しさん
NGNGあるディレクトリ下のファイル数を一発で取得する方法で簡単なものがあった
ら教えて頂けないでしょうか?FindFirstFile系のAIPを使用してカウントする
とファイル数が1000位までならあっという間なんですが、Cドライブ全てな
んかをカウントするととても耐えられない時間がかかります。
それと、ファイルの実際の使用サイズを取得する方法もお願いします。
よろしくお願いします。
0184デフォルトの名無しさん
NGNG>________ .|
 ̄ .|./_ _\ | | ______
| / ヽ/ ヽ | | /
. | | ・ | ・ | V⌒i
_ |.\ 人__ノ 6 | < うるせー馬鹿>>183
\ ̄ ○ / |
. \ 厂 \
/ _____/  ̄ ̄ ̄ ̄ ̄
 ̄ ̄, -/へ/\/`- 、
/./ ./o i. \
0185デフォルトの名無しさん
NGNGイベントログには
ソース (○○○○) 内のイベント ID (9999) に関する説明が見つかりません。次の挿入文字列が含まれています
と記述されています。これを避けるためにはどのようにしたらよいのか、どなたか詳しい方、
ご教授願えないでしょうか。。。
Appオブジェクトを使う方法ではなく、APIを使用する方法を希望します。
Option Explicit
Declare Function RegisterEventSource Lib "advapi32.dll" Alias _
"RegisterEventSourceA" ( ByVal lpUNCServerName As String, _
ByVal lpSourceName As String) As Long
Declare Function DeregisterEventSource Lib "advapi32.dll" ( _
ByVal hEventLog As Long) As Long
Declare Function ReportEvent Lib "advapi32.dll" Alias "ReportEventA" ( _
ByVal hEventLog As Long, ByVal wType As Integer, _
ByVal wCategory As Integer, ByVal dwEventID As Long, _
ByVal lpUserSid As Any, ByVal wNumStrings As Integer, _
ByVal dwDataSize As Long, plpStrings As Long, lpRawData As Any) As Boolean
Declare Function GetLastError Lib "kernel32" () As Long
Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" ( _
hpvDest As Any,hpvSource As Any, ByVal cbCopy As Long)
Declare Function GlobalAlloc Lib "kernel32" (ByVal wFlags As Long, _
ByVal dwBytes As Long) As Long
Declare Function GlobalFree Lib "kernel32" ( ByVal hMem As Long) As Long
Public Const EVENTLOG_SUCCESS = 0
Public Const EVENTLOG_ERROR_TYPE = 1
Public Const EVENTLOG_WARNING_TYPE = 2
Public Const EVENTLOG_INFORMATION_TYPE = 4
Public Const EVENTLOG_AUDIT_SUCCESS = 8
Public Const EVENTLOG_AUDIT_FAILURE = 10
Public Sub LogNTEvent(sString As String, iLogType As Integer, _
iEventID As Long)
Dim bRC As Boolean
Dim iNumStrings As Integer
Dim hEventLog As Long
Dim hMsgs As Long
Dim cbStringSize As Long
hEventLog = RegisterEventSource("", App.Title)
cbStringSize = Len(sString) + 1
hMsgs = GlobalAlloc(&H40, cbStringSize)
CopyMemory ByVal hMsgs, ByVal sString, cbStringSize
iNumStrings = 1
If ReportEvent(hEventLog, iLogType, 0, iEventID, 0&, iNumStrings, cbStringSize, hMsgs,hMsgs) = 0 Then
MsgBox GetLastError()
End If
Call GlobalFree(hMsgs)
DeregisterEventSource (hEventLog)
End Sub
Sub Main()
Call LogNTEvent("Information from " & App.EXEName, EVENTLOG_INFORMATION_TYPE, 1001)
Call LogNTEvent("Warning from " & App.EXEName, EVENTLOG_WARNING_TYPE, 1002)
Call LogNTEvent("Error from " & App.EXEName, EVENTLOG_ERROR_TYPE, 1003)
End Sub
0186185
NGNG0187デフォルトの名無しさん
NGNG0188デフォルトの名無しさん
NGNG動作速度はともかくとして、簡単に取得するなら
FileSystemObject 使うのもありかも。
0189デフォルトの名無しさん
NGNG移動できるサンプルコードがあったら教えていただけないでしょうか?
0190デフォルトの名無しさん
NGNG0191189
NGNG0192183
NGNGありがとうございます。
でもFileSystemObjectの方が遅かったので・・・。結局全フォルダ
オブジェクト下のファイル数を地道に数えて行くんですよね?
たとえばC:\windowsと指定したらそのディレクトリにぶら下がって
いる全てのディレクトリ下のファイル数も一辺に取得したいんです。
0193デフォルトの名無しさん
NGNGVBの標準exeで改行コードLFをCRLFに変換したいんですが
何か良い方法はないでしょうか。
0194デフォルトの名無しさん
NGNG0195デフォルトの名無しさん
NGNGstrExpression = Replace(strExpression, vbLf, vbCrLf)
これではだめでしょうか?
個人的には vbNewLine 使うトコだけど。
0196デフォルトの名無しさん
NGNGどう使い分けたらいいのか分からない…
0197デフォルトの名無しさん
NGNGvbNewLine : 一応プラットホームに依存しない(事になってる)コードを書ける。
まあ気休めだけどね。
UNIX 系、Mac、Win 全部に対応しようと思ったら結局自分で書くしかないね。
0198デフォルトの名無しさん
NGNG--------------------------
Private Sub Command1_Click()
Set Form2 = New Form2
Form2.Show
End Sub
--------------------------
Form1のCommand1をクリックすると、Form2が新しく表示されますが
いっぱいクリックすると、いっぱいForm2が現れます。
それぞれのForm2はどうやって識別するのでしょうか。
オブジェクト名は「Form2」ではないみたいなのですが…。
0199デフォルトの名無しさん
NGNG0200デフォルトの名無しさん
NGNGそれじゃお金もらえない。
処理済のテキストをもっぺん通したらどうなるか考えてみれ。
0201デフォルトの名無しさん
NGNGフォームの数分変数を用意すればいいんじゃねーの?
0202デフォルトの名無しさん
NGNGForm2ってのは暗黙のForm2オブジェクトのインスタンスを
示すから、Set Form2...てのはそもそも間違い。
ヘタすると循環参照になる恐れもあるし、リソースがどんどん減っていく
のが分かると思う。
0203デフォルトの名無しさん
NGNGどうしたらよろしいのでしょうか?
ご教授お願いいたしまっす!
0204aita
NGNG2つに分けた2つ目の文字列が文字化けしてしまいます。対処策を教えてください。
0205デフォルトの名無しさん
NGNG2バイト文字が真っ二つになっている。
+1か-1をしてみれ。
0206aita
NGNGでも、それをやっても化けちゃうんだなぁ!
どうしよう?
0207デフォルトの名無しさん
NGNGつか、Mid 関数って文字単位じゃなかったっけ?
どんな文字列食わせてるの?
0208デフォルトの名無しさん
NGNG0209デフォルトの名無しさん
NGNGon Error goto ErrHandle
call SomeFunc '再帰関数を呼ぶ
ErrHandle:
MsgBox("計算に失敗しました")
こんな感じではエラーを捕まえてくれずに落ちちゃう・・
#再帰が浅いデータで計算するとうまく動いているから再帰関数自体は問題ないとおもう
0210デフォルトの名無しさん
NGNGVB4,5,6は文字列はデフォでUnicodeだから漢字ANK混在でも
途中で切れる事は無いはず。
>>209
再帰を呼び出す回数を制限するカウンタを導入したら?
public sub MyFunc(Byval CallCnt as Integer)
__if CallCnt < 100 then
____Call MyFunc(CallCnt + 1)
__end if
end sub
0212デフォルトの名無しさん
NGNGデータベースをやりたくてはじめたのですが、
ADOやらDAOやらRDOやらで、どれを勉強して良いかわかりません。
とりあえず、新しいということでADOを勉強しようと思っているのですが、
他の2つより劣っている部分ってあるのですか?
0213デフォルトの名無しさん
NGNG情報も多いし。
0214デフォルトの名無しさん
NGNGVBから他の言語に乗り換えろ
0215デフォルトの名無しさん
NGNGWebBrowserコントロールのフォントサイズの変更ってどうやるんですか?
それらしいプロパティを見つけられんのですけど・・・
0216名無し
NGNGことはけっこう高度なものなのでしょうか?数学使うんでしょうか?
(数学)苦手なもので・・。えっと大学の授業でそういう情報処理の科目
があるんですけど、数学苦手でまだプログラミングのことが分からない
初心者には無理ですかね?無理なものをとってもしょうがないと思いまして。
誰かおしえてください!
0217デフォルトの名無しさん
NGNG0218212
NGNGDAOの方が簡単なんですか?
つーか、違いが今ひとつ分かりません・・・。
0219名雪
NGNG0220デフォルトの名無しさん
NGNG瀬戸遥
0222デフォルトの名無しさん
NGNGフォーム上にテキストボックスを貼り付けました。
VBのテキストボックス上で右クリックするとメニューが出ると思うのですが、ExcelVBAの場合それが出ません。
これは仕様なのでしょうか?
それとも簡単に出す方法がほかにあるのでしょうか。
0223213
NGNGDAOはJetなどのスタンドアロンDB用。
ADOはSQL鯖などクライアントサーバ用。
お気軽って意味で、初めての時はDAOがいいんじゃないかな、と思った。
モチロン、環境が用意出来るならこの限りではないけど。
詳しくは↓でも読んでみてチョーダイ。
http://homepage2.nifty.com/inform/vbdb/
0224デフォルトの名無しさん
NGNGadoの方が新しいんだから、adoやっとけ。
別にどちらが難しいとかいうことはない。同じ。
0225sage
NGNG0226デフォルトの名無しさん
NGNG0228デフォルトの名無しさん
NGNGVB6で作りたいのです。
VB6で作成した物を常駐させて置いて、
適当なアプリを起動しようとした時に、
そのアプリが起動する前に、
作成しておいた適当な画像なりフォームなりを
割り込ませて表示する方法ってありますでしょうか?
アプリが起動する前にというのが出来ない場合には、
同時でも構いませんので、
何かいい方法はありませんでしょうか?
どうかご教授下さい。
0229デフォルトの名無しさん
NGNGVB6でエクスプローラーとかからドラッグ&ドロップしてファイルリストボックスにファイル名をリストアップしたいのですが、
Private Sub File1_OLEDragDrop(Data As DataObject,(中略)
File1.filename = Data.Files(1)
End Sub
だと、一つしかファイル名が表示できません。
D&Dしたファイルのファイル名をどんどん追加したのですが、どなたか教えて頂けませんでしょうか??
宜しく御願いしますm(__)m
0230218
NGNGありがとうございます。結局、>>224さんの言われるように
「新しいから」と言う理由でADOを始めてみました。
ADOはスタンドアロン環境ではダメって訳じゃないんですよね?
で、やってて分からないことなのですが、
DBに接続したデータグリッドコントロールをクリックして、
クリック位置の「行」のデータを取得して
別に用意した行数分のテキストボックスに表示したいのですが、
クリック位置の行のデータの取得方法ってどうしたら良いのでしょう。
よろしくお願いします。
0231デフォルトの名無しさん
NGNG0232デフォルトの名無しさん
NGNGなんか化けてるんでは?
0233デフォルトの名無しさん
NGNGリストボックスに代入してから、ファイルリストに追加するとか・・・
なんや姑息な手段しか思い浮かばんな。
ってゆーか、なんでファイルリストボックスに追加したいんよ?
なんの作業をしたいの? リストボックスじゃダメなん?
0234229
NGNGどうもありがとうございます。
おっしゃるとおり、リストボックスだとフルパスがどんどん追加されますね。
なんでファイルリストだと追加ができないんですか、ほんと初心者なもので。。
ちなみに、やろうとしている作業は動画リストを作ってRealPlayerで再生させようという物です。
0235233
NGNGPrivate Sub Form_OLEDragDrop(Data As DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim ddfile As Variant
Dim i, ii As Integer
Dim temp As String
For Each ddfile In Data.Files
List1.AddItem ddfile
Next
List2.Clear
For i = 0 To List1.ListCount - 1
ii = 0
Do
temp = Right(List1.List(i), ii)
ii = ii + 1
Loop Until Left(Right(List1.List(i), ii), 1) = "\"
List2.AddItem temp
Next
End Sub
ちょと作てみた。かなりドキュソだが動くでしょ。ま。
List2のアイテムをクリックしたときに、List1の同じ番号のアイテムを開くとか。
そーやりゃー、なんとか、たぶん。
リストファイルとして保存とか・・するん?
0236デフォルトの名無しさん
NGNG実行時に現在処理中の関数の名前を取得したいのですが、
良い方法はあるでしょうか。
用途はエラーハンドリング時に表示させたいんです。
お願いします。
0237デフォルトの名無しさん
NGNG0238デフォルトの名無しさん
NGNGワードラップをしない方法はありませんでしょうか?
0239229
NGNGまたまたありがとうございます。多謝、多謝。
List2にファイル名がでました。これのほうがスッキリしてますね。
保存は.iniでなんとかリストファイルを作成できそうです。
これでお気に入りの動画を再生することができそうです、むふむふ。
0240デフォルトの名無しさん
NGNGそれはどういう事でしょうか。
Function FuncA As result_type
funcname = FuncA
End Function
こういう事ですか?
沢山数があるので、できれば特定の関数名は書かずに
済ませたいんですが、無理でしょうか。
0241デフォルトの名無しさん
NGNGそういう関数名とかは 実行時型情報(RTTI)というんだ
VBのIDEはそれをどこかに持っているのは確かだけどさ・・・・
0242デフォルトの名無しさん
NGNGよくある毎日かわる壁紙とかってどうやってんの?
やっぱりVBとかなの?
ふつーはどうやって作るもんなの?
0243デフォルトの名無しさん
NGNG別にVB以外でも、たいてーの言語なら作れると思われ。
で、なにさ? それを作りたいの?
0244デフォルトの名無しさん
NGNGその気になりゃWSHでもbatファイルでもできる。
つーか俺ならそうする。
0245242
NGNG作れっていわれてるんだけど
一般的にこーゆーのってどーやってつくられてるの?
ASPならちょっとできんだけどWSHなら楽かな?
おれならコレをこーやって作るっていうのきぼん
0246193
NGNG何をしたいかと言うと、ftpで送られてきたファイルの中に
lf改行コードのファイルがあるかもしれないので、crlfに
してくれと言われたのです。
Open "c:\FTP\ftp.log" For Input As #1
Do While Not EOF(1)
strDum = Split(LineData, vbLf) < ---LFコードで区切る
Text1.Text = Join(strDum, vbCrLf) < ---CRLFコードでつなげる
Loop
Close #1
こんな感じで書いてみたんですが、型が一致しませんと怒られました。
どなたかお知恵を貸してください。
>>193,197
返答ありがとうございます。
0247236
NGNGあるとデバッグに便利なのに・・。
回答してくださった方、ありがとうございます。
0248193
NGNGは
strJoin = Join(strDum, vbCrLf)
の間違いです。
strDumとstrJoinは共に配列で宣言してるstring変数です。
0249デフォルトの名無しさん
NGNGAが小数の場合は自動的に丸められてしまってうまく比較ができません。
この場合はどのようにしたら良いでしょうか
0250デフォルトの名無しさん
NGNG割るんでなくて掛ければ?
0251デフォルトの名無しさん
NGNGページ設定(プリンタの設定じゃないです)を
呼び出すにはどうすればいいですか?
メモ帳なんかだと印刷プレビューとか出ていて
いい感じなんで、あれを使いたいんですよ。
0252249
NGNG掛け算でもそういったことが分かるものなのでしょうか。
すでに算数になってしまって、申し訳ないですがよろしくお願いします。
■ このスレッドは過去ログ倉庫に格納されています