VBプログラマ質問スレ(6.0以前) Part39
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
NGNG質問者は使用しているOS、VBのバージョン、サービスパック
何がしたくでどうしたけどどう困っているのかを明確に書きましょう。
○関連スレッド
VB.NETは別物なので、基本的に質問はこちらへ
VB.NET質問スレ (Part7)
http://pc5.2ch.net/test/read.cgi/tech/1096683017/l50
API関連の質問はこちらへ
Win32API質問箱 Build24
http://pc5.2ch.net/test/read.cgi/tech/1098967135/l50
MSDN Online Japan ホーム
http://www.microsoft.com/japan/msdn/default.asp
Visual Studio 6.0 Service Pack 6 正式リリース
http://msdn.microsoft.com/vstudio/downloads/updates/sp/vs6/sp6/default.aspx
http://www.google.co.jp/
※「まず自分で調べる」を身につけよう。
心得
一.質問する前に過去ログにも目を通してみる。
二.質問する前に MSDN などで調べてみる。
三.VBScript もこのスレでOK。
四.インストーラーなどの質問もOK。
五.荒らしは相手しない。
六. VB情報募集中。
七.VB.NETの話題できるだけひかえる。
前スレ Part38 http://pc5.2ch.net/test/read.cgi/tech/1095673000/
0002デフォルトの名無しさん
NGNGPart 1 http://piza2.2ch.net/tech/kako/968/968328471.html
Part 2 http://piza2.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/tech/kako/1026/10266/1026642565.html
Part13 http://pc3.2ch.net/tech/kako/1029/10292/1029241786.html
Part14 http://pc3.2ch.net/tech/kako/1030/10309/1030947162.html
Part15 http://pc3.2ch.net/tech/kako/1032/10327/1032706491.html
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
0003デフォルトの名無しさん
NGNGPart22 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/tech/kako/1050/10501/1050151126.html
Part25 http://pc2.2ch.net/tech/kako/1052/10526/1052627913.html
Part26 http://pc2.2ch.net/tech/kako/1055/10551/1055145106.html
Part27 http://pc2.2ch.net/tech/kako/1058/10586/1058674927.html
Part28 http://pc2.2ch.net/tech/kako/1061/10612/1061296197.html
Part29 http://pc2.2ch.net/tech/kako/1065/10654/1065446334.html
Part30 http://pc2.2ch.net/test/read.cgi/tech/1069160036/
Part31 http://pc2.2ch.net/test/read.cgi/tech/1073732636/
Part32 http://pc2.2ch.net/test/read.cgi/tech/1077216109/
Part33 http://pc5.2ch.net/test/read.cgi/tech/1080606445/
Part34 http://pc5.2ch.net/test/read.cgi/tech/1084544243/
Part35 http://pc5.2ch.net/test/read.cgi/tech/1087519251/
Part36 http://pc5.2ch.net/test/read.cgi/tech/1092906058/
Part37 http://pc5.2ch.net/test/read.cgi/tech/1090286450/
0004デフォルトの名無しさん
NGNG( =゚-゚)< >1-3乙。今度こそ良スレになりますように。。。
0005デフォルトの名無しさん
NGNGこのスレは初心者の質問にも満足に答えられないスレです。
ご了承ください。
ただし、質問に対して回答が分からないくせに書き込む行為は
荒らし行為として取り締まられるので、徐々に治安はよくなって
いくと思われます。
0006デフォルトの名無しさん
NGNGオメデトウ!お前がアラシ第一号だ。
何でそんなに粘着するんだ?彼女をVBに取られたのか?(プ
0007デフォルトの名無しさん
NGNG心得
五.荒らしは相手しない。
0008デフォルトの名無しさん
NGNGここに質問した方がよかったかな。
シート1のA1〜A100まで値が入っていたとして、その中から
文字列で「AA」が入ったセルだけををシート2のB列にコピーしたいのですが
どうしてもうまくいきません、誰か助けてください
0009デフォルトの名無しさん
NGNGマルチは氏ね。
0010デフォルトの名無しさん
NGNG0011デフォルトの名無しさん
NGNGtimeSetEventを使ってタイマーにしているのですが、
コールバック関数内でDLLを呼び出そうとすると、
VB上では問題ないのですが実行ファイルにするとエラーになってしまいます。
DLLのバグかもと考えたのですが、ためしにコールバック関数内でMsgBox使ってみたら
これでもエラーになるようなのでコールバック関数内ではなにか呼び出すようなことはできないのでしょうか?
0012デフォルトの名無しさん
NGNGエラーが出た時はエラーメッセージをそのまま書く事
と。
0013デフォルトの名無しさん
NGNG001411
NGNG0015デフォルトの名無しさん
NGNGコールバックの中で他の関数呼び出すのはOKだったと思うよ。
他のマルチメディア系のAPIだと、コールバックの中で使えないAPIあったりするから、
もしかしたら、これもあるかもしれんけど。
コールバック関数の定義ミスか、初期化してないバッファへ書き込みに行ったかだとは思うけど、
VB上で正常に動作しているなら前者は無いと思うし、後者は実際のコード見ないとわからないし。
プロジェクトにデバッグシンボルを吐き出せるようにする設定があるから、それをオンにしてから
実行ファイルを作り直して、VCでデバッグ実行して確認したほうがいいかも。
たいがい一発で原因が分かるよ。
0016デフォルトの名無しさん
NGNGtimeSetEventは内部でスレッドを作成していて、
VBではスレッドを使用するものは無理か難しい。
だからそういうエラーになる。
というのが一般的な答え。
でも俺普通に使っていたような気がするんだけどなぁ。
ちょっと検索したらこんなのが見つかった。
DirectXを使うことで同等のことができる?
http://nothing.sh/diarylog/200101.htm
0017デフォルトの名無しさん
NGNGhttp://www.koalanet.ne.jp/~akiya/vbtaste/vbp/
タイトル マルチメディアタイマーを用いたストップウォッチ
ファイル名 StpWch00.lzh
サイズ 9KB
更新日 2002/03/12
今後の予定 ひとまず完成版とさせて頂きます。
分類 VB6で作成したサンプル
機能 マルチメディアタイマーを使ってストップウォッチを組み立てます。
主な内容 API関数timeSetEvent、timeKillEvent、timeGetTimeの使い方。
イベントオブジェクトをDirectXforVBで待ち受ける方法。
注意 DirectX8 for VBを利用しています。
DirectX7 for VBで使用するには、一部修正する必要があります。
001811
NGNG動くには動くんですが・・・どうもtimeSetEventをコールバックでやるよりも精度が悪いです。
具体的にはメトロノーム作っているのですが。
VBでは限界なんですかね。
0019デフォルトの名無しさん
NGNG「思う」じゃないだろ、「思う」じゃ。
「かもしれん」じゃないだろ「かもしれん」じゃ。
「わからないし」じゃないだろ「わからないし」じゃ。
0020デフォルトの名無しさん
NGNG分かる場合だけ回答して、分からない場合は静観する。
こんな簡単なルールが守れないか?
0021デフォルトの名無しさん
NGNGそれは自分で問題を解決した(しようとした)ことがない奴の意見としか思えん。
あるいは、ガッコの宿題的にとにかく問題が解決すればいいと思ってる奴か。
はっきりした回答じゃなくても、ちょっとした情報が問題の解決に
つながる場合だって往々にしてあるんだよ。
0022デフォルトの名無しさん
NGNG馬鹿かお前
くだらん無駄情報は相手の時間のロスにしかならない
0023デフォルトの名無しさん
NGNG0024デフォルトの名無しさん
NGNGただ答えだけ教えろって何様のつもりだよ。
0025デフォルトの名無しさん
NGNG答えだけ書けよ。無能。
0026デフォルトの名無しさん
NGNG日曜の昼間からそんな風に面識もない奴煽って楽しいか?
まあ煽りじゃなくて本気かもしれないが。
いずれにしろかわいそうな人ですな。
0027デフォルトの名無しさん
NGNGあ、餓鬼か無職かな?
0028デフォルトの名無しさん
NGNG答えを書く気が無いのなら邪魔だから消えてくれないかな
0030デフォルトの名無しさん
NGNG言葉の端に出自が現れますな。
0031デフォルトの名無しさん
NGNG反論できなくなるとソレですか。
あなた、頭わるいですね。
0032デフォルトの名無しさん
NGNGそんなにイヤなら会社辞めれば?
「SE」とか「PG」という職業に憧れて入ってみたらVBでさえ分からなくて
会社で叩かれ、恥をかいて捌け口を2ちゃんに求めるなんざ愚の骨頂。
頼むからリアルで勉強会でも開いて学び合うとか前向きになるか、
それでもなければ、他でやってくれ。ハッキリ言ってウザイ
0033デフォルトの名無しさん
NGNGあなたは一生無職でいて下さい。
0034デフォルトの名無しさん
NGNG雑談したければ、他のスレ行けばいいんじゃない?
質問があり、それに答える。それの何が悪い?
間違っている情報を相手に与える方が迷惑とは思わない?
0035デフォルトの名無しさん
NGNG0036デフォルトの名無しさん
NGNG関係ない雑談をするお馬鹿さん。
クレタ人のパラドクスみたいだな。
0037デフォルトの名無しさん
NGNG答え以外に低脳人からほしい情報はない。
0038デフォルトの名無しさん
NGNGいいえ
0039デフォルトの名無しさん
NGNGその前に反論してもらえるようなことを書けるように
なった方がいいよ。
0040デフォルトの名無しさん
NGNG0041デフォルトの名無しさん
NGNG>>間違っている情報を相手に与える方が迷惑とは思わない?
オマエ・・・・
何様だ?
0042デフォルトの名無しさん
NGNGEnd Sub
'------------------------------------------------------------------
0043デフォルトの名無しさん
NGNGできればマトモなヤツおながいします
0044デフォルトの名無しさん
NGNGCで作成されたAPIを呼び出す時の質問なのですが、
Date型の引数は、VB側ではどのようにすれば値を取得することが
できるのでしょうか?
よろしければ、どなたかご回答お願い致します。
環境:VB6(SP5)
0045デフォルトの名無しさん
NGNG0046デフォルトの名無しさん
NGNGCにはDate型なんてないよね。構造体かな?
自作DLLがらみの問題の時は、
DLL側の宣言部だけでも掲示してもらわないと
どうしようもないよ。
0047デフォルトの名無しさん
NGNG申し訳ございません。私の勘違いでした。よく調べてみると
func_API(ByRef intTime As Long)という感じで、
intTimeにはUTCの時刻が返ってくるようなのですが、
これをVBのDATE型にするにはどのような方法があるのでしょうか?
0048デフォルトの名無しさん
NGNG0049デフォルトの名無しさん
NGNGAPIからは「1087440828」のような「経過秒」が返ってくるのですが、
DateValue()で変換することが可能なのでしょうか?
0050デフォルトの名無しさん
NGNGDim t As Long
t = 1087440828
Text1.Text = DateAdd("s", t, "1970/1/1")
UTFは知らん。
0051デフォルトの名無しさん
NGNG日本国内決め撃ちでよければ、さらに9時間足せばいい。
0052デフォルトの名無しさん
NGNG上記の方法でできました!
本当に有難うございます!!
0053デフォルトの名無しさん
NGNG> DirectXでやってみました。
> 動くには動くんですが・・・どうもtimeSetEventをコールバックでやるよりも精度が悪いです。
> 具体的にはメトロノーム作っているのですが。
精度悪いんかなぁ。まあtimeSetEventよりも余計な処理が入っている分
少しは悪いとは思うが。メトロノームくらいなら十分な気がするんだけど。
どういうことをやって違いがわかった? もはや人間には違いがわかない世界だと思うんだけど。
タイマー内の処理が長すぎたりしない?ソースコードの修正で精度を改善できそうなきがする。
>>17のサンプルはtimeSetEvent(の別名MMTimeSet)のResolution(分解能)が
5になっているからそのせいじゃない?
あとtimeBeginPeriodで精度をあげることができるのでそれを使うとか。
0054デフォルトの名無しさん
NGNG0055デフォルトの名無しさん
NGNGプロジェクトを右クリック→追加でクラスが現れません。
どうすればいいですか?
0056デフォルトの名無しさん
NGNGってうんこが出る
0057デフォルトの名無しさん
NGNGFormat関数あたりで可能でしょうか?
Ex.
1→一
2→二
3→三
…
0058デフォルトの名無しさん
NGNG漢数字と一言で言われてもな
1〜10まででいいのか
壱千萬
十万
壱〇〇〇〇〇〇〇
様々な書き方あるわけだが。
0059デフォルトの名無しさん
NGNGうわw
微妙なことしてんなーw
もちろん。わかんねw
006057
NGNGたしかにそうですね・・ほしいのは一から九までです。
Format関数ってけっこう奥深いというかいろいろできるようなので
もしかしたらと思ったんですが…
0061デフォルトの名無しさん
NGNGFor i = 1 To 10
Text1.Text = Text1.Text & Mid("一二三四五六七八九十", i, 1)
Next i
こんなもんでいいじゃん。配列でテーブル持ってもいいし。
0062デフォルトの名無しさん
NGNG五.荒らしは相手しない。
006357
NGNGあ、それいただきますw
関数作るほどでもないし、どうせループで回してるので
無駄にコードの量増やさずにすみました。
ありがとうございます!
0064デフォルトの名無しさん
NGNG横レスだがおまえすげえな!! 感動した
Select case で。。。とか書こうと思ったがやめてよかった
0065デフォルトの名無しさん
NGNGおまえ呼ばわりされる覚えは無い。
0066デフォルトの名無しさん
NGNGすまん
0067デフォルトの名無しさん
NGNGいいかもしれない。(内部的にテーブルに変換される)
でも配列を使ったほうがもっと良いかな。
最適化の設定にもよりそうだけど。
実際にコンパイルしてやってみないと正確なことはわからんけど。
006857
NGNG何気ないところで(あ、かしこいな)って思う書き方ってありますよね。
すごく勉強になります。
>>67
なるほど・・
コードの見やすさは速度には比例しないんですよね…。
わかってはいるけどけっこうIIfとか多用しちゃってます。。
0069デフォルトの名無しさん
NGNGChooseつかうでしょ、普通は。
0070デフォルトの名無しさん
NGNG>61さんので充分イイと思うが。
マジレスごめん。
0071デフォルトの名無しさん
NGNGChoose(i, "一", "二", "三", "四", "五", "六", "七", "八", "九", "十")
・・・まあ、好みだな
1文字じゃなかったらChoose使うかもしれない
0072デフォルトの名無しさん
NGNG使い道が思い浮かばん。初期化には便利な方法だよな
0073デフォルトの名無しさん
NGNGいや、確認したわけじゃないが内部の処理を想像すると(Cで実装することを
考えると)Mid$がChooseより遅いとは思えない。
Chooseって内部的には恐らくchar*の配列みたいなもんでしょ?
007473
NGNG(正)速いとは思えない。
0075デフォルトの名無しさん
NGNG0076sage
NGNGちゃんと動けば
0077デフォルトの名無しさん
NGNG内部はそうかもねー
呼び出す時は、Chooseの場合、多ければ多いほどスタック処理が増える事はわかるよね
007811
NGNG普通になんか遅いような・・・って思って計ると遅かったです。あとリズムがよれる。
もちろん1msにしてますが。
タイマー内の処理も簡単です。
timeSetEventだけ(VB上だと問題なく動くので)のときは問題なかったですし。
0080デフォルトの名無しさん
NGNGMid("一二三四五六七八九十", i, 1)
の場合、3個のデータを渡す
Choose(i, "一", "二", "三", "四", "五", "六", "七", "八", "九", "十")
の場合、11個のデータを渡す
Cがわかるなら作ってみてアセンブルリストを見よう。
008155
NGNGVB6
SP6
です。分かる人いませんか?
0082デフォルトの名無しさん
NGNGText1.Text = a(n)
0083デフォルトの名無しさん
NGNG0084デフォルトの名無しさん
NGNG俺も同じ環境でメニューバーから「参照設定」が消えたり
ツールバーの「オブジェクトブラウザ」や「ツールボックス」とかが勝手に消えたりした。
アプリケーションの追加と削除でアプリケーションの修復をやったけど
完全には戻らなかった。
一旦VBをアンインストールしてから再インストールしたら元に戻ったよ。
0085デフォルトの名無しさん
NGNG「プロジェクト」→「クラスモジュールの追加」でいいな。
0086デフォルトの名無しさん
NGNG落ちてきた文字に合わせてキー押すとGOODとか出したいんですけど
どうしたらいいですか?
0088デフォルトの名無しさん
NGNGこれだけの情報で
どんな解答を望んでいるんだい?
0089デフォルトの名無しさん
NGNG0090デフォルトの名無しさん
NGNGマイクロソフト純正だったら使えた記憶があるのですが・・・。
皆さん、どのようなマウスを使ってますか?
プログラム内容の質問でなくてごめんなさい。
0091デフォルトの名無しさん
NGNGもともと使えない。標準ではホイール対応していない。
お薦めフリーソフトは例えばコレ↓
どこでもホイール
ttp://www2k.biglobe.ne.jp/~araken/qdoko.htm
0092デフォルトの名無しさん
NGNG0093デフォルトの名無しさん
NGNG0095デフォルトの名無しさん
NGNGしたいのですが、そんなやり方を紹介しているいいサイトは
ありませんか?
0096デフォルトの名無しさん
NGNGttp://www.angel.ne.jp/~mike/vb_dll/index.html
0097デフォルトの名無しさん
NGNGありがとうございます。
0098デフォルトの名無しさん
NGNGつまり、別のFrameに移動する場合とかです。
0100デフォルトの名無しさん
NGNGどうすればいいでしょうか?
???? ← 出るかな?
0101デフォルトの名無しさん
NGNGまず出ていない。w
外字だと思うので、外字とVBをキーワードにしてグーグル様にお願いしてみては?
事例は結構あると思いますよ。
0102デフォルトの名無しさん
NGNGUNICODEのキャラクタじゃないのか?
それならばWebBrowserに食わせれば出る
0103デフォルトの名無しさん
NGNGForm_LostFocus
他のアプリに移る時も出てしまうがな
0104デフォルトの名無しさん
NGNG元質問者のはフレームだぞ。
ようは、特定のコンテナに属するコントロールからロストフォーカスしたときに
コンテナからのロスとフォーカスとして一括で扱えるか?って言うことだと思う。
010598
NGNG0106デフォルトの名無しさん
NGNG私もそう思う。
いろんな言語で書くとメンテナンス性が悪い。
0107デフォルトの名無しさん
NGNGCだと参考になるソースも豊富だし、速度が桁違い。
全部Cで作れよとつっこまれたら返す言葉は無いが。
010899
NGNG画像というか、大量のメモリー空間を操作したい処理の場合ですね。
VBだとどうしてもオブジェクト経由でしかメモリーにアクセスできないから。
その点はその通りと思います。
ただ、そういう場合VBでやるなら、コンポーネント買っちまうのが流儀だと思う。
0109デフォルトの名無しさん
NGNGコード書く場所でマウスロール使えないんですか?
設定のところを一通り見てみたんですが、それらしき項目がなかったので皆さんどうしてるのか気になりました。
0110デフォルトの名無しさん
NGNG使用例にある
' 入力文字列用バッファ。
Dim Instring As String
' COM1 を使用します。
MSComm1.CommPort = 1
' 9600bps、パリティなし、データ長 8 ビット、およびストップ ビット長 1。
MSComm1.Settings = "9600,N,8,1"
' Input プロパティ使用時に、バッファ全体を読み取るように設定します。
MSComm1.InputLen = 0
' ポートを開きます。
MSComm1.PortOpen = True
' モデムに AT コマンドを送信します。
MSComm1.Output = "ATV1Q0" & Chr$(13) ' モデムが
' "OK" と応答するのを確認します。
' データがシリアル ポートに戻るのを待ちます。
Do
DoEvents
Buffer$ = Buffer$ & MSComm1.Input
Loop Until InStr(Buffer$, "OK" & vbCRLF)
' シリアル ポートで "OK" 応答データを読み取ります。
' シリアル ポートを閉じます。
MSComm1.PortOpen = False
を使うと、CPU使用率が100%になるのですが、そうならない方法はありますか?
できれば、プロシージャの外に処理を出したくないのですが。
0111デフォルトの名無しさん
NGNGどこでもホイールというソフトでも入れたらいい
0112デフォルトの名無しさん
NGNG100%がいやならばOnCommイベントで取るしかないが。
'Sleepするのは邪道?
0113デフォルトの名無しさん
NGNGうおおお、こんな便利なソフトがあるなんて
助かりました。ありがとうございました。
0114デフォルトの名無しさん
NGNG市販のコンポーネントを積極的に取り入れるのは賛成なんだけど、
仕事だと使えない場面も多いね。
〜分析というアプリを作る場合は特に。
0115デフォルトの名無しさん
NGNGありがとうございます
やってみます。
0116デフォルトの名無しさん
NGNGていうか、まずそのサンプルコピペして一丁あがりって根性を直すべきだと思う。
中身理解してないコードを何の恐怖もなく平気で使える感覚が怖い。
結構どこの会社にも>>110みたいな人っているみたいだけど。。
0117デフォルトの名無しさん
NGNGうるさい
0118デフォルトの名無しさん
NGNG雑談は他のスレでやれ。
プログラマー板のほうがいいんじゃないか?お前が原因で空気悪い。
0119デフォルトの名無しさん
NGNG重なる順序を後から変更することは可能でしょうか
プロパティを見てみたのですが、それらしきものを見つけることが出来ませんでした。
0120デフォルトの名無しさん
NGNGZOrder で前後には動く
0121デフォルトの名無しさん
NGNGありがとうございました。
いろいろ実験してみようと思います。
0122デフォルトの名無しさん
NGNG在庫管理のメニューから呼び出される「商品保守」のForm_Loadプロシージャの部分
なのですが、
Private Sub Form_Load()
dat商品.DatabaseName = strDbName
dat商品.RecordSource = "SELECT 商品コード,商品名,単価 FROM T_商品"
dbg商品.Columns(0).Caption = "コード"
dbg商品.Columns(1).Caption = "商品名"
dbg商品.Columns(2).Caption = "単価"
dbg商品.Columns(0).DataField = "商品コード"
dbg商品.Columns(1).DataField = "商品名"
dbg商品.Columns(2).DataField = "単価"
dbg商品.Columns(0).Width = 300
dbg商品.Columns(1).Width = 4050
dbg商品.Columns(2).Width = 1000
dbg商品.Columns(0).Alignment = dbgRight
dbg商品.Columns(1).Alignment = dbgLeft
dbg商品.Columns(2).Alignment = dbgRight
dbg商品.Columns(2).NumberFormat = "###,#0"
dat商品.Refresh
End Sub
これを実行すると「インデックスが有効範囲にありません」となってしまいます。
アドバイスをお願いします。
0123デフォルトの名無しさん
NGNGつーかどの行でエラーが出るのかくらい書け。
0124122
NGNGエラーは
dbg商品.Columns(2).Caption = "単価"
のあたりから出ます。Columns()が0〜2まで存在する事を確認するにはどうすれば
良いのでしょうか?
T_商品というテーブルには 商品コード、商品名、単価のカラムがあることは
確認しています。
0125デフォルトの名無しさん
NGNG123じゃないが、問題はDBのテーブルじゃなく、多分使ってるであろうDBグリッド側です。
そっちのデザイン上、DBグリッドのカラムはどうなっていますか?
あと、実際にDBのカラムが参照されるのは最後のリフレッシュです。
0126122
NGNG御返事ありがとうございます。
コントロールを張りつける画面ではDBグリッドカラムが二つしかない状態です。
これが原因なのですね。色々とデザインの画面をさわってみたのですが、
DBグリッドのカラムを増やすにはどうすれば良いのでしょうか。
0127デフォルトの名無しさん
NGNGそれぐらいはヘルプを読め。それでもわからんかったら、どこがわからんかかいてくり。
0128デフォルトの名無しさん
NGNGdat商品.Refresh
を
dat商品.RecordSource
の次に入れてみれ
0129122
NGNGヘルプのディスクが無いみたいなので、WEBで検索して勉強します。
アドバイス有難うございました。
>>128
dat商品.Refreshの位置をかえたらちゃんと表示されるようになりました!
アドバイス有難うございました。
0130デフォルトの名無しさん
NGNG0131デフォルトの名無しさん
NGNGコンパイル後 EXEファイルのサイズが2MB近くになってしまいました。
コンパイルにかかる時間もだんだんと長くなってきましたが
実行時は全く問題なく動作します。
開発、実行環境にもよると思うので一概には言えないと思いますが
最大でどれくらいまで大丈夫なものでしょうか?
又は
最大でどれくらいのファイルサイズのEXEを見たことありますか?
0132デフォルトの名無しさん
NGNG見るだけなら10M20Mはざらですが。
100フォームとか。
まあ、自分じゃ絶対やらないけどね。その前にEXEを分割してしまう。
EXE間の連携とかもある程度ノウハウだし。
そもそも画面設計段階でなんとか考慮するし。
0133デフォルトの名無しさん
NGNGTextBoxを右クリックするとポップアップメニューが出るのですが、
この内容を別のものに変更したいのです。
Text1_MouseDownイベントの中で自分で作ったメニューを
if Button = 2 then
PopupMenu menuOriginal
end if
みたいな形で読んでみたのですが、右クリックすると
やっぱりデフォルトのポップアップメニューが出てしまいます。
デフォルトのものを出さずに自分が作ったメニューを出すには
どうしたらいいのでしょうか?
0134133
NGNGデフォルトのメニューを消すにはMouseDownイベントの中で
Text1.Enable = False
Text1.Enable = True
としてやればいいようです。
失礼しました。
0135デフォルトの名無しさん
NGNGMSはこう書いてるな
0136デフォルトの名無しさん
NGNGPictureBox2にそのまま全体をペーストするにはどうすればいいのですか?
0137デフォルトの名無しさん
NGNG0138デフォルトの名無しさん
NGNGform上のTEXTBoxに文字列が入力されたら、Checkボタンが自動的にOnになる
としたいのですが、どうしたら良いのでしょうか(VB6)
0139デフォルトの名無しさん
NGNGTextBoxのChangeイベントに書くよろし。
0140デフォルトの名無しさん
NGNGPicture2.Picture = Picture1.Image
でイケたけど、そういう問題じゃないのかな?
(両方AutoRedrowをTrueに)
>>137
画像として描画するしかない
0141デフォルトの名無しさん
NGNGありがとうございました。
0142デフォルトの名無しさん
NGNGback office っていうのをインストールするかきいてきたんですが、これは、インストールする必要はありますでしょうか?
ちょっと、アホな質問かもしれませんが、さくっと教えて頂けるとありがたいです。
0143デフォルトの名無しさん
NGNGtypeで構造体を宣言した場合、
この構造体のメンバ変数を一度に初期化するのはどうすればいいでしょう?
あと、上の質問に関連してですが、
グローバルな構造体の配列を宣言したいのですが、
これを実現する方法を教えて頂けないでしょうか?
C言語で関数外に
typedef struct{
int i;
char *str
}S_var;
S_var[]={
1,"しょぼーん",
2,"しゃきーん"
}
といった内容をVBで実現する方法です。
よろしくお願いします。
0144デフォルトの名無しさん
NGNG>この構造体のメンバ変数を一度に初期化するのはどうすればいいでしょう?
初期化するコードを書く。
煽りじゃないよ。これ以外に言いようがない。
構造体じゃなくクラスを使うなら、Initializeに初期化処理を書くという手がある。
>グローバルな構造体の配列を宣言したいのですが、
そのすぐ下に書いていることと全然噛み合ってないけど、答えは出来ない。
0145デフォルトの名無しさん
NGNGお返事ありがとうございます。
言語仕様との事なので、仕方ないですね。
ヒントとして教えていただいた、クラスのInitializeも調べましたが
C++でいう(引数無しの)コンストラクタの様なので
私が探しているのとは、違うようです。
構造体配列初期化関数を作る事で対応したいと思います。
0146デフォルトの名無しさん
NGNGあえてクラスを否定して構造体に固執する理由は何もないと思うけど。。
頻繁にコピーでもするのかな?それでも自分のクローン作るメソッド書くだけで、
それがそんなに面倒とも思えない。
0147デフォルトの名無しさん
NGNGexeとdllを同じ場所に置いておけば読んでくれるのですが、
VBからDebugしているときは読み込んでくれません。
dllをどこに置くのが正しいのでしょうか。
0148143
NGNG質問の構造体を使う目的が、
画面遷移の画面の情報を渡すという為で
C言語のテクニック(グローバルな構造体配列を定義する)
テーブルを使いたいという物です。
特別、外部プログラムとのやりとりや、コピーするという訳では無いです。
普通は、どの様にして、次画面の情報を画面に渡すのでしょうか?
例となるコード、HP等紹介して頂ければ、幸いです。
0149144=146
NGNGいや、グローバルな構造体配列を「作ること」は出来るよ。(標準モジュールで宣言するだけ。)
出来ないのは、Cみたいに宣言と同時に初期化すること。
>>143の質問はそういう意図じゃなかったの?だから>>144で
「すぐ下に書いていることと全然噛み合ってない」と書いたんですが。
次画面の情報云々は、それだけじゃ漠然としすぎていて誰も何も言いようが
ないと思いますが。
0150デフォルトの名無しさん
NGNG嫌な日本語
0151デフォルトの名無しさん
NGNG渡したい場合、VC側、VB側、それぞれどんな感じで
記述すればよいのでしょうか。
0152デフォルトの名無しさん
NGNG一応試してダメだったソースです。
[VC側]
LPCTSTR _stdcall TestFunc(LPCTSTR names[], int n)
{
return names[2];
}
[VB側]
Private Declare Function TestFunc Lib "Hello" _
(ByRef names() As String, ByVal n As Long) As String
Private Sub Command1_Click()
Dim names(5) As String
names(0) = "hello"
names(1) = "world"
names(2) = "aaaaa"
names(3) = "bbbbb"
names(4) = "ccccc"
MsgBox TestFunc(names, 5)
End Sub
メッセージボックスで aaaaa が出るかなと思ったのですが、
メッセージは空っぽでした。
0153デフォルトの名無しさん
NGNG今試す環境ないけどいけるんじゃない?
0154デフォルトの名無しさん
NGNGDLLのパス検索順はLoadLibrary()APIの
ヘルプに書いてあるのでいいんでないかな。
オイラはVC++のビルド後の処理でWindowsフォルダにコピーしちまう。
ただこの方法だと一度でもDLLを使用したVBが起動してると
コピーに失敗しちまうから、VBとVCを同時に起動せんように
DLLのデバッグセッションでVB.EXEを起動するようにしてデバッグしてるよ。
文字列配列の受け渡しなんて面倒でやりたくないな。
ちゃんとやるならSafeArray系のAPIを使うんじゃなかったかな。
提示したソースのやり方じゃVB側で困るだろうしね。
0155デフォルトの名無しさん
NGNGVC側をブレークポイントはって覗いてみたのですが、
namesにゴミみたいな値が入っていました。
0156デフォルトの名無しさん
NGNG>文字列配列の受け渡しなんて面倒でやりたくないな。
そうなんですか。数が決まっていない複数の文字列を
渡したいのですが、一般的な方法だとどうやるのでしょうか。
0157デフォルトの名無しさん
NGNG素人で分からんけど、
ヌル文字で終わらせて見たら?
Char(0)
0158デフォルトの名無しさん
NGNGどこの終わりですか。
0159157
NGNGnames(0) = "hello" & char(0)
0160デフォルトの名無しさん
NGNG・・・ネタはいらないです。
0161デフォルトの名無しさん
NGNGnames(0) = "hello" & Chr(0)
0162155
NGNGchar(0)→chr(0)はいいよね。
0164デフォルトの名無しさん
NGNG想像だけど、たぶん、
(1)文字列の配列ではなく、バイト配列の配列を渡すようにする。ただし、
VBは確か配列の配列はできなかったと思うので、バイト配列をメンバにもつ
構造体の配列にする必要がある。
(2)構造体のメンバのバイト配列には、文字列をStrConvでANSIに変換したものを代入。
(3)TestFunc(names, 5)ではなく、TestFunc(names(0), 5)のように配列の最初の要素を
渡すようにする。
これでいけると思う。ひょっとすると(3)だけでもいけるかも。
0165デフォルトの名無しさん
NGNG0166デフォルトの名無しさん
NGNGここには文字列配列でも同様の方法でできますと書いてあるのですが、
先頭の要素は渡るのですが、2番目以降がわたりませんでした。
0167デフォルトの名無しさん
NGNG[フォーム]
Private Sub Command1_Click()
Dim lpfn As Long
lpfn = AddressOf EvtProcess
End Sub
[標準モジュール]
Public Sub EvtProcess()
MsgBox "hello"
End Sub
これでコンパイルエラーになってしまうのはなぜでしょうか。
0168デフォルトの名無しさん
NGNG>AddressOf 演算子は、API プロシージャの呼び出しの中にだけ記述できます。
とあるからでしょうね
0169デフォルトの名無しさん
NGNG>Basic プロシージャの間でも AddressOf 演算子を使ってプロシージャのポインタを渡せますが、
なので
Public Function GetPointer(lngAddressOf As Long) As Long
GetPointer = lngAddressOf
End Function
をモジュールに作って
lpfn = GetPointer(AddressOf EvtProcess)
みたいに書けばエラーは出ない
0170デフォルトの名無しさん
NGNGBackOfficeとはサーバ類のこと。
詳しくはこちら。 http://e-words.jp/w/BackOffice.html
初めてなら不要なものばかりなのでインストールしなくていいよ。
0171デフォルトの名無しさん
NGNGすいません。ちゃんとドキュメントを読んでませんでした。
ありがとうございました。
0172デフォルトの名無しさん
NGNG[VC側]
void _stdcall TestFunc(void (*func)(int n))
{
(*func)(3);
}
[VB側・標準モジュール]
Public Sub EvtProcess(ByVal lCode As Long)
MsgBox lCode
End Sub
Public Function GetAddress(lAddressOf As Long) As Long
GetAddress = lAddressOf
End Function
[VB側・フォーム]
Private Declare Sub TestFunc Lib "Hello" (ByVal lpfn As Long)
Private Sub Command1_Click()
Dim lpfn As Long
lpfn = GetAddress(AddressOf EvtProcess)
TestFunc lpfn
End Sub
0173デフォルトの名無しさん
NGNGこんな感じでVBからDLLのTestFuncを起動し、DLLからVBのEvtProcess
関数を呼ぼうとしているのですが、一応EvtProcessが呼ばれてメッセージ
ボックスが出るところまでは行ったのですが、OKをクリックした後
The Value of ESP was not properly saved across a function call.
This is usually a result of calling a function declared with
one calling convention with a function pointer declared with
a different calling convention.
というエラーが出ます。見たところfuncの宣言とEvtProcessの宣言が
食い違っているというような内容だと思うのですが、どこが間違っているか
分かる方がおられましたらご教授ください。
0174デフォルトの名無しさん
NGNGESPで怒られてるなら、VBのサブルーチンも__stdcallで呼び出さないとまずそうな。
0175デフォルトの名無しさん
NGNG手探りでやっているので質問しまくってすいません。
VC側を
void _stdcall TestFunc(void (* __stdcall func)(int n))
{
(*func)(3);
}
こんな風に変えるということでしょうか。やってはみたのですが、
warning C4229: 旧形式が使用されています : データの修飾子は無視されます。
という警告が出て、状況は変わりませんでした。
0176デフォルトの名無しさん
NGNGこうじゃないか?
0177デフォルトの名無しさん
NGNGVer vb6
サービスパック Pro
フォームのWidthを一定値以下にさせないために
Private Sub Form_Resize()
'Minサイズ指定
If Form1.Width < 1000 Then
Form1.Width = 1000
End IF
End Sub
としてるのですが動作が挙動不審です
もっとエレガントな方法があるなら御教授下さいませ
0178デフォルトの名無しさん
NGNG動作が挙動不審とは最小化した時の動作のことかな?
WindowStateを見るかOn Error Resume Nextをプロシージャの
先頭に書けばいいと思う。
0179デフォルトの名無しさん
NGNGttp://www.vbvbvb.com/jp/gtips/0801/gSetWindowLongGwlWndProcWmGetMinMaxInfoPtMinTrackSizePtMaxTrackSize.html
0180デフォルトの名無しさん
NGNGフォーム内でのグローバルな静的変数を定義するには
どうすればいいのでしょうか?
formのgeneralの所で
static i as integer
と書いてもプロシージャの外では無効ですというエラーが返ってきます。
0181デフォルトの名無しさん
NGNGStatic変数はプロシージャ内でしか使えません。
つまり、>>180のようなことはできません。
詳しくはMSDNの「Static ステートメント」を参照。
代わりにPrivate変数を使いましょう。
0182デフォルトの名無しさん
NGNGおいおい、グローバルな静的変数って。。
それは「死なない不死身の人」って言ってるのと同じだよ。
自動変数はスコープの外に出ると死ぬ。
スコープの外に出ても死なないのが静的変数。つまり死なない人。
スコープの外がないのがグローバル変数。つまり不死身の人。
0183デフォルトの名無しさん
NGNGやるとしたら
Private Function GetInstance() As Object
Static obj As Object
If obj Is Nothing Then
Set obj = New Collection
End If
Set GetInstance = obj
End If
みたいなことで代替は出来る。意味があるかはわからんが。
VBのStaticはC/C++のstaticとは機能が違うので、Singletonパターンやりたい場合は、
標準モジュールにグローバル変数定義するしかない。
0184デフォルトの名無しさん
NGNGC++だと
クラスのメンバ変数に対して、静的変数があるからね。
VBでもFormはクラスの1つだから
実現できるのではと思った訳です。
0185デフォルトの名無しさん
NGNGあなたが言っているのはインスタンス生成しなくても存在する変数のことだよね。
VBでは「静的変数」って言えばStaticで宣言される変数のこと。
>>180の言ってるのはこっちの方だと思うけど。
0186デフォルトの名無しさん
NGNGそれもやってみました。コンパイル時の警告は出なく
なったのですが、>173のエラーが出る状況は変わりませんでした。
0187デフォルトの名無しさん
NGNGあれ?ウチではそれで動いたぞ。
0188デフォルトの名無しさん
NGNGホントですか?うーん、もう一度やってみます。
0189デフォルトの名無しさん
NGNGありがとうございます。一歩前進しました。
コールバック関数に整数を渡すことはできたのですが、文字列を
渡すことができません。今書いているコードは
[VC側]
void _stdcall TestFunc(void (__stdcall *func)(const char *szFileName))
{
(*func)("tmp.txt");
}
[VB側(フォーム)]
Private Declare Sub TestFunc Lib "Hello" (ByVal lEvtProcess As Long)
Private Sub Command1_Click()
TestFunc (GetAddressOf(AddressOf EvtProcess))
MsgBox "hello"
End Sub
[VB側(標準モジュール)]
Public Function GetAddressOf(lAddressOf As Long) As Long
GetAddressOf = lAddressOf
End Function
Public Sub EvtProcess(ByVal szFileName As String)
MsgBox szFileName
End Sub
これで実行すると、メモリを読めませんでした、という旨のエラーが
発生し、VB自体が終了してしまいました。一応ヘルプ等見ながら自分
なりに正しいと思われるコードになっていると思うのですが、どこか
おかしいところがあればご教授ください。
0190デフォルトの名無しさん
NGNG0191デフォルトの名無しさん
NGNGLongで受け取ると文字列の先頭のアドレスが渡ってくると
思うのですが、「Stringに変換」というのは具体的には
どういうコードを書けばよいのでしょうか。
何から何まで質問してしまって申し訳ないのですが、もう少し
お願いします。
0192デフォルトの名無しさん
NGNGすることによって、別のフォームモジュールや別のexeファイルを非表示にしてから、別のフォームモジュール
や 別のexeファイルを終了させることが出来るようにするためにはどうしたらよろしい
でしょうか。ご教授を誰かお願いします。
0193デフォルトの名無しさん
NGNG分かりにくいよ。AAA.exeとかBBB.exeとかで表現した方が
伝わると思う。
0194デフォルトの名無しさん
NGNGこうだとどう?
Public Sub EvtProcess(ByRef szFileName() As Byte)
Dim strFileName = StrConv(szFileName, vbUnicode)
MsgBox strFileName
End Sub
0195デフォルトの名無しさん
NGNGほら、文章意味不明だから誰もレス不能じゃん。
0196デフォルトの名無しさん
NGNGすごく不便なんだけど。。
SQLを実行して結果を返すだけの標準モジュールを作って
SQL実行する関数を作って、戻り値としてレコードセットを返せれば、
と思ったんですが
0197デフォルトの名無しさん
NGNG0198デフォルトの名無しさん
NGNGどんなコード書いてんだ?
0199196
NGNGpublic function a() as Recordset
…
a = DoCmd.RunSQL(SQL)
end function
こういうことです。
0200デフォルトの名無しさん
NGNGSet付け忘れて実行時エラー出てるとかそんなオチ?
0201Orator
NGNGAccess VBAですね。
RunSQLメソッドは、Recordsetを返しません。
ADODB.Recordsetなら、
・CurrentProject.Connection.Execute
・Recordset.Open
・Command.Execute
あたりで。
DAO.Reocrdsetなら、
・CodeDB.OpenRecordset
・CurrentDB.OpenRecordset
・(DAO.QueryDef).OpenRecordset
などで取得できるので、そっちを使いましょう。
0202デフォルトの名無しさん
NGNGDAO なら OpenRecordset とか使わんと。
0203デフォルトの名無しさん
NGNG利用するってできますか?
できるとしたら、どんなコードを書けばよいのでしょうか。
0204デフォルトの名無しさん
NGNGクラス自体をそのままVBでVCと同じように利用することは不可能です。
(継承とかないから)
VCで作成して機能的に完成しているものであって、それを使用するだけであれば、
COMとかActiveXコントロール化することで可能ではあると思います。
ただ、上記の実装があなたが多分求めてるちょこっと利用するには複雑すぎると思います。
(ちょっと気合入れた学習をしないと、きちんとしたものがつくれないです。)
0205デフォルトの名無しさん
NGNG関数を使いたいって話ではないよね。
オブジェクトつくりたいって話だよね。
>>204
ActiveXで普通にいいんじゃない?そんな複雑ではないでしょう。
0206デフォルトの名無しさん
NGNGCommonDialog Controlを使って入力情報をエクセルに保存した後、
自動的にそのエクセルファイルを開いて入力情報を表示させるには
どうしたら良いですか?
0207デフォルトの名無しさん
NGNGエクセル立ち上がっちゃっていいの?
それとも、エクセルたちあげずに、フォームかなにかで、内容だけ確認できればいいの?
0208デフォルトの名無しさん
NGNG今から6.0で勉強し始めようと思うんですが。
0209デフォルトの名無しさん
NGNGNetはごちゃごちゃ感がすきになれないと…食わず嫌いをいいつづけて、触ってない。
0210デフォルトの名無しさん
NGNGつうか、仕様が判りにくい。
VBの画面入力をExcelファイルに保存して、それをExcelで表示(帳票?)でいいのかな?
普通にExcelオブジェクトを起こして操作すればOK。
起こし方はネットに幾らでも転がってる。
Excelでのセルの操作は、やりたいことをマクロ記録させて、そのソースを自分で解析して書けばいける。
Excelを使用せずにExcelファイルの作成は、市販コンポーネントを使えば可能。
あとSYLK形式とかXMLっていう手もある。
ただ、一般的に表示するにはExcelは必要。(細かくはオープンオフィスとかあるけど・・・)
0211デフォルトの名無しさん
NGNG勉強なら.netにしとけば。
わざわざVB6を覚える必要はなし、使う必要が出たらやればいいだけ。
言語勉強ならば、あたらしめのもの、普遍的なものがいい。
0212デフォルトの名無しさん
NGNG本人いないのに話てもいみないっちゃ意味ないんだが。
データの種類によっちゃ
リストボックスにもっかいもどして確認なんて用途でもいいかもしれんないから、
一般的に表示する…が、質問した本人のやりたいことによってちゃうかもしんない。
つか、もちっとわかりやすく質問してほしいものだ。
0213206
NGNGVBの画面入力をExcelファイルに保存して、それをExcelで表示したいです。
0214206
NGNG設定してDialogを閉じた後にそのセーブしたエクセルファイルを自動的に表示したのです。
よろしくお願いします。
0215206
NGNGよろしくお願いします。
0216デフォルトの名無しさん
NGNGだから、210に書いたことはスルーですか?
何かそれに関して試したなら話のしようがあるけれど。
それともソースそのものが欲しいっていう類なら、質問じゃなく、ソースくれって書けば?
0218デフォルトの名無しさん
NGNGExcelオブジェクトってのは理解してる?それを使えばっていうのが理解できないレベルですか?
それによって回答が全然違うんだけど。
0219デフォルトの名無しさん
NGNGそこにもろExcelの起こし方が書いてあるから。
0220206
NGNGMSDNでCreateObjectを検索ですね。了解しました。
0221デフォルトの名無しさん
NGNGうおぉぉぉぉぉぃ。
調べ方もわからないやつは、
>>214みたいなことやろうとしないでくれ、マジで。
というか>>214の前にいくらでも調べなきゃいけないことあったと思うが、
その時々ずーーーーーーと、人に聞いてきたわけだね。
だめだこりゃ。
0222デフォルトの名無しさん
NGNGアプリ−ブック−シート−セル、と階層的になるんだけど、親が死んでも子は死なないから注意を。
Set oBook = oApp.WorkBooks(0) ・・・適当だけど
したとき、oAppをNothingしてもoBookは心中せずに残り、多分お約束のミスとしてExcelプロセスが残るということをやるから。
生成・破棄が対にできるように、関数化などきちんとしていけばOKですけど。
まあ、調べ方も判らないというレベルじゃ、多分失敗しますよ。
0223デフォルトの名無しさん
NGNG0224盗る猫 ◆SCRKIYBNrs
NGNG0225デフォルトの名無しさん
NGNG最近、そうではないプログラムのメインとなるような? フレームがあるそうですが
どんなんですか?
また、良いサイトがあったら教えてください。お願いします。
0226デフォルトの名無しさん
NGNG0227デフォルトの名無しさん
NGNGスケールモードをすべてピクセルでやりたいのだが、
コンテナになれるがスケールモードプロパティをもたないオブジェクト(つまりフレーム)の中では、
twipから変更ができません。
これは仕様でしょうがないことなんでしょうか?
0228デフォルトの名無しさん
NGNG0229デフォルトの名無しさん
NGNGでは、自前で座標変換functionかましていたのは正解なのか。
ありがとう。
0230デフォルトの名無しさん
NGNGシステムのdpi変えても頑なにデザイン変えない意地の悪いプログラムが書きたいとか(w
0231デフォルトの名無しさん
NGNGって書いてあるんだからファイルの書き出しじゃなくて
Excel の実行の仕方が分からないんだろうと
0232デフォルトの名無しさん
NGNGそれすごいなwでも無駄だなw
単純にマウス直下のコントロールを取得する関数書きたかっただけですよ。
イベントドリブンから逆行する操作だけどね。
0233デフォルトの名無しさん
NGNGだからCreateObjectの項を紹介したじゃん。
あそこにそのままが書いてあるんですよ。
MSDNの検索でExcelを検索すれば、VBリファレンス内では10個程度ひっかかる。
その中にあるんだから、最初の彼の調べ不足。
0234デフォルトの名無しさん
NGNG質問させてください。
Susieのプラグインで
HLOCAL *pHBm : ビットマップデータ本体のメモリハンドルが返される
とあるんですが、メモリの内容を見るにはどうすればいいですか?
0235●
NGNG0236デフォルトの名無しさん
NGNGチェックボックスにプログラムからチェックを入れるにはどうしたらいいでしょうか?
0237デフォルトの名無しさん
NGNGValue
0238デフォルトの名無しさん
NGNG685 デフォルトの名無しさん sage New! 04/11/16 21:02:05
>>678
戻り値がメモリへのポインタなんだから、それを取得して好きに読めばよい。
取得したポインタの中身を読む方法が分からないんだとしたら、スレ違い。
0239デフォルトの名無しさん
NGNG0240デフォルトの名無しさん
NGNGCopyMemory APIでVBの変数へコピーする。
0241デフォルトの名無しさん
NGNGそう言われてわかる人なら最初から聞いてないと思う。
>>238みたいな人はなんか勘違いしてると思うんだよな。
掲示板で人に聞けることなんて、所詮小手先のことだろう。
根本からわかってない奴に手取り足取り一から教えてくれるお人よしはいない。
あるいはプログラミングなめてるのか。
0242デフォルトの名無しさん
NGNGVBから入って、VBのみなら、ポインタってなんだかわからんのではないかい?
C言語の入門書(入門HP)見てきてごらん。たぶんわかるとおもうよ。
それで分からなかったらあきらめたほうがいい。
たぶん、おまいさんがやろうとしてることは、今のおまいさんの実力にみあってないんだよ。
0243デフォルトの名無しさん
NGNGVBでDBの中にテーブルがあるかを確認するにはどんな方法がありますか?
0244デフォルトの名無しさん
NGNG0245デフォルトの名無しさん
NGNG早速ありがとう、ございます
DBはAccessです 接続に使う方式?って感じの初心者ですみません。
0246デフォルトの名無しさん
NGNGDATAコンポネートつかって、DataBaseNameプロパティ指定してつかってるのん?
0247デフォルトの名無しさん
NGNGまたまた、無知なモノにありがとうございます
テキストでフィールドの値をSQL文でとるように書いていますが?って
感じですが?
0248デフォルトの名無しさん
NGNGSQL文渡して書いてるなら、SQL文で一覧の取得を書いたらいいのでは?
SQLの書き方については、んー、範囲外誰かにパス。
0249247
NGNGとりあえず、レスありがとうございました!
がんばってみます
0250デフォルトの名無しさん
NGNG0251デフォルトの名無しさん
NGNGチェックボックス付けられない?あとグリッド線とか1行選択
とかもできないのかな。
0252デフォルトの名無しさん
NGNGプロパティでは変えられないみたいだけど、なんか
方法ないのかな。
0253デフォルトの名無しさん
NGNGLVS_EX_GRIDLINESとかLVS_EX_FULLROWSELECTとかを
SendMessageで投げたらできたよ。
0254デフォルトの名無しさん
NGNGありがとうございます。ちなみにチェックボックスもいけますか?
0255デフォルトの名無しさん
NGNGあらかじめ作ってあるエクセルのあるシートの
印刷プレビュー画面を出す事ができるそうなのですが
具体的にどうやるのでしょうか?
0257デフォルトの名無しさん
NGNG0258デフォルトの名無しさん
NGNG…まあ、そのくらいわかれって気もするけど。
0259デフォルトの名無しさん
NGNG「vb excel プレビュー」
これだけあれば十分
0260デフォルトの名無しさん
NGNGまあそれも勉強だと思うけど。
言語的な知識は、特定言語に依存しない一般論を知っていれば十分だと思う。
(基本はCなりをやっぱり軽く覚えて、それプラス今風の言語)
個別技術に関しては、今の開発に必要なものなんて全部覚えられっこないよな。
だから、まずグーグル様の活用方法と、あてになるフォーラムなりリンク集を確保することが、技術者に求められる姿勢。
なもんで、質問する前にまず>>1は最低でも読むと。
グーグル様にお尋ねするキーワードは試行錯誤で覚えるしかないよな。
Excel VB なんて入れたら論外なのは馬鹿でもわかるだろうから、何を足すかは自分で試せと。
0261デフォルトの名無しさん
NGNGExcel VBは誰でも一回は通る道だな(笑
VBAまみれになりまする。
0262デフォルトの名無しさん
NGNG接続するハードが、送信のみしか対応しておらず、受信要求を受け取ってくれません。
そこで、データが送信されるまで、アイドリングしたいのですが、時間でWaitをしてると、あんまり上手く
動きません。なので、1.通信ポート開ける。2.通信データが送信されるまで待つ。3.ポート閉じる。
の2番をどうコーディングすれば良いのか、教えて下さい。MSCommのプロパティにも良さそうなのが、見当たらないので・・・
0263デフォルトの名無しさん
NGNG0264デフォルトの名無しさん
NGNGOnCommイベントでさばく。
1バイト受信して溜めていけばいい。
0265デフォルトの名無しさん
NGNG>>264 1バイトずつ受信して、それを50回繰り返すと言う事でつか?(毎回50バイト長なので)
0266デフォルトの名無しさん
NGNGそれなら50バイトいっぺんによめばいいだけ。
データ受信したイベント内で、バッファに溜まっているバイト数を数えればいい。
ただ、通信異常などでのズレを考慮するなら、終端文字(があれば)まで1バイト読みのほうが安全だとは思うが。
(ずれたときに50バイト溜まらない可能性と、ずれっぱなしの可能性が出てくる。)
0267デフォルトの名無しさん
NGNGPublic Type POINTAPI
X As Long
Y As Long
End Type
Public Declare Function Polygon Lib "gdi32" (ByVal hDC As Long, lpPoints As POINTAPI, ByVal nCount As Long) As Long
Public numPoints As Long
Public XY(10) As POINTAPI
上記のようにして、座標を指定して、フォーム上に表示しようとしても異なった位置に
配置されてしまいます。
座標の単位?が違うと思うのですが、どうにもうまくいかず困っています。
アドバイスお願いします。
0268デフォルトの名無しさん
NGNGhDCは正しく設定してる?
0269デフォルトの名無しさん
NGNGtwipとかピクセルをMSDNなどで調べて学習。
VBのフォームのモードが何になってるかとか、APIが何を求めてるかとか、変換はきちんと知っておいたほうがいい。
0271デフォルトの名無しさん
NGNGまあ、単純に時間でくるくるまわして、毎回50バイトたまってるかどうか調べてもいいきがするけどねん。
たまってないなら、まだ受信完了してないってことだと思うし。
0272デフォルトの名無しさん
NGNGただ、どっちにしろ「タイムアウト」の処理加えとかないと、
よきせぬトラブルがあって、50バイト以下のデータが送られたりした時、
あるいは、コネクションは持続したまま、データ転送のみとぎれた時に、フリーズしまっせ。
いつまでも待ち続けるプログラムちゃん。けなげです。
0273デフォルトの名無しさん
NGNGttp://www.geocities.jp/activex_treeview/
↑OS2000 Vbはインストールされていない端末で
ActiveXを使ったツリービューが見れないだよね。
xp や NTでは見ることが出来たんだが・・・?
どの端末もVbが入っていれば見れます。
Vbなしで見る方法ありますか?
Vbランタイムでは×
ASPスレにも書き込むけど、だれか教えて。何が必要なんだ〜??
0274デフォルトの名無しさん
NGNGテキストボックスにある変数を常に最新に表示するということはできないのでしょうか?
たとえばx1+x2+x3の結果をtextbox4に表示したいときは
どうすればいいのでしょうか
x1、x2、x3の値が変わるアクション全てにtextbox4=x1+x2+x3の一文を加えなければならないのでしょうか?
0275デフォルトの名無しさん
NGNGイベントドリブンなプログラムの作法にしたがうなら、そう。
全部に書くのが筋かと。
あるいは、Timerか、Do-Loopでまわすかなんかで、時々再計算してあげるって手法で、
見た目十分に常にという最新という状態にできるかと。
どっちをとるかは場合による。
私は、後記の方法が好き。あんまよくないとおもうけどねぇぃ。
0276デフォルトの名無しさん
NGNGコンストラクタで表示先のTextBoxの参照を持っておく。
あとは計算とかあるたびにそれを表示するだけで、ある程度は汎用化できると思うが。
値をクラスのプロパティにしてしまえば、値の代入を捕らえられるから一発だと思うけど。
(クラスにしなくても、一連の関数とグローバル変数でもできるけど、おしゃれじゃない)
0277デフォルトの名無しさん
NGNGなら、クラスでもいいかも。
0278de
NGNG無限に入力できてしまい見えなくなってしまうのですが・・・。
0279デフォルトの名無しさん
NGNG0280デフォルトの名無しさん
NGNGchangeイベントでした、onchangeってなんだよ。
0281デフォルトの名無しさん
NGNGだとしたら初期化専用メンバー関数つくって、そこでTextBoxの参照を渡す。
あとはプロパティーのセットで各変数格納時に計算関数(内部メンバー関数)を呼んで、そこで計算して、
結果をTextBox(の参照)に渡してあげれば。
>>278
単純には、TextBoxのMaxLengthプロパティあたり。
細かくやるなら、ChangeイベントでStaticなりグローバルで入力を確保してLenチェック。
0282デフォルトの名無しさん
NGNG小数の計算が出来ないのですがどうしてでしょう?
0283デフォルトの名無しさん
NGNGその前に言ってることのおかしさに気づけ。
さておき、どうしてもそのようなことがしたいなら、桁キャストして整数(?)にしてから計算すればいいじゃんぬ。
0284de
NGNGすみません、TextBoxが見つからないのですが・・・。
0285デフォルトの名無しさん
NGNGオォォォィィィィッッッ
0286デフォルトの名無しさん
NGNG私のソフトではToolbarに登録できるようにしたい機能が最大70種類ほどありまして、
それぞれの機能に相当するアイコンをデザインする余裕がありません。
そこでアイコンなしでキャプション文字だけをToolbarに表示したいのですが、
アイコンのImageListの項目を<なし>に設定すると、
アイコンの部分(16x16?)が空白となって表示されてしまいます。
この空白を消すためにToolbar自体の高さを設定しても反映されません。
文字だけのToolbarというのはどうやったらできるのでしょうか?
最悪、テキストを画像化したアイコンを作成することも考えていますが、
いい方法があれば教えていただけないでしょうか?
0287デフォルトの名無しさん
NGNGそういうのは質問の前に手動かしたほうが早いよ。
ぶっちゃけ無理だと思うし。
0288デフォルトの名無しさん
NGNGツールバーの中にコマンドボタンやオプションボタンを配置するって手もあると思うけどどうかな。
0289286
NGNG>>287
無理なんですか。割と需要はあると思うんですけど。。
アイコン作るのはセンスと時間が要りますから。
>>288
コマンドボタンをツールバーに入れることができるんですか!
それができれば十分です。その方向でトライしてみます。
0290デフォルトの名無しさん
NGNGVB6のコードで『ディレクトリ+ファイル』のパス名を設定する際、
完成したアプリが98,Meで使用される場合を考慮し
関数で得たディレクトリ名の最後尾に"\"が存在するかどうか、その都度チェックしながら
先頭に"\"の無いファイル名を設定しなければならないのですか?
最もスマートな手段を教えて頂きたいです。
よろしくお願いします。
0291290
NGNG>関数で得たディレクトリ名の最後尾に"\"が存在するかどうか
なければ最後尾に"\"をつけて
>先頭に"\"の無いファイル名を設定しなければならないのですか?
0292デフォルトの名無しさん
NGNG9Xだと最後尾の\があるとなんか問題あるっけ?
それはともかくPathRemoveBackslash APIなんかどうだ。
0293290
NGNG9x系は"\"付き、NT系は"\"付かないらしいです。
なので最後尾の"\"がダブっても問題がないのか悩んでおりまして・・・。
0294デフォルトの名無しさん
NGNGそれってApp.Pathなんかで取得したパスが、たまたまドライブのルートだと
C:\
みたいに最後に"\"が付くって話と混同してない?
OSの種類と関係ないと思うが。。
0295デフォルトの名無しさん
NGNG余りも考慮して。
0297デフォルトの名無しさん
NGNGすいません。自分で試したらうまくいきました。
チェック状態を取得するにはまた別のメッセージを
投げないとダメなんですね。
0298デフォルトの名無しさん
NGNGこれに似ているのですが
VBからEXCVELのプレビュー画面出そうとすると
「コンポーネントが使用できません」ってエラーがでます。
何がわるいのでしょうか?
WINDOWSXP-SP2
OFFICE2003pro
VB6.0SP6
0299デフォルトの名無しさん
NGNG0300デフォルトの名無しさん
NGNGプレビューの前にエクセルのVisibleをTrueにすれ
0301デフォルトの名無しさん
NGNGおまえはサポセンに電話する素人か?
それとも細木数子に相談しに行く阿呆か?
それで何がわかるんだよ。
プログラマならば、せめてもう少し状況をきちんと説明しろ。
ExcelをCreateなりGetなりでObjectとして生成できているのか?
その上でPreviewを行うコマンドだけが駄目なのか?
0302デフォルトの名無しさん
NGNG0303デフォルトの名無しさん
NGNG0304デフォルトの名無しさん
NGNGダメプログラマーにならないように、もっとイッテヤレ>>301
誰しも一回は、けちょんけちょんにされて恐れおののいて学習していきますの。
現場を目撃してあういう風になっちゃいけないなとわかる人もいますが。
あたしゃは前者。ちょー初心者の時に
「初心者なんですが〜」から始まって「うごかないんです」「どうでしょう?」という
最悪な質問しましたよ、ええはい。
0305デフォルトの名無しさん
NGNGまあ、PC○Nに逝って鍛えてもらうのが一番かと。
そういう人に限って、タイトル入力有りの場合の掲示板で。
Title:助けてください。
VB初めて数日の初心者です。
・・・・
よろしくお願いします。
って書くんだよね。
でP○DNだと、皆様から教育的指導が飛ぶと。
0306デフォルトの名無しさん
NGNGあっこはマジで洗礼ですな。
手厚い教育がほどこされて、半年もすれば、教える側になれますな。
0307デフォルトの名無しさん
NGNGこればっかりは昔から構図がかわらんよな。
言われた方は「さっさと答えだけ教えろ」って思うんだろうけど
言う側になると「ふざけてんのか?」って思うもん。
状況/問題点/要望を「他人に」わかるように説明するっていうことが
どれだけ大事なのかってことに早く気が付いてほしいな。
なんかえらそうでスマソ。
0308デフォルトの名無しさん
NGNGえらそうかどうかはさておき…
でも、(※1)そこは質問する時だけじゃなくて、プログラマーとして最低限必要なことだよな。
一般的にも重要だとおもうけど。
一人でつくって、コメントをつけないですむプログラムならいざしらず、
チームでつくりはじめたら、そのあたり正確に人に伝えられない人はやってけないもんな。
---------------------------
状況/問題点/要望を「他人に」わかるように説明するっていうことが ←※1「ソコ」
以下余談
しかし、めぐまれてますな、今からプログラム始める人は。(よいことだと思います)
インターネットない時代は、コミュニティーに紹介で所属するか、
近くに詳しい人がいるか、あとは、本にのってる内容をスクラップしたりetcetc
今日ぶちあたった壁に今日質問できることはまれ、ましてや今日回答をいただけるなんて奇跡に近かったもんな。
0309307
NGNGそうなんだよな。
プログラミングだとかプログラマーって狭い範囲のことじゃなくて
「他人」というものを意識できるようになって
初めて自分の行動の幼稚さや浅はかさってものに気づいて恥ずかしくなったよ。
なんかホント今日は朝から飲み屋の終わりみたいな雰囲気になってるな・・
0310デフォルトの名無しさん
NGNG普通に会社とかで質問するときに、前もってまとめるべきことはまとめて欲しいよね。
何を試行して、どのような結果が出ている。それは最低でも必要。
あと、何がわからないか、自分で判らない状態で書き込むのは如何なものかと。w
それこそ細木先生に相談して改名なりしてもらってきたほうが。
0311デフォルトの名無しさん
NGNG0312デフォルトの名無しさん
NGNG範囲でかすぎ。
とりあえず、googleで同じことやってる人がいないかどうか調べてこい。
これをやってるんですが、この部分でつまってます。
これが分かれば先にすすめるのですが、どなたか情報ないでしょうか?
この形でやりなおせ。
0313デフォルトの名無しさん
NGNG0314デフォルトの名無しさん
NGNG>>310ってかわいい奴だなw
いやこれ肯定的に言ってるのよ。
こういうのをベタにやってなにか小さな勝利感みたいなのに浸る奴は
むしろ精神病んでると思う。
0315デフォルトの名無しさん
NGNG311だよな、310が精神的に病んでると言われてしまうと少し傷ついてしまう・・・鬱だ。
0316デフォルトの名無しさん
NGNG0317困ったくん
NGNGひょっとして、あなたは北●大の学生?
もれもそうなんだけど・・・
0318デフォルトの名無しさん
NGNGVBに三項演算子
またはその代わりになるものってないでしょうか?
0319デフォルトの名無しさん
NGNGIIF
0320デフォルトの名無しさん
NGNG0322デフォルトの名無しさん
NGNGVBに細木数子
またはその代わりになるものってないでしょうか?
0323デフォルトの名無しさん
NGNG何だそれは
それが面白いつもりか?氏ねよ
0324デフォルトの名無しさん
NGNG0325デフォルトの名無しさん
NGNG0326デフォルトの名無しさん
NGNGHELL:
GoTo HELL
こうか?w
0327デフォルトの名無しさん
NGNG答えられない質問に反応するお前がおかしい。
0328デフォルトの名無しさん
NGNGいや、お前らのレベルじゃそんな使い方はできないから
安心しろ。
0329デフォルトの名無しさん
NGNGこのスレ一番のアホはこいつだな。存在不要人間。
0330デフォルトの名無しさん
NGNG0331デフォルトの名無しさん
NGNGでもお前も苦笑の意味を調べた方がいいぞ。
0333デフォルトの名無しさん
NGNGどう見ても。それも訂正しようがないほど間違っている。
ただ、こんな書き込みをしてしまっているお前の立場からは
一生かかっても理解不能かもしれない。しばらく
国語辞典とにらめっこしてごらん。
0334デフォルトの名無しさん
NGNG言語感覚腐ってるのは君のほうだと思うがね。
ま、こういうのはわからない奴は何をいってもわからないだろうけど。
0335デフォルトの名無しさん
NGNG>>331の質問に答えられないんじゃんw
0336デフォルトの名無しさん
NGNG0337デフォルトの名無しさん
NGNGな
0338デフォルトの名無しさん
NGNG多分デスマなんだが無能で出番がなくて、徹夜でいるだけの奴なんだよ。
0339デフォルトの名無しさん
NGNG可能でしょうか?textboxの上にLabelを重ねて、textboxのchangeプロシージャ
で随時labelのcaptionに上書きしようと考えたのですが、別でもっとシンプル
なやり方があるかと思い教えてください
0340デフォルトの名無しさん
NGNGそれって、入力できないコントロールにしてると思うが、
フォーカスを移動する意味があるのか?
0341340
NGNG0342デフォルトの名無しさん
NGNG違います、やりたい事の説明ができていませんでした。
やりたい事はtextboxにフォーカスが来てる状態で点滅をなくしたいというこ
とです。点滅が無い状態のtextboxに文字を入力したいと思っています。
0343デフォルトの名無しさん
NGNG無理にテキストボックスのキャレットを消そうなんて考えるより(やってやれないことはないと思うが)
表示にはラベルを使ってフォームのKeyPressイベントあたりでCaptionプロパティいじるほうが
簡単じゃないだろうか。
0344デフォルトの名無しさん
NGNG糞UIだな( ´,_ゝ`)プッ
0345デフォルトの名無しさん
NGNG0346デフォルトの名無しさん
NGNG(必要なら)例えば背景色を変えるとかして入力がアクティブになっているように
ユーザーに見せかけることは可能なのだから、それで必要十分だと思うが。
0347デフォルトの名無しさん
NGNGそれが問題だ。
0348デフォルトの名無しさん
NGNG頭が固いなあ。
敢えてGUIというかOSのコントロールっぽい雰囲気を殺したい場合だって
想像に難くないと思うけど。
ビジュアルにこだわりたいアプリってのがわからないかな。
別にビジュアルに特段こだわりなくても、Win標準の電卓みたいなUIだって
考えられる。
0349デフォルトの名無しさん
NGNGそうかなぁ。
VBなんだから凝ったUIってのは二の次に考えてもいいんじゃない?
確かにVBでやるって所に意義を求めるもアリだと思うけど
それなら中途半端はクソUIになりがちだから
「用意されているコントロールの使用」ってのは捨てるべきじゃない?
そういう意味でカーソル非表示の目的を聞いてもいいような気がするけど、
おいらも頭固いのかなぁ。(ちなみに347じゃないよ)
0350デフォルトの名無しさん
NGNGアタマワルイネー
0351デフォルトの名無しさん
NGNG0352デフォルトの名無しさん
NGNGおお、自分で頭の悪さに気付いてるのか。えらいぞ、お前。
0353デフォルトの名無しさん
NGNG別にUIとしておかしいなんて一言も言ってないぞ。
その状況次第ではもっといい方法が出るかもしれないし、って事。
たとえばゲームを作りたいってシーンでそういうのが出たなら、ふつう
TextBoxなんか使わず別の方法取るでそ。
0354デフォルトの名無しさん
NGNGTextBoxは所詮TextBoxだから、そこから逸脱する仕様を実現するなら、
自分でもどきを作るしかない。
で、VBは正直そういうことには向かない、コントロールを派生できないから。
VCとか.netとか、デルファイとかなら今のTextBoxをベースに派生できる。
あと、確か点滅をなくすことはAPIで可能なはずです。
ただ、仕事場じゃないんで調べようがない。
0355デフォルトの名無しさん
NGNGInputManみたいに。
0356デフォルトの名無しさん
NGNGテキストボックスに例えば「5」と入力した後ボタンを押すと
入力した5個分テキストボックスを作るようにしたいのですが
その場合初めから非表示で用意してあるのを非表示を解除して表示するしかないのでしょうか?
出来れば入力した個数分をその場で作りたいんです。
それが出来るのかどうかも分かりません。
0357デフォルトの名無しさん
NGNG1個をコントロール配列にしておいて、Load。
0358デフォルトの名無しさん
NGNGありがとうございます
今からやってみます
0359デフォルトの名無しさん
NGNG0360デフォルトの名無しさん
NGNGん?これはどれへの回答?
0361デフォルトの名無しさん
NGNGTextBoxのカーソルの話でしょ?
0362デフォルトの名無しさん
NGNGどう処理すれば良いのか分かりませぬ。助けて、ママン。
Public msg As String
Private Sub Form_Load()
msg = "やらないか?"
End Sub
Private Sub Command1_Click()
MsgBox Text1.Text
End Sub
こんなんでは勿論ダメでした。力技で
If Text1.Text = "msg" Then
MsgBox msg
elseif Text1.Te....(略)
延々とこんな処理書くのも何か変だと思うです。
何かしら素敵な解決策は無いでしょうか。
0363デフォルトの名無しさん
NGNGハッシュにすれば?
0364デフォルトの名無しさん
NGNG0365デフォルトの名無しさん
NGNGやりたい事を具体的に説明しましょう
0366デフォルトの名無しさん
NGNGただ、この画像全体は大きいので、Formには入りきらないのです。
一方、縮小表示では、●が小さくなりすぎます。
こういった処理の場合、どのようにするものなのでしょうか?
0367デフォルトの名無しさん
NGNGBMPファイルのフォーマットはご存知か?
自力でOPENして画像情報を処理するもよし、非表示にしたPictureBoxを使うもよし、
方法は色々だが、Formに入らないという理由で検出ができないと言うのは理解できない
●とはどんな物で大きさや検出方法はどうやりたいのかyふじこlp
俺は寝るからあとは誰か頼む。
0368デフォルトの名無しさん
NGNG逃げやがった
0369デフォルトの名無しさん
NGNGいや、十分だろ。
つか、むしろ逃げたのは、>>366のような。
0370デフォルトの名無しさん
NGNGえ?
0371デフォルトの名無しさん
NGNG名前でアクセスする事の是非はともかくとして、お手軽にやりたいなら
Collectionを使うのがよいかと。
0372デフォルトの名無しさん
NGNG0373デフォルトの名無しさん
NGNGdlgSaveFile.ShowOpenで既存のエクセルファイルを開きたいのですが、
ダイアログでファイルを指定して開くボタンを押すとダイアログが閉じて
その後何も起きません。何が原因でしょう?
0374デフォルトの名無しさん
NGNGこれはネタか?
0375デフォルトの名無しさん
NGNGdlgSaveFileってのは何の変数かぐらい書けよ。
0376デフォルトの名無しさん
NGNGそのダイアログは選択したファイルのファイル名を取得できるだけで
開く機能はないの。
仮に開く機能が付いちゃってたとしたら、開く以外に使えなく
なっちゃうだろうが。ちょっとは頭動かせよ。
0377デフォルトの名無しさん
NGNGCommonDialogControlの変数です。
0378デフォルトの名無しさん
NGNG名を取得したファイルを開く方法を教えていただけたら幸いです。
0379デフォルトの名無しさん
NGNGShell ShellExecute ShellExecuteEx
0380デフォルトの名無しさん
NGNG納品用なのでオクとか無しで…
0381デフォルトの名無しさん
NGNG普通にMSのサイトいけばいんじゃないかと。
それか、たとえば、自分の会社にコンピューター納品してる業者はいないのかい?
そっちに相談するのも手ですよ。
0382デフォルトの名無しさん
NGNG納品用の物を2ちゃんで相談か。
お客さんもかわいそうになぁ
0383デフォルトの名無しさん
NGNG0384デフォルトの名無しさん
NGNG0385デフォルトの名無しさん
NGNG(現状では特にオフィス97とかでよくある)
メディアの入手は正直難しいかもね。大手メーカーの営業とかに知り合いいればなんとかなりそうだけど。
0386デフォルトの名無しさん
NGNGこれに入ってないの?
0387デフォルトの名無しさん
NGNG自分とこでも、ソフト買ってんだろ。客の立場で同じことやってもらってるだけだよ。
0388380
NGNGちっちゃな会社なんでMSDN入ってないのよね
まずは出入りの営業さんに聞いてみます
0389デフォルトの名無しさん
NGNGなんて会社?
0390デフォルトの名無しさん
NGNG0391デフォルトの名無しさん
NGNGそれは分かってやれよ。てか、お前は勝手にコピーして
インストールしてる口か?
0392デフォルトの名無しさん
NGNG0393デフォルトの名無しさん
NGNGそういうわけじゃないんだけど、普段からソフトを手軽に
コピーしちゃってるから、そういうの疎くなっちゃってんじゃないの?
って感じで。
0394デフォルトの名無しさん
NGNG意味がわからない。説明してくれないか?
0395デフォルトの名無しさん
NGNGMS系の開発が主体なら必須に近いしコストパフォーマンスいいけど、
それ以外の業務とかと半々なら、別に入らないでも個別にコンパイラ買えばいいし。
そもそも入って得られる情報っていっても・・・。
0396デフォルトの名無しさん
NGNGごめん。俺の書き込みに関しては俺も意味が分からなくなってきた。
言いたいことはあったのだが、書いていることは言いたいこととは
全然違ってしまった。
0397デフォルトの名無しさん
NGNG0398デフォルトの名無しさん
NGNGうけるなw まーそういうこともあるか。
0399デフォルトの名無しさん
NGNG0400デフォルトの名無しさん
NGNG0401デフォルトの名無しさん
NGNG0402デフォルトの名無しさん
NGNG0403デフォルトの名無しさん
NGNGウソついてんじゃねーよ、このタゴ作が!
0404402
NGNG0405デフォルトの名無しさん
NGNGnot found
0406デフォルトの名無しさん
NGNGWin XP
で開発しています
コモンダイアログでEXCELファイルを選択させるのですが
このEXCELファイルにあるすべてのシート名を取得したいと考えています
どのようにすればよいでしょうか?
0407デフォルトの名無しさん
NGNGえーと、このスレ内で何度も同じようなネタが上がってるので釣りでしょうか?
まず、ファイル名の取得とか、それを元にExcelでファイルを開けていることを前提とします。
その状態でWorkBookオブジェクトからWorkSheetsコレクションを舐めて、それぞれのWorkSheetのNameをみればいいだけ。
前提部分の技術はこのスレにあるからそれを参照。
0408デフォルトの名無しさん
NGNGどのようにすればよいでしょうか?
0409デフォルトの名無しさん
NGNG最近同じ質問があったはず、400程度のスレは読んでみてくれ。
0410デフォルトの名無しさん
NGNGうそつけ。ねーよ。
0411デフォルトの名無しさん
NGNGそれで理解できないんじゃ、作れないよ。
0412デフォルトの名無しさん
NGNGでプログレスバーの出し方がわかりません。過去ログより
>ツールバーのコントロールの選択→MicroSoft Progress Bar
にて、出すことができると書かれていたのですが、
コントロールの中にMicroSoft Progress Barがありませんでした。
どうすれば良いでしょうか?
マイク音量をプログレスバーに出したいと思っています。
0413デフォルトの名無しさん
NGNG根拠は?
0414デフォルトの名無しさん
NGNG400程度のスレで、>>409->>410間の5分程度しか見ないで無いよといっている人です。
配列で検索すればこのスレに答え書いてありますから、それ見て判らなければプログラマとして論外でしょ。
0416デフォルトの名無しさん
NGNGそれはオプションボタン・チェックボックスを動的に作る話ではない。
>357を見ても同種の話題だと気付かずに質問しているのだから
お前らはレベルを合わせて回答する必要がある。
それができないのであれば回答すべきでない。
プログラマとして論外かどうかはお前らには関係ない。
0417デフォルトの名無しさん
NGNG0418デフォルトの名無しさん
NGNGそれは違うな。
結論:>414はとてつもなくアホ。救いようがない。
0419デフォルトの名無しさん
NGNG0420デフォルトの名無しさん
NGNGで?
>>357みて判らなければ再度質問すればいいだけ。
いつものように、回答だけ書けってまた暴れるんですか?w
0421デフォルトの名無しさん
NGNG|-`).。oO(Microsoft Windows Common Controls 5.0…)
0422412
NGNGただいまマイク入力音量を取得するのに苦戦してます。
>419さん
ありがとうございます。
0423デフォルトの名無しさん
NGNG質問スレだからな。お前らは回答だけ書けばいいの。
0424412
NGNGカキコ気づきませんでした。ご返答ありがとうございます。
0425412
NGNG音量の取り込み方がさっぱりわかりません。
詳しい方がいましたらご教授願います。
0426デフォルトの名無しさん
NGNG0427デフォルトの名無しさん
NGNG字が違います。
0428デフォルトの名無しさん
NGNG適度な短い録音して、最大の値をとればいい
0429デフォルトの名無しさん
NGNGへぼい自演なんかして恥ずかしい奴だな
0430デフォルトの名無しさん
NGNGいや、そもそも音量の数値化の仕方がわからないんじゃまいかと。
俺もわからんが。つか、やったことない。
0431412
NGNGわかりづらくてすみません。
最大音量の値というよりも、音量値の取得の方法がわからず困っています
>>430
コンポーネント等を用いて簡単にできるようなことではなさそうな感じが
してきました。
0432デフォルトの名無しさん
NGNG逆にコンポネートになってないと、めんどくさそうだけどね。
あとは、MMCとか、APIであっさり該当なものがありそうな気がす。
てゆうか、そうなってないとVBからでは難しいではないかと。(=なんらかのインターフェイスが用意されてると思う)
まあ、せっかくなので調べ見よう。見つけたら書き込みますわ。
回答じゃなくてごめんね。
0433412
NGNGどうもお手数かけましてすみません。
私もわかり次第、書き込みします。
0434432
NGNG0435429
NGNGへぼい自演なんかしてしまって恥ずかしいです。
精神科に通院中なので許してください。
0436デフォルトの名無しさん
NGNGMMR?
0437432
NGNGMCIではなくて、API使うみたいですね。
ttp://tk.no-ip.info/
このサイトの方が、VBでレベルメータ作ってます。
ばっちりVBのソースがついてるので、参考にしてみては?
私はまだ詳しく読んでませんが、winmmのAPI宣言して、そちらをのみを利用して作ってますね。
DirectXとか、MCIとかはなくてもできそうですよ。
0438デフォルトの名無しさん
NGNG平然と嘘ついてりゃ社会から弾かれるよな
かわいそうに
0439デフォルトの名無しさん
NGNG自覚があるからまだましじゃん?
0440デフォルトの名無しさん
NGNGほんとに人間終わってる
0441デフォルトの名無しさん
NGNG自分から病院かよってるから〜なんて言う奴は、
自覚ないよ。
自覚ないっいうか、病院勘違いしてるでしょ、確実に。
ほんとうは、「俺様特殊な病気にかかってることにしたい病」なんだけど、
鬱病ですとか言いたくなっちゃう人んですよ。たぶん。
0442デフォルトの名無しさん
NGNG429になりすましたり自作自演したり、廃人ってほんとにいるんだね。
0443デフォルトの名無しさん
NGNGなるほど
0444デフォルトの名無しさん
NGNG廃人の自作自演って初めて見た
どこまでやれるか見てやろう
0445デフォルトの名無しさん
NGNG明らかに普通のひととは違う
0446デフォルトの名無しさん
NGNGもう稚拙な自作自演はやめたのか
0447デフォルトの名無しさん
NGNG騙り屋のチキンっぷりをもっと発揮してみ
0448デフォルトの名無しさん
NGNG0449デフォルトの名無しさん
NGNGどうせ人間終わってんだから多少インチキしたって構わねーだろ
もっと下劣なことやってみな
0450412
NGNGどうもありがとうございます。
まだVBをはじめて3日(C/JAVAの経験はあります)なので、
解読に時間がかかってますが、ありがとうございます。
参考になります。
0451デフォルトの名無しさん
NGNG今槍玉にあげられてるのお前だよ?
0452デフォルトの名無しさん
NGNG0453デフォルトの名無しさん
NGNGなんで?
0454デフォルトの名無しさん
NGNGクリックできないから
0455デフォルトの名無しさん
NGNGすぐにピンとこないところが廃人らしいな
0456デフォルトの名無しさん
NGNG嘘ばれても槍玉とか抜かしてるし、最後疑問形だし。
おもしれーからもっとやれよ
0457デフォルトの名無しさん
NGNGアホ。そりゃお前がIEで見てるからだろ。
ちなみに「>」と「>>」の違いは理解してる?
0458デフォルトの名無しさん
NGNG最後が疑問形の理由も分からないんだ。
0459456
NGNGえ?違いあるんですか?
0460デフォルトの名無しさん
NGNG自演してもうんこ臭いんだよ、廃人
0461456
NGNGすいません。今分かりました。
0462デフォルトの名無しさん
NGNGどれとどれが自演なの?そしてその証拠は?
0463デフォルトの名無しさん
NGNG廃人の理屈はわかんねーな
0464デフォルトの名無しさん
NGNGもっとインチキやれよ、下劣廃人
0465デフォルトの名無しさん
NGNGなんでもh抜きしちゃう人ですか?
0466デフォルトの名無しさん
NGNGもうネタ切れなのね。ご苦労さん。
0467465
NGNG質問に質問で返すのは回答できないからです。
0468デフォルトの名無しさん
NGNGあーそう、誰も君の能力の限界以上のことを要求しないよ。
俺が悪かった。
0469デフォルトの名無しさん
NGNG0470デフォルトの名無しさん
NGNG>釣り(反応したらバカ)
まだ終わんねーよ、もっと廃人らしい卑しいとこ見せつけてみな
0471デフォルトの名無しさん
NGNGえ?俺が相手してあげないとダメなの?
君一人じゃできないの?
ん?ボクちゃんは病気だから一人じゃ何にもできないのかな?
0472デフォルトの名無しさん
NGNG>釣り(反応したらバカ)
自作自演と騙り屋のおまいをもっと晒してやるよ
0473470
NGNGうっせーな。友だちいねんだよ。寂しいんだよ。
相手しろや。
0474デフォルトの名無しさん
NGNGどれとどれが自作自演なのかな?俺は答えを知ってるけど。
0475デフォルトの名無しさん
NGNGおまいの生き恥もっと晒してやるよ、廃人さんよ
またレス番騙ったら?
0476472
NGNG>420-474が俺の書き込みだ。文句あるか。
0477デフォルトの名無しさん
NGNGどの辺が生き恥になるんだ?
0478デフォルトの名無しさん
NGNG自作自演してインチキもっとしろよ
生き恥晒せ
0479デフォルトの名無しさん
NGNGあー、そうか。お前の相手してるってことが生き恥になるな。
うわー、こりゃ参ったわー。
0480デフォルトの名無しさん
NGNG>釣り(反応したらバカ)
廃人のおまいは散々粘着してそのザマか
インチキ野郎、もっとやれ
0481デフォルトの名無しさん
NGNG0482デフォルトの名無しさん
NGNG>釣り(反応したらバカ)
ぐずぐずしてねーでもっと卑しいことやれよ
0483デフォルトの名無しさん
NGNG>釣り(反応したらバカ)
もう終わりか、精神崩壊野郎が
0484デフォルトの名無しさん
NGNG廃人独特の屁理屈と嫌味が足りねーよ
0485デフォルトの名無しさん
NGNG相手してくれないと泣くぞ。泣くもん。
0486デフォルトの名無しさん
NGNGごめんな。オジサンもそんなに暇じゃないんだよ。
メンヘル板ってとこに行ってみたらどう?
0487デフォルトの名無しさん
NGNG自分に都合のいい自作自演もっとやれよ
この卑怯者が
0488デフォルトの名無しさん
NGNGさっきとパターン同じじゃねーかよ
もっと臭い自演しろよ、廃人
0489デフォルトの名無しさん
NGNGお前の本当の卑しいとこみんなに見てもらえよ
さっさと続きやれ
0490デフォルトの名無しさん
NGNGもっと卑屈になれよ。お前の穢れはこんなもんじゃねーだろ
0491デフォルトの名無しさん
NGNGお得意の猿芝居どうしたんだよ、待たせないでさっさやれ
0492デフォルトの名無しさん
NGNG0493デフォルトの名無しさん
NGNG未熟な思考と精神の壊れっぷりを見てもらってよかったな、廃人さんよ
0494デフォルトの名無しさん
NGNGなんで自分の書き込みにずっとレスしてるの?
自分の中の小さい人と会話してるのかな?
0495デフォルトの名無しさん
NGNGとりあえず気の済むまで一人で続けてて。
1時頃もう1回様子見に来てあげるから。
0496デフォルトの名無しさん
NGNGb = String(20, ChrW(12288))
a = ChrW(12288) & ChrW(9675) & ChrW(32) & ChrW(44) & b & ChrW(9675) & ChrW(62) & vbCrLf & ChrW(12288) & ChrW(47) & ChrW(-29) & ChrW(39) & ChrW(9734) & b & ChrW(-247) & vbCrLf & ChrW(-241) & ChrW(32) & ChrW(62) & b & ChrW(-241)
msgbox a
a = Replace(a, ChrW(9734) & b, String(15, ChrW(9632))) & vbCrLf & vbCrLf & ChrW(12363) & ChrW(12288) & ChrW(12417) & ChrW(12288) & ChrW(12399) & ChrW(12288) & ChrW(12417) & ChrW(12288) & ChrW(27874)
msgbox a
0497デフォルトの名無しさん
NGNG0498デフォルトの名無しさん
NGNG0499デフォルトの名無しさん
NGNGひとに擦りつけるのうまいな
自演ばれても平然と続けるあたりが廃人ぽくていい
もっとインチキやれよ
0500デフォルトの名無しさん
NGNG人間の体をなしてないおまいの廃人っぷりを発揮しろよ
0501デフォルトの名無しさん
NGNG0502デフォルトの名無しさん
NGNG順番に表示する事まではできたのですが、文章が枠内に収まりきらない場合、画面
上で見えていない部分にどんどん文字が追加されていきます。文章が全て表示しきれ
ばスクロールを使って全文読む事はできるのですが、これを表示の最中枠内に収ま
りきらない場合はスクロールを自動的に1段ずらすという事は可能でしょうか?
vb6.0を使用しています。
0503デフォルトの名無しさん
NGNGそもそもで、リッチテキストボックスにする。
またはPictureBoxに文字を描画するほうが自分で全て制御できそう。
0504デフォルトの名無しさん
NGNGマルチラインはTrueに設定しています。
TextBoxでは難しいでしょうか?
0505デフォルトの名無しさん
NGNGテキストボックスでも、たぶん制御できるけど(前やったことがあるので)
はっきり言うと計算式つくるのめんどいよ。
…というより、テキストボックスってそのあたりシステムにお任せできるのがいいところであって、
あえて、そこを、制御していくなら、>>503の言うように、PictureBoxのがよいと思う。
アドベンチャーゲームの台詞のところみたいなのつくりたいんだよね?
0506デフォルトの名無しさん
NGNG>アドベンチャーゲームの台詞のところみたいなのつくりたいんだよね
はい、その通りです。以前作成した時はどのような計算式をたてたのですか?
0507デフォルトの名無しさん
NGNGピクチャーボックスでやったほうがいいよ。
スクロールはピクチャーボックスを親コンテナにして描画用ピクチャボックスを子にするイメージで。
(見せれば一発なんだが、文章で伝わるか・・・)
文字の縦横はMSDNとかでフォント周りを調べないと駄目。
文字幅とか文字間とかの説明があったはず。
0508デフォルトの名無しさん
NGNGText1.SelStart = Len(Text1.Text)
のような処理じゃだめなん?
0509デフォルトの名無しさん
NGNGText_LogWindow.SelLength = 0
Text_LogWindow.SelStart = なんちゃら
で、どの部分見せるかっていうのはコントロールできるんだけど、
アドベンチャー的なアレでそれを使おうとすると、まあ、色々あるです。
チャレンジするならやってみて。
0510デフォルトの名無しさん
NGNGあら、かぶったわ。
単純に最後をつねに、表示しつづけるなら、それでおけだね。
0511502
NGNG0512初心者
NGNGif i=1 or i=2 or 1=3 or 1=4 or・・・
と書く以外に、方法はないのでしょうか
0513デフォルトの名無しさん
NGNGif ( ( i>=1 ) and ( i<=100 ) ) then
MsgBox "範囲内です。", vbOkOnly, "サンプルプログラム"
end if
0515502
NGNG.SelStartを上手く使えませんでした。スクロールは上手く下にいってくれてい
るのですが画面がずっと点滅してスクロールも上下に動き続けているいるような
状態です。恐らくTimerで1文字ずつ順番に表示してしまっているからだと思いま
す。
0516デフォルトの名無しさん
NGNGもう、文字単体ではなく絵と割り切ってピクチャーボックスの実装に移ったほうがいいと思うよ。
TextBoxやLabelはあくまで単体の文字や文字列を入出力する為のコントロール。
見え方より入力しやすさを前提に構成されてるから。
0517502
NGNG今まではTextBoxに[すでに表示してある文章]+[追加する1文字]を代入していた
のですが、教えてもらった.SelStartと.SelTextを使用することで解決しました
。
1文字追加する前に.SelStartで最後の個所に移動し、そこで.SelTextに追加す
る文字を代入すると点滅もせずスムーズに文章が表示する事ができました。
TextBoxはあきらめてPictureBoxの手法を探そうと考えていたのですが、なんと
かTextBoxのままで済みました。アドバイスを下さったみなさんありがとうござ
いました。
0518デフォルトの名無しさん
NGNGdo until Rs.eof
'リストボックスに代入
lstList.AddItem Rs.Fields("項目")
loop
リストボックスに値を代入する過程で、MoveNextを書き忘れました。
PauseやBreakが利きません。
タスクマネージャでは応答なしとなっていますが、
プログラム自体は実行されているようです。
大量にリストボックスに行が追加されていますが
このリストボックスって制限行というものは持っているのでしょうか?
OSはXPでVB6 SP5です。
0519デフォルトの名無しさん
NGNGEXE実行ならタスクマネージャから殺す。
デバッカなら、コントロール+ブレークで止まるはず。
0520デフォルトの名無しさん
NGNG色々あるでしょ?
それはさておき、.SelStartってのは微妙に今回のような使い方のためのプロパティではないので、
本来の意味も勉強しといたほうがいいよん。と添えてみる。
0521デフォルトの名無しさん
NGNGVBは使って5年目になる者ですが、
とめることができません・・。
コントロール+ブレークやファンクション+ポーズでも止まりません。
タスクからキックするとおそらくVBごと落ちてしまいます。
0522デフォルトの名無しさん
NGNGWin XP Sp1
です
CSVファイルをLine Inputで1行づつ読み込み、Split関数で配列に分割しようとしています
読込んだデータが
AAA,BBB,CCC
という場合は
配列(0):AAA
配列(1):BBB
配列(2):CCC
とうまくいくのですが
AAA,"BBB,bbb",CCC
という場合次のようになってしまいます
配列(0):AAA
配列(1):BBB
配列(2):bbb
配列(3):CCC
これを
配列(0):AAA
配列(1):BBB,bbb
配列(2):CCC
というふうに、""で囲まれている場合は無視するようなはできるでしょうか?
よろしくお願いします
0523デフォルトの名無しさん
NGNGWin XP Sp1
です
CSVファイルをLine Inputで1行づつ読み込み、Split関数で配列に分割しようとしています
読込んだデータが
AAA,BBB,CCC
という場合は
配列(0):AAA
配列(1):BBB
配列(2):CCC
とうまくいくのですが
AAA,"BBB,bbb",CCC
という場合次のようになってしまいます
配列(0):AAA
配列(1):BBB
配列(2):bbb
配列(3):CCC
これを
配列(0):AAA
配列(1):BBB,bbb
配列(2):CCC
というふうに、""で囲まれている場合は無視するようなはできるでしょうか?
よろしくお願いします
0524デフォルトの名無しさん
NGNGまじめに、一文字ずつよみこんで手動で分割してみし。それで解決。
逆だとめんどくさかったんだけどね。
0525デフォルトの名無しさん
NGNGAlt+ブレークだったかな・・・。
まあ、デバック時に自動西武していないなら、自分の愚かさを呪うしかない。
ちなみに、Listの限界はヘルプみたいほうがいいとおもう。
多分IntegerかLongの限界値かなんかだと思うが、それ以前にリソース使い果たして落ちるとは思う。
0526デフォルトの名無しさん
NGNG0527デフォルトの名無しさん
NGNG最近やらんからすっかり忘れてるけど。
なんで元の人、ブレークとなんかを叩きまくれ・・・もう死んでるかな?w
0528デフォルトの名無しさん
NGNG使い果たして落ちた場合ねん。
その落ち方じゃ、デバッカにはもどらんだろうな。
0529デフォルトの名無しさん
NGNGだから、今頃はよっぽど運良く下手で時間の掛かる処理を書いていなければ、なんまんだ。
0530デフォルトの名無しさん
NGNG0531デフォルトの名無しさん
NGNG「"」を長さゼロの文字列にReplaceした後にSplitするとか。
0532デフォルトの名無しさん
NGNG使ってるソース見てちょっとびびったのでカキコ。
0533デフォルトの名無しさん
NGNGADOとかSQLが使えるなら、CSVファイルをODBC接続で読み取ると
””を自動的に消してくれるよ。
0534デフォルトの名無しさん
NGNG自分でロジック実装、前から順番に
Interで ” と ,を両方調べて、 ,が先ならそこまで分割、”が先なら次の”までで分割でいいんじゃないの?
0535デフォルトの名無しさん
NGNG"がでてきたら、その変数に-1をかける。
て処理を作る。
→ "がでてくるたびに、1と-1を繰り返すことになる。
で、
それとは別に
,がでてきたら、その前とその後で分割するって仕組みを作る。
ただし、先に用意した変数が-1の時は、分割せず無視する。
そんな感じではいかが?
0536デフォルトの名無しさん
NGNGBoolean型使ってもよさそうだな。
0538デフォルトの名無しさん
NGNGADOでCSVに接続すると、""間にカンマや改行があっても分割せずに認識しますよ。
検証の為にサンプルを作ってみました。
ただし、手元にVBがないのでVBSで作りました。
set rs = CreateObject("ADODB.Recordset")
sql = "SELECT * FROM nullpo.csv"
con = "Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=C:\hoge"
rs.Open sql, con, 0
WScript.Echo ( "[" & rs.Fields(0).Value & "]")
rs.Close
このサンプルだとCSVの1行目を強制的に見出しとして認識するので、
1行目もデータとしてみるために接続文字列を下のように変えてもよいです。
con = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\hoge;" & _
"Extended Properties=""text;HDR=No;FMT=Delimited;"";"
0539デフォルトの名無しさん
NGNG立体的なまま押せなくなるのでも、フラットになるのでもどちらでも
構いません。
Common Control のバージョンは5.0です。
リストビューコントロールへのメッセージの投げ方くらいは
分かるので、「このメッセージを調べろ」的な情報を頂ければ
後はなんとか調べてみます。
よろしくお願いします。
0540デフォルトの名無しさん
NGNGいての質問です。今まではLen()を使って文字数を調べて一定の文字数以上だった
らLeft()とMid()を使って文章を2つに区切って2段に分けて印刷するという方法
でした。しかしこの方法だと全角半角が混ざっていると何だかバランスの悪い状
態で印刷されてしまいます。バランス重視にして2段に分ける場合は文章を半分ず
つにしてみたのですが、今度は端に空白ができてしまい文字数をもっと増やして
も良いのではという話になってしまいました。
2段に分けて印刷する時はどういうやり方でやっていますか?Left()Mid()を使う
以外でもっと効率の良い方法もあるのでしょうか?
0541523
NGNG皆様
いろいろなアイデアをありがとうございます
ADOで接続し参照すると望んでたとおりの結果がでました
ありがとうございました
0542540
NGNG0543デフォルトの名無しさん
NGNGHTML HELPをつくってまして
VB6から状況にあったHELPページを開こうとしてるのですが
コンテキストIDの設定方法がわかりません
どこでIDを設定するのでしょう?
HELP側でAliasは設定しました。
これとIDとの定義付けがどこかで必要なんですよね。
ご存知の方よろしくお願いします。
0544デフォルトの名無しさん
NGNGやはり配列の先頭から検索するしかないのですか?
環境は
VB 6.0 SP6
Windows XP Home Edition SP1
です
0545浴寳
NGNG0546欲恊
NGNG0547デフォルトの名無しさん
NGNG0548デフォルトの名無しさん
NGNG0549デフォルトの名無しさん
NGNGShell("VB6.exe")
まあ、VBの何を呼びたいの?モジュール内の関数?フォーム?EXE?
0550デフォルトの名無しさん
NGNGちょっとワラタ
0551デフォルトの名無しさん
NGNG全角半角を考慮して、1段目をMaxで印刷するやり方が知りたいの?
0552デフォルトの名無しさん
NGNG0553デフォルトの名無しさん
NGNGこっちで聞いたほうがいいんじゃない?
http://pc5.2ch.net/test/read.cgi/tech/1083001859/
0554デフォルトの名無しさん
NGNGファイルセーブのデフォルトのファイルネームって
CommonDialog1.FileName = "hogehoge"みたく直接格納していいの?
コード内でファイルネームをつけるとダイアログ側でファイルネームを
変更した時に反映されずにそのままデフォルト名が渡されて保存されてしまうんだが・・・
File_Saveに渡した時にファイル名を改めて取り直すとばっかり思ってたんだけど
そうじゃないのね?
0555デフォルトの名無しさん
NGNG>ダイアログ側でファイルネームを変更した時に反映されず
んなこたぁない。ちゃんと反映されるよ。
0556デフォルトの名無しさん
NGNG次のようなテキストファイルがあると仮定します。
左の数字は行番号です。
1| 2ch
2| 3ch
3| 8ch
このファイルを1行ずつ 「X」 「Y」 「Z」 に代入したい場合には、
下のようなソースを書けば良いですよね。
| Open "data.ini" For Input As #1
| Line Input #1, X, Y, Z
| Close #1
ところが、逆に書き込む場合にはどうすれば良いのでしょうか?
「Print」 を使うと、スペースで区切られてしまいますし、
「Weite」 を使うと、カンマで区切られてしまいます。
改行で区切って書き込むコマンドがあれば教えて下さい。
お願い致します。
0557デフォルトの名無しさん
NGNG配列のサイズとかは関数内部で確保すれば
いいのかな。
0558デフォルトの名無しさん
NGNGPrint #1, X & vbNewLine & Y & vbNewLine & Z
または
Print #1, X
Print #1, Y
Print #1, Z
お好きな方ドゾー
0559デフォルトの名無しさん
NGNG0560デフォルトの名無しさん
NGNG簡単に作れるからヘルプ嫁。
0561デフォルトの名無しさん
NGNGあれを右下に表示したいんですが、どうすればいいんですか?
0562561
NGNG○左上
0563デフォルトの名無しさん
NGNGどっちでもいい。
0564デフォルトの名無しさん
NGNGvbCrLfは文字コードCRとLFの組み合わせ、vbNewLineはOSに依存した改行コード。
Office for MacのVBAではvbNewLineとvbCrLfではコードが違うはず。
改行という意味ならvbNewLineの方がふさわしい気がするが
多くの場合vbCrLfが改行として使われている。
0565デフォルトの名無しさん
NGNGListViewにピクチャーなんとかっていうそれっぽいプロパティがあるから適当にいじる。
詳しくはヘルプを。
0566デフォルトの名無しさん
NGNGリストビューのレポートスタイルで、カラムをクリックしてソート
したときに▼とか▲をヘッダに出したいのですが、あれはやっぱり
オーナードローとかいうものをしないとダメなのでしょうか。
VBでも可能なんでしょうか。
0567デフォルトの名無しさん
NGNG「Command1」 をクリックした時に、「Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)」 と
全く同じ処理をしたいのですが、どうすれば良いでしょうか?
同じ内容をコピペして合計2回書くことも出来るんですが、
複雑化した際に同じものを2つ書くことが非効率な気がして・・・。
お願いします。
--------------------------------------------------------------------------
Private Sub Command1_Click()
〜ここから、下の Sub Form_QueryUnload を呼び出したい。
End Sub
--------------------------------------------------------------------------
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
〜 ここに終了時の処理が書かれている 〜
End Sub
0569デフォルトの名無しさん
NGNGcall Form_QueryUnload
0570デフォルトの名無しさん
NGNG0572567
NGNG本当にありがとうございます。
そのコマンドを知るためにどれだけ苦労したかと思うと 。・゚・(*ノД`*)・゚・
友人が.NETに移行するとかで貰ったVB6なんですけど、インストール時にMSDNのCD要求されて
そんなCD貰ってないから無視したら、ヘルプも見れないんですよね
やっぱり、VB6を購入すると、MSDNのCDが付いているんでしょうか・・・
本当にありがとうございました。
>>570-571
試してみたら、Unload Me でも QueryUnload が呼ばれていました。
今まで下のように書いていたのですが、
そう考えると無限ループになりそうですね。
QueryUnload で Unload Me → QueryUnload を呼び出し → また、Unload Me があって
→QueryUnload を呼び出して・・・・・。
--------------------------------------------------------------------
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
〜ここに終了時の処理〜
Unload Me
End Sub
--------------------------------------------------------------------
でも、何故か無限ループにはなりませんでしたが・・・。
VB君って賢いのかな。
本当にありがとうございました。
0573デフォルトの名無しさん
NGNG分かれば教えてください。
VB4.0で、特定のフォルダに置かれているVBAが記述されているExcel2000を開きます。
このときマクロの「有効・無効」のポップアップが出てしまうのですが、これを出さないようにVBで制御できますか。
ちなみに、セキュリティーレベルは「中」以上の設定にしておくという条件あり。
0574デフォルトの名無しさん
NGNG>既出だったらマジですいません。
そこまで謝るならなぜ事前に過去ログを調べないんだ?
0575デフォルトの名無しさん
NGNG0576デフォルトの名無しさん
NGNGそんなことするのはウィルスっぽくてどうかと思うけど。
VBだけで可能か知らないけど、
新しいスレッドを作成してダイアログを定期的に監視させ、
ダイアログが開いたらすかさず閉じさせるっちゅうのはどう?
0577デフォルトの名無しさん
NGNGhttp://office.microsoft.com/ja-jp/assistance/HP052012011041.aspx
これでも読んで良く考えよう。
Excelのマクロにデジタル書名をつければ済む事なんだがな。
0578デフォルトの名無しさん
NGNG573ではないが、おもしろそうな資料をありがとう。
実は私もマクロにデジタル署名をつける実際をしりませんですた。
使わないしなぁ・・・個人でやってる分には。
0579デフォルトの名無しさん
NGNG今までEXCEL95を呼び出していたんですけど、今度EXCEL2000を呼び出すことになり、
使用者に「ポップアップが出てそそままEnter押すとマクロ動かないよ!」と言われてしまったため、
先ほど記述の作業が必要になってしまった次第です。
現在、他のVBでの作業に追われて過去ログ調べずに書き込みしちゃいました。
落ち着いたら過去ログ調査します。
>576
>577
ありがとうございます。参考にして挑戦してみます。
0580デフォルトの名無しさん
NGNGhttp://office.microsoft.com/ja-jp/assistance/HA010550371041.aspx
577出だしたのは良く見たら、Excel 2003だったので、
Excel2000はこちら。
0581デフォルトの名無しさん
NGNG0582デフォルトの名無しさん
NGNG書庫ってなんやねん。ZIPやLHAで圧縮されているファイルのヘッダか?
ファイルを展開するのがいやなら自前で展開ルーチン書くしかなかんべ。
0583デフォルトの名無しさん
NGNG次のようなアプリケーションを作ろうとしています。
「スタートアップをsub mainにして、sub main内でformを明示的にインスタンス生成し、
formがuserによって閉じられたらアプリケーションも終了させる。」
このときインスタンス破棄をどのタイミングでして良いのか分かりません。
生成は次のように行っています。
Sub Main()
Set gForm = New frmMain
gForm.Show
End Sub
WM_DESTROYを待って
Set gForm = Nothing
すべきなんでしょうか?
0584デフォルトの名無しさん
NGNGネタか?これは。
やれるもんならやってみな。
0585デフォルトの名無しさん
NGNGまったくわかってない。最初っからやり直し。
0586デフォルトの名無しさん
NGNGこのスレは何のスレだ?
あほ
0587デフォルトの名無しさん
NGNG何語使いなんだ君は。
0588デフォルトの名無しさん
NGNGMainが無いと落ち着かない。メッセージループは理解してる。なのにVBを全く勉強していない。
0589デフォルトの名無しさん
NGNGプロジェクトのプロパティ変更できるなら、
…つーか、そもそも、フォーム作成の段階で気づきそうなもんだが。
0590583
NGNGform一つで良いならスタートアップをformにしとけば良いと思うのですが、
複数のformを開いて(つまりソース中のgFormをcollectionもしくは配列にして)、
全てのformが閉じられたらアプリケーションの終了としたいのです。
0591デフォルトの名無しさん
NGNGまず、VBのそれらをきちんと覚えることが先決だと思いますが。
付け焼刃で自分の流儀でVBの動作を捻じ曲げると、メンテする人が参ります。
Winアプリの基本線が判ってるんだから、それほど苦労せずにVBを理解できると思いますが。
基本的にVBはクローズされた箱庭ツールと認識してかからないと駄目。
0592デフォルトの名無しさん
NGNG暗黙のなんちゃらとか、暗黙のインスタンスとか、
そんなものが色々できまくるので、それらを、把握するところまででいいと思われますよ。
VBは、その暗黙のなんとか生成させないようにしようとすると泥沼にはまりますので。
Formで言うと、普通にFormから起動したりloadで呼ぶと、
Form名と同じ名前のインスタンスが暗黙に生成されますねん。
消滅するのは、参照してるものが全部なくなった時。
後は、参照を格納してる変数の寿命がどこで消滅するか把握しとけば、
set ○○=nothing発行必要有無、ENDの発行タイミングはわかると思いますが。
0593583
NGNGいまいち参照変数の寿命の部分がよくわからんかったのです。
VBでは「作動中の関数が無く、全てのformがunloadされた段階でアプリケーションのが終了する」
と捕らえているのですが、
>>592さんの意見からの自分の解釈では
全formがUnloadされる → アプリ終了=変数寿命キター
→ formインスタンス消滅 = set ○○=nothing必要ない
というわけですね?
0594デフォルトの名無しさん
NGNGVBはいい加減なもんだから、
細かな事気にする必要は無い。
終了は、「end」 これだけ。
フォームも全部一気に閉じて最強。
ファイルをクローズする必要もフォームを閉じる必要もない訳だ。
0595デフォルトの名無しさん
NGNGアプローチの仕方が根本的に違う気がするが・・。
作動中の関数が無くて、すべてのFormがUnloadされた状態で、
どうやってset **=nothingするんですかい?
自分で書いたレスよく読んでみると、なんか変なこといってるのが分かると思いますよ。
コードありきじゃないんですよVBは、オブジェクトありきなんですよ。
0596デフォルトの名無しさん
NGNGでも、なんか自分で書いててひねくれた言い方だなって思う。
0597デフォルトの名無しさん
NGNGいやまあ、それだとたまにプロセスのこるプログラムになっちゃうけどねん。
0598デフォルトの名無しさん
NGNG元質問者の質問を汲んでないぞ。
複数の同格のフォームを全て表示して、それらが全て終了したらアプリ終了。
ってことをやりたいんだと思う。
私なら設計時点で仮でもいいから、メニューのみのフォームでも作って親をきめるけど。w
0599デフォルトの名無しさん
NGNG俺もそうするなw
いっそのこと、生成された瞬間にHideでもいいしなw
ぶっちゃけ、そんなもんよVBって。
0600デフォルトの名無しさん
NGNG隠れた仮メインフォームを作成。
仮メインがロード時に他のフォームを起動、そのインスタンス管理は仮メイン。
各フォームはアンロードイベントで、仮フォームの自分のインスタンスフラグかなんかを落とす。
仮メインはタイマーで回っていて、全てのインスタンスが無くなったら終了。
タイマー云々と仮ー他フォーム連携部分はWindowsメッセージで置き換えも可能。
その場合はサブクラス化で検索。
0601583
NGNG>>595
>作動中の関数が無くて、すべてのFormがUnloadされた状態で、
>どうやってset **=nothingするんですかい?
なもんでメッセージループ組んでWM_DESTROY待つんかなと最初は思ったわけです。
やりたいことは>>598さんのおっしゃるとおりのことです。
dummy親を作っとくわけですか。。。なんとも効率の(ry
タイマーやVBでのサブクラスがあまり好きでないので
form管理用にスレッドを一つ作って、セマフォとかで管理ってのもありですかね?
0602デフォルトの名無しさん
NGNGあのさ、VBのやり方って言ってる意味理解してる?
APIごりごり、スレッド使いたい云々だったら、それ用の言語でやればいいだけ。
DelだってVCだってBCCだって何でもあるよ。
VBでやりにくいことをワザワザVBでやるのは無意味。
0603デフォルトの名無しさん
NGNGいや、なんちゅーか、VBつかわないほうがいいよ。本気の話で。
向いてないと思う。やりたいことと、あなたの気質に。
別に、馬鹿にしてるわけでもなくて、素でいっとるのよ。
>>601
ちゃうちゃう。だから、その発想がそもそもの間違いなんだって。
JavaでもCでも、
メイン関数 → オブジェクトとしてのフォーム管理
↓
多種制御
で、メイン関数ありきでしょ。
VBは。
己の管理
↑
メインフォーム + 他フォーム + 他フォーム
↓ ↓
メインフォームの管理のみ 己の管理
という形か
(つづきます)
0604デフォルトの名無しさん
NGNG>>598や>>599で提案しているように。
メインフォーム → 他子フォーム
↓
各種制御
という形で、
コードはあくまでメインフォームに付属するものなんですよ。
(自動で生成される暗黙のインスタンスをもった)オブジェクトありきなんですな。
そのあたりを勘違いしてるのかと。
0605デフォルトの名無しさん
NGNGVBで作るなら1本のEXEでマルチスレッドは考えないほうがいい。
複数のEXEでそれそれ別プロレスにしてしまえ。
0606デフォルトの名無しさん
NGNGEXE複数に一票。
0607583
NGNGかつ、DLL等はあまり使わずに標準機能で楽しろと。
なるほど。勉強になりました。
&納得できました。有難うございました。
0608デフォルトの名無しさん
NGNG0609デフォルトの名無しさん
NGNGTextBoxに入力することが出来ない文字があります。
IME標準では変換せず、IMEバッドの手書きで、
入力させるような文字です。
旧字体というやつだと思います。
入力させる方法はあるのでしょうか?
0610デフォルトの名無しさん
NGNGVBにきっちりサービスパックをあてて、
かつ、テキストボックスのフォントを、該当フォントにしてみたらだめかね?
とゆうか、その文字ってのが、何語の何なのかはっきりわかれば、
もうちょっと違うアドバイスができる気がす。
0611609
NGNGこの字「隆」に草冠をつけ、「生」の上に
横棒が追加している文字になります。
SPは3まで当ててあります。
0612デフォルトの名無しさん
NGNG0613デフォルトの名無しさん
NGNG0615デフォルトの名無しさん
NGNGアホ
0616609
NGNG0617609
NGNG0618デフォルトの名無しさん
NGNG0619デフォルトの名無しさん
NGNGそういぢめてやるな。
まあとりあえず、SP6まで当てることと<実際は、5,6あてるだけ。4までは5に含まれるから。
テキストボックスの表示フォントをUNICODE対応のフォントにかえてみるとか。
それで出たら問題解決。
0620デフォルトの名無しさん
NGNG本当はレベル高い話だな。これがVBか、、、
0621デフォルトの名無しさん
NGNGTextBox自体はUnicodeでの入出力ではなかったような・・・。
プログラム側から取れるのはUnicodeなんだけど、外(=人)とのやり取りはANSIだったような・・・。
0622デフォルトの名無しさん
NGNGは?
0623609
NGNG色々とありがとうございました。
0624デフォルトの名無しさん
NGNG人様のPCの外字をいじくるようなことをしなければ。
0625デフォルトの名無しさん
NGNG人様のPCの外字をいじろうが、お前には関係ない。
0626デフォルトの名無しさん
NGNGttp://www.surveytec.com/prog/vb/kouza/chap3.html
でSub Mian内でUnload Form1をする必要あるのか?
0627デフォルトの名無しさん
NGNGForm1という変数で示される、実行と同時に暗黙的に作成されたForm1型のインスタンスを消滅させてるんでないかい?
FormX()っていう変数でForm1型のインスタンス(群)を管理するために。
別にそのままの残しておいてもかまわないっちゃかまわないような気もす。
無駄だけどね。
0628デフォルトの名無しさん
NGNG0629デフォルトの名無しさん
NGNGここで作ったものを動かすには、やはりVBのソフトが必要でしょうか?
0630デフォルトの名無しさん
NGNG0631デフォルトの名無しさん
NGNGつーかさ、何がしたいわけ?
変数ってのはグローバルな物以外は関数を抜けたとき寿命がくる。
VBってのはガベージコレクションを持っているのだから
アプリケーションが終了したらグローバルな物も勝手に消える。
通常ガベージコレクションをもっている言語ってのはC/C++でいう
deleteなんてインスタンスを削除する命令は無い。
あるのはインスタンスを参照している変数をクリアする命令(VBでいえばNothingの代入)
インスタンスはどこからも参照されなくなった時点で勝手に削除される。(というかこれがガベコレなんだが)
Mainから起動したとしても、何もせずともフォームが
すべてUnload(フォームを閉じても同じ)された時点でアプリが終了するようになっている。
(どこからも参照されなくなった時点ではない)
Main関数を抜けてもフォームがLoadされているのならアプリは終了しない。
暗黙に作成された変数がアプリ終了時点で(Unloadされた)フォームを参照していても
ガベコレの動作の設計どおりにアプリ終了時点でクリアされるから問題ない。
これはオブジェクト指向らしいきちんと設計された動き。
0632デフォルトの名無しさん
NGNGFor Each frm In Forms
Unload frm
Next
にしとけってこったw
0633デフォルトの名無しさん
NGNG変なことばっかり言っているね。>>632とか。
0634デフォルトの名無しさん
NGNGそんなこといったら>>627や>>628もじゃんよ。
0635632
NGNGwから読み取ってくれよ。
確信犯という言葉は・・・って指摘は勘弁な。
0637デフォルトの名無しさん
NGNG0638デフォルトの名無しさん
NGNGそりゃ、昔のBASICの時代からついてるじゃん。
0639デフォルトの名無しさん
NGNGNothingの代入がインスタンス削除命令(C/C++のdelete)だと勘違いして
自分で削除しなくてはならない。いつどうやってやるのかと悩んだってことでFA?
0641デフォルトの名無しさん
NGNG0642デフォルトの名無しさん
NGNG販売とっくに中止していてプレミアが付いているからね。
でも、VB.NET は使い物にならないじゃん。
Microsoft .NET Framework がインスコされているパソコンじゃないと、
VB.NET で作ったアプリは動かないんだろ?
だったら、Windows 2000 や XP のデフォルトの状態じゃあ使えないからね。
VB.NET で作ったソフトをフリーソフトとして配布したとしても、
.NET Framework 入れるのが面倒という理由で使ってもらえないんじゃね?
ということで、VB6は必須だな
0643デフォルトの名無しさん
NGNG65536ミリ秒以上の値を指定したのですが、
どうすれば良いでしょうか?
約1分ちょっとの時間しか指定できないのならば、
ラーメンタイマーすら作れませんよね。
原始的に、Timerを2つ設置して、
1個が限界になったら、もう1個が作動するみたいな
仕掛けを作るしかないんですか?
教えて下さい。
0644デフォルトの名無しさん
NGNG0645デフォルトの名無しさん
NGNG別にTimerを二つおかなくても1分を2回待てば2分。
1000回待てば1000分だろ。
0646643
NGNGユーザーが入力した時間毎に作業をさせたいんですよ。
例えば、「5」分「31」秒と入力したら、その時間毎に・・・。
5分の時点で1分を5回待って、31秒を1回待つようにすれば良いんですよね。
教えていただきありがとうございました。
というか、タイマーに時間制限を設けるなんて不便でしょうがないですよね
65537ミリ秒ごときでオーバーフローなんて20年前のPCじゃないんですから!
0647デフォルトの名無しさん
NGNG5分も待てば相当誤差が発生するだろうけどな。
俺なら数秒単位のIntervalにして
残り時間が少なくなったときに目標時間までの残り時間をセットする。
たとえば5分31秒なら、10秒ごとに残り時間をチェックして10秒以上
残り時間があれば10秒。10秒を切っていれば残りの秒数とか。
0649デフォルトの名無しさん
NGNG1秒毎タイマーで起動時間と現在時刻の差を計算。
それだけじゃないの?
0650デフォルトの名無しさん
NGNG解雇
0651デフォルトの名無しさん
NGNG割り込みの回数的に、>>647がスマートかと。
普通のアプローチならそれでいい。
0652デフォルトの名無しさん
NGNGタイマーはあくまで指定時間”以上”の間隔の保証。
だから、25秒を10秒×2+5秒とした場合、その3回のイベント毎に誤差が生じる。
毎秒っていう負荷を気にするならば、残り10分あれば1分毎、それ以下1分まで10秒毎、1分切ったら毎秒(かそれ以下)
っていう間隔で、起動時間との差を取ればいいじゃないですか。
起動時間との差は絶対値だから誤差はほとんど生じない。
0653デフォルトの名無しさん
NGNG100,佐藤
200,田中
ABC , 木村
という形式のCSV(M_NAME.csv)をADOで読込もうと思ってます
SQLに
SELECT Name FROM M_NAME.csv WHERE ID = 100
とやると「佐藤」を取得できるのですが
ABCのようなコードの場合エラーとなってしまいます
数値型と文字型が混在いているからでしょうか?
どんな型でも読込めるような方法はあるでしょうか?
よろしくお願いします
VBは6.0 SP6
OSはXP HOME SP1です
0654デフォルトの名無しさん
NGNGかなり骨髄レスしてるが。
0655デフォルトの名無しさん
NGNG0656デフォルトの名無しさん
NGNGそれ、100の場合は「例外的に」なぜか「うまくいっちゃってるだけ」だよ。たぶん。
0657デフォルトの名無しさん
NGNGVBでうまく文字列のポインタ渡しをする方法はないでしょうか?
状況説明ですが、VBでテキストエディタ作ってます。そのときテキストを
一行ずつ文字列型変数にして、動的配列に持たせています。
ここで、例えば改行等をすると、文字列のコピーを下のループのようにさせています。
'モジュールレベル宣言
Dim m_Buf() as String
Dim BufCnt as Long 'BufCntは行数で常にReDim m_Buf(BufCnt)してある
'改行されたら
ReDim m_Buf(BufCnt)
For i = BufCnt to NowIdx + 1 Step - 1
m_Buf(i) = m_Buf(i - 1) '(A)
Next i
BufCnt = BufCnt + 1
としています。ただこれだと行数が6万行ほどからかなり時間がかかるようになります。
原因は(A)の部分で文字をメモリを再割り当てしているからであるようなので
そこで「VBでのString型変数はStrPtr関数の戻り値と同じ値を格納している、
つまり文字列のポインタ」ということを利用して(A)を
Call CopyMemory(ByVal VarPtr(m_Buf(i)), ByVal VarPtr(m_Buf(i-1)), 4)
もしくわループ自体を
Call CopyMemory(ByVal VarPtr(m_Buf(NowIdx + 1)), ByVal VarPtr(m_Buf(NowIdx)), 4 * (BufCnt - NowIdx))
としました。Cでいうポインタ渡しです。結果として文字はコピーされ、速度も高速なのですが、
しかしここで問題発生で、この後m_Buf()の要素にアクセスしようとすると何度目かでメモリエラーになります。
VBで文字のポインタ渡しをうまくできないでしょうか?よろしくおねがいします
0658デフォルトの名無しさん
NGNG後者の場合、コピーするメモリ領域が重なっているのでCopyMemoryがうまく動かない可能性がある。MoveMemoryにしろ。
但し、それだけで解決するとは思えないがな。
0659デフォルトの名無しさん
NGNG前の添え字
文字列
次の添え字
なんて構造体?にして
先頭から順に並べるなんてどうなんだろう。
#僕はプログラム書きではないから当てにならんけど。
0660659
NGNGttp://www-ise2.ise.eng.osaka-u.ac.jp/~iwanaga/programming/stl/list.html
0661デフォルトの名無しさん
NGNGVBでメモリー操作をやるという発想がまず間違いな訳で。
でも、そもそもリッチテキストボックスとかで、文字列をプログラムが管理して改行とかしてるのか?
その辺りって適当にコントロール標準でやってくれるんじゃないの?
0663デフォルトの名無しさん
NGNGで、そのEXE起動させてみてもインストール出来ません
オリジナルのVBじゃないからインストール出来ないんでしょうか?
0664デフォルトの名無しさん
NGNG又は、このあたりを参考に
ttp://dobon.net/vb/installer/index.html
0665デフォルトの名無しさん
NGNGインスコ用のソースを見せてもらわんとなんともいえね
0666デフォルトの名無しさん
NGNGなんとなくわかるようなわからないような。
0667デフォルトの名無しさん
NGNG0668デフォルトの名無しさん
NGNGAccess出身でSubFormが使えない事が分かって、どういうやり方でやるか困っ
ています。
参考になるサイト等もあるのでしょうか?
0669デフォルトの名無しさん
NGNGもすこし詳細キボンヌ
0670668
NGNGレスありがとうございます。
無理矢理文章での説明になってしまうのですが、今回販売購買のソフトを作成する
ことになりました。私が担当になったのは売上プログラムです。
売上プログラムは顧客名を入力し、何の商品をいくつ購入したかを保存します。
Accessで作業をしていた時は顧客データを入力する所を親Formとし、明細部分には
[オートフォーム:単票形式]で作成したFormをSubFormとして親Formに組み込んで
いました。VBでも同じやり方ができればと考えていたのですが、SubFormは使用で
きないと知り、何とかこれに近い方法を探しています。
私の会社では今まで、FormにTextBoxを並べていました。明細の数が多くなる場合
にはScrolBarを使って、下にずれていっているように見せる方法をとっていました
。
ただもっとシンプルに作成できるのではないかと思い質問しました。
VB6.0使用者です。よろしくお願いします。
説明不十分のところがあれば教えてください。
0671デフォルトの名無しさん
NGNG伝票入力系のOCXを使うがよろし。
うちはDenpyoMan使ってた。
0672デフォルトの名無しさん
NGNGID,NAME,NO
1,佐藤,100
2,鈴木,A100
3,木村,"100,200"
というCSVに対してADOで接続しているのですが
2レコード目以降の「NO」の項目がNULLになってしまいます
いろいろ調べたのですが
1レコード目の「NO」の値が数値だからのようです
1レコード目の「NO」を"B111"に変更すると
すべて読むことができます
データの型に関係なく読み取るような処理はできますでしょうか?
0673デフォルトの名無しさん
NGNGADOはDBアクセスを前提にしてるんだから、データに型があることは前提です。
0674668
NGNG情報ありがとうございました。早速上司と話してみたのですが、購入予定は無い
そうです。
VaSpredとMSFlexGridというコントロールはあるのですが、使い方が理解できて
いない状況です。このどちらかを使えば>>670のような方法も可能になるのでし
ょうか?
0675デフォルトの名無しさん
NGNGSpreadはExcelのスプレッドの粗悪品、FrexGridはDataControlとあわせればAccessの一覧表部分だけ再現可能。
AccessはあくまでAccessで、VBで標準のみでUI作るなら、その範囲内で要件を再検討するほうが良いと思うが。
0676669
NGNGさて・・・サブフォームというと
いわゆる一枚の明細に沢山商品名が書いてあることを
メインとサブと考えていいのかな?一般的に
もしそうだとしたら・・・グリッドがどうとか言う前に滅茶苦茶簡単だと思うんだが・・・
なんか勘違いしてたらスマソ
0677669
NGNG一般的なサブフォームの考えっぽ orz
____________________________
| | | 例えばこんな感じで左で顧客データ
| | | 右に明細 とかって・・・アカン?(´・ω・`)ショボーン
| | |
| | |
|_____|_____________________|
0678デフォルトの名無しさん
NGNG作るアプリの規模がどれくらいかわかんないけど、普通に考えて元は取れるでそ。
0679デフォルトの名無しさん
NGNG横レスだが、値段の問題じゃなく、こういう市販を嫌う人って多いのよ。
なんでも自分でやるって考えみたいな。
0680デフォルトの名無しさん
NGNG俺が昔勤めてた会社も自社専用ライブラリとか作ってやってたよ。
小さな会社だったけど。
0681デフォルトの名無しさん
NGNG俺的には外部OCX使って楽してこそのVBだろって思うんだが・・・
データアクセス部分を自前で書いてライブラリにする、とかならともかく、
正直UIには手間掛けたくないなぁ。
0682デフォルトの名無しさん
NGNG後々買ってきたライブラリでは処理できない事にぶつかったり
OSのバージョンアップでそのライブラリが使えなくなったり
そのライブラリ作った会社がつぶれたりサポートがetc.
した場合を言い出したらきりがないが。
俺はあるのなら買ってくる派だが、自社ライブラリは悪いとは思わないな
0683デフォルトの名無しさん
NGNG一番近い雰囲気を持たせられるコンポーネントは他にあるんだね。
DataRepeaterコントロールと言うのがそれで、後は下記リンク参照。
http://www.microsoft.com/japan/developer/library/VBCon98/vbconusingdatarepeatercontrol.htm
0684デフォルトの名無しさん
NGNGset rs = CreateObject("ADODB.Recordset")
sql = "SELECT * FROM kuma.csv "
con = "Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=C:\hoge"
rs.Open sql, con, 0
rs.MoveFirst
Do Until rs.EOF
WScript.Echo ( "[" & rs.Fields("NO").Value & "]")
rs.MoveNext
loop
rs.Close
おかしいなー。VBSだけどこれで問題なく動くよ。
どんなコードを書いてるの?
あと環境は?
当方WinXPSP1、MDAC2.7。
con = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\hoge;" & _
"Extended Properties=""text;HDR=Yes;FMT=Delimited;"";"
もしかしたらこれで正しく動くかも。
0685668
NGNG使っているのですが、新しく「Denpyoman」を買うつもりはないみたいです。
>>678さんのいう通り、事務処理系のソフトを作っている自分の会社なら6万円で
も十分に元がとれると思ったのですが、値段が高いそうです。
>>683さんの教えてくれた「DataRepeater」は興味があるのですが、誰も使った
ことがないので、時間をゆっくりかけて調べて行きたいと思います。
今回の作業に関してはSpreadを使う事になりました。そこでSpreadについて質問
させてください。Spread内でのGotFocusプロシージャとはないのでしょうか?
列が移動する度にステータスバーに何を入力するかを表示したいと考えています。
0686デフォルトの名無しさん
NGNGIf App.PrepInstance Then
End
End If
でも、先に起動していたほうを(強制)終了することを試みたのですが上手くいきません。
ちなみに次の操作を行いました。
クラス名を"ThunderRT6Main"、キャプションを"App.Title"としてFindWindowでハンドルの取得を試みたのですが、
そこで得たハンドルに"WM_QUIT"を送りつけた。
結果、上手く終了しませんでした。
有効な方法をご存知の方はみえませんか?
0687デフォルトの名無しさん
NGNG2重起動防止の処理として、先に起動していたほうを(強制)終了したいのですが上手くいきません。
試した処理は下記のとおりです。
・クラス名を"ThunderRT6Main"、キャプションを"App.Title"としてFindWindowでハンドルの取得
・取得したハンドルに"WM_QUIT"を送る
有効な方法をご存知の方はみえませんか?
0688デフォルトの名無しさん
NGNGこの手の話は95系とNT系で若干異なる。
まあ、二重起動ってことは、殺される側も自分なんだから、死に易いようにきちんと作ればいいんじゃないのか?
0689デフォルトの名無しさん
NGNG0690デフォルトの名無しさん
NGNGOSは、2000/XPです。
>殺される側も自分なんだから、死に易いようにきちんと作ればいいんじゃないのか?
ごもっともです。勉強します。
>>689
プロセスIDを取得するとき、ウィンドウハンドルが必要になりますよね。
上記のハンドル取得方法には問題ないのでしょうか?
0691デフォルトの名無しさん
NGNG後起動側はインスタンスを確認し、存在したらそのプロセスIDを殺しに行く。
0692デフォルトの名無しさん
NGNG0693デフォルトの名無しさん
NGNG0694668
NGNGありがとうございます。成功しました。
Spredでもいろいろできるんですね、まだまだ勉強が必要ですが。
0695687
NGNGハンドルを取得してから、プロセスIDの確認してみます。
とりあえずもう少し悩んでみようと思います。
皆さん、ありがとうございました。
0696668
NGNGSpreadSeetで行ヘッダを選択し、行全体を指定している時に[Delete]キーを
押すと、その行を削除するという動作をさせたいです。
行の削除方法はすぐに見つかったのですが、行全体をしていしているという判
断をどのプロシージャで行えばいいのかわかりません。
ご存知の方がいましたら是非お願いします。
0697デフォルトの名無しさん
NGNGSpreadのOperationModeが「単一選択モード」になってるのなら
SelModeIndexプロパティから行番号を得られます。
そうでないのなら、Clickイベントでヘッダがクリックされるたびに
その行番号をどっかに保持しておく、ぐらいしか思いつきません。
ごめんなさいね。
0698デフォルトの名無しさん
NGNG"ActiveRow"っていうプロパティがあったと思ったが…
0699デフォルトの名無しさん
NGNG昨日購入し、まだ条件分岐を覚えたレベルです。
binフォルダにあるexeはVBがインストールされているPCでしか使えない。
という事ですが、配布されている方はどうやってexeを作っているのですか?
アプリケーションをうまく初期化できませんでした?見たいに表示されるみたいです。
自PCじゃないので詳細なエラーメッセージがわからないのですが、宜しくお願いします。。
0700デフォルトの名無しさん
NGNG良くない。>>1に書いてあるだろ…
相手のPCに.NET Frameworkが入ってないとか…
0701668
NGNGはい、ActiveRowというプロパティは調べました。実際にDelete処理を行う時に
使うつもりです。今自分ができないところは行ヘッダを選択しているのをどうや
って知るかです。行ヘッダを選択してもActiveColは列の1番目を認識していて
、この状態でDelete処理を入れると、単に列の1番目でDeleteキーを押しても行
を削除してしまうのです。
0702デフォルトの名無しさん
NGNG�@Timerの時間は、最長何分位まで設定可能なのでしょうか?
60数秒に設定したらダメで、60秒(60000)はOKでした。
0703デフォルトの名無しさん
NGNGMaskEdBox1.Format = "ggge年m月d日"
MaskEdBox1.Mask = "#年##月##日"
MaskEdBox1.Text = dat
MaskEdBox1にdate型変数(dat)を入れようとすると
「実行エラー380 プロパティの値が不正です」と出ます。
.textの位置を.maskの上に持っていくと.textに代入したdate変数の値は失
われます。
1週間悩んでます誰か助けて下さい(涙
0704デフォルトの名無しさん
NGNG2^16-1 = 65535(ms)
65秒とちょっと。
0705702
NGNGありがとうございます。
では、65秒以上のタイマーイベントは使えないのでしょうか?
更に長い時間のタイマーを使える方法等ありましたら、
教えていただきたいです。
よろしくお願いします。
0706デフォルトの名無しさん
NGNGただ今、
Dim strbuff As String
Open "C:\a.txt" For Input As #1
Line Input #1, strbuff
MsgBox strbuff
T1.Text = strbuff
Close #1
↑このようにし、テキストボックスをファイルに書き出す事をしています。
この場合、"C:\a.txt"にしておりますが、
ゆくゆくは、実行ファイルと同じディレクトリ内にファイルを作成したい
と思っております。
このディレクトリは、あちこちのドライブ&ディレクトリに動かします。
こんな場合でも、ファイル(設定ファイル)を読み書きするにはどのような
記述をすればよろしいのでしょうか?
よろしくお願いしますm(__)m
0707デフォルトの名無しさん
NGNGタイマーイベントの中に static な変数を宣言して数える。
0708デフォルトの名無しさん
NGNG0.5秒とか0.1秒ごとにtimerで監視して行う
Windowsのタイマーイベントは精度があまりよろしくないので
どのみちこんなやり方しないと誤差がひどくなる
0709デフォルトの名無しさん
NGNGApp.Path & ”\a.txt”
レジストリやDocuments and Settings\usrname のほうがよくない?
0710デフォルトの名無しさん
NGNG解雇
0711デフォルトの名無しさん
NGNG0712デフォルトの名無しさん
NGNGネタ?
0714デフォルトの名無しさん
NGNGマスクかけるだけ
0715デフォルトの名無しさん
NGNGマスク、ですか…?
やってみます。
0716711
NGNGすいません。マスクってANDとかORのことですよね?
それならもうやってるんですが、どういう風にマスクをかければいいんでしょうか?
0717デフォルトの名無しさん
NGNG0718デフォルトの名無しさん
NGNGごめん。ウソ。AND 255
0719デフォルトの名無しさん
NGNG0720デフォルトの名無しさん
NGNG00000000 00000000 00000000 11111111
ってやつとAND計算すれば、上位3バイトは0になって下位1バイトだけ残る。
といわけで>718が合ってる。
0721711
NGNG。・゚・(ノД`)・゚・。 ありがとうございます。できました。
なぜかOR 255 にしてました。
散々悩んでたのが氷解しました。
本当に感謝です。
0722デフォルトの名無しさん
NGNG>このようにし、テキストボックスをファイルに書き出す事をしています。
チミのソースコードに”ファイルに書き出す”処理は見当たりません。
もう少し日本語勉強してから質問してね(はぁと
0723デフォルトの名無しさん
NGNGあるソフトを自動でクリックしつづけるソフトが作りたいのですが。
人間がではなくVBがマウスをクリックする・・・というのは、どうすればできるでしょうか??
メッセージを送ればいいのかなぁ・・・とも思いますが。
0724デフォルトの名無しさん
NGNGSendMessage
0725デフォルトの名無しさん
NGNGここまで物事が分かってない奴がいるとどうしようもないな。
君はプログラム未経験者かな?
出直してください。
0726デフォルトの名無しさん
NGNG>725は706じゃなくて722のことだよ。
0727デフォルトの名無しさん
NGNG私の興味はASPの組み込みオブジェクトに興味があったのですがそれでも参加することにしました。
COM+2.0の仕様書を見て私は驚愕しました。
すべての言語の境界がなくなり、さらに便利で強力なクラスが膨大に盛り込まれていたのです。
それは後に.NETと名づけられました。
0728デフォルトの名無しさん
NGNG0729デフォルトの名無しさん
NGNGVBバージョン:VB6(SP5)
ADO接続でcsvを読み込み、FlexGridに表示したいのですが、
CN.ConnectionString = "Provider...
CN.Open
strSQL = SQL文
RS.Open strSQL, CN, adOpenStatic, adLockOptimistic, adCmdText
Set FlexGrid.DataSource = RS
↑
この行で「オブジェクト変数またはwithブロック変数が設定されていません」というエラーが出ます。
原因がわかりません・・・。よろしくお願いします。
0730デフォルトの名無しさん
NGNGフォームにイメージがあり、それに画像を読み込むとします。
例えば、プログラムを起動した後、
img1.bmpという画像を読み込んだとします。
読み込んだ画像を、プログラムを終了したときにセーブし、
次回プログラムを起動したときに自動的に読み込むためには
どんな関数を使えばいいでしょうか?
0731デフォルトの名無しさん
NGNG原因は「オブジェクト変数またはwithブロック変数が設定されていません」ってことです。
エラーの発生する行に「オブジェクト変数」がありますよね?
それが空だってことです。
自分が何をどの様に使っているのかを理解しないといけません。
コードだけを教えてもらったり、どっかからコピーしてきただけでは
それを理解することは難しいでしょう。
自分の書いたコードの全ての行の意味を理解しましょう。
0732デフォルトの名無しさん
NGNGマルチうぜー
0733デフォルトの名無しさん
NGNGできました。ありがとうございます。
0734sage
NGNGVBバージョン:VB6(SP5)
メインのプロジェクトより複数の外部EXEファイル(VBで作成)を起動させ、
メインプロジェクト終了と共に、外部EXEを全て終了させたいのですが
どうにもうまくいきません。
APIやレジストリを使えばうまくいくのかもしれませんが、
使ってはいけないとの制限です。(ここらへんは追及しないでください・・・)
色々調べましたが「不可能」という回答もちらほら見かけます・・・。
もし、可能であればご教授願いたく、書き込みしました。
初心者的なことなのかもしれませんが、よろしくお願いします・・・。
0735734
NGNGひさびさに書き込んだらageてしまいました・・・
もうしわけありません・・・。
0736デフォルトの名無しさん
NGNG0737734
NGNG返答ありがとうございます。
Shellで起動してタスクID拾って、メインプロジェクト終了時に
ID調べてSendkey(ALT+F4)とか無理やりやってみたりもしましたが・・・
どうにもできなかったです。(2重起動不可にしてもIDが一意でなくなります)
メインの起動コマンドコントロールをFalseにすれば一意性を保てますが、
外部EXEを単体で終了させると制御が戻ってこないのでFalseのまま・・・
やっぱり不可能なんでしょうか・・・。
0738デフォルトの名無しさん
NGNG0739デフォルトの名無しさん
NGNGそのファイル名をレジストリ、iniファイル、その他任意のファイルに記録するだけ。
0740デフォルトの名無しさん
NGNGあのさ、API使っちゃダメって言ってるけど、そのAPIってのは
何のAPIのことを指している?
0742デフォルトの名無しさん
NGNG0743デフォルトの名無しさん
NGNGWin32APIだけがAPIではありません。
Win32APIを使うな、ということですか?
だとしたらやりたいことは実現できないと思います。
追求しないでと言われていますが、どうしてWin32APIを
使ってはいけないのか知りたいです。
0744デフォルトの名無しさん
NGNGAPI禁止はたぶん宿題かなんかだからだろう。
さてこういうのはどうだ?但し絶対ありえない原始的な方法。
外部EXEではTimerか何かを使って一定時間ごとにある特定のファイルがあるかを調べ、
あれば自分の名前をファイルに書き込み、自分は終了する。
メインプロジェクト側では終了時にその特定のファイル名を持ったファイルを作り、
そのファイルに終了したいプログラムの名前が全て書き込まれるまで待つ。
その後そのファイルを削除し、自分も終了。
0745デフォルトの名無しさん
NGNGいやすぎるな・・・w
0746734
NGNG>>744
するどいご指摘。そんなかんじです。
744さんの方法もおもしろいですね。
でも、根本的になにか間違ってる気がしてきたので、
少し問題について問い詰めてみようと思ってます。
(実際には外部EXEには手を加えない、なので)
お答えくださった方々、ありがとうございました。
0747デフォルトの名無しさん
NGNG<外部EXE-Class1>
Public Sub form_open()
Form1.Show
End Sub
Public Sub form_close()
Unload Form1
End Sub
<呼び出し側>
Private ob As Object
Private Sub Form_Load()
Set ob = CreateObject("Project1.Class1")
End Sub
Private Sub Command1_Click()
Call ob.form_open
End Sub
Private Sub Form_Unload(Cancel As Integer)
Call ob.form_close
End Sub
0748デフォルトの名無しさん
NGNG0749デフォルトの名無しさん
NGNGある条件とは、チェックボックスを用意して、それのチェックで条件が変わります。
例えば、
病気DBがあり、そのDBは、病名フィールドと症状フィールドで1つのレコードとなっており、
チェックボックスは、発熱、頭痛、腹痛、嘔吐、めまい、などの症状があり、チェックされた症状の全てを含む病気レコードを抽出したいのです。
以上のためには、どのようにやる方法があるのでしょうか。
他のところで質問したところ、罵倒を浴びたのでこちらに書かせて頂きます。
0750デフォルトの名無しさん
NGNGVBには、Quick BASICのinkeyに相当する命令ってあるのでしょうか?
例えば、プログラムを実行して、処理の途中で、
画面に"Press any key to continue"と表示して、
何かキーを押すと処理を続けるようにしたいのですが、
VBでも可能でしょうか?
もしわかる方がいたら、教えてください。
お願いします。
0751デフォルトの名無しさん
NGNGDBの形式は何ですか?
0752デフォルトの名無しさん
NGNGClickイベントとかKeyDownイベントでしょうか。
0753749
NGNG0754デフォルトの名無しさん
NGNGどんな罵声を浴びたか知らぬが、1から10まで手取り足取り教えないといけないのか?
本屋にでも行って入門書買いあさってきてくれ
0755デフォルトの名無しさん
NGNG0756749
NGNG例として書いてあるのは、チェックボックスが2つとかで、
if使ってどちらかが…て感じだから使えないし。。。
だから、ヒントだけでもと思って質問してみました。
0757デフォルトの名無しさん
NGNGそうか。あなたにプログラムの才能が無いのはよくわかりました。
近くにソフト会社は無いのですか?そちらに作成してもらって下さい。
0758749
NGNGあなたのおっしゃるソフト会社に入る為に勉強をしているんです。
何か良い本とかサイトとかヒントとか教えていただけないでしょうか?
0759デフォルトの名無しさん
NGNG適当にがんばってくれ。
0760デフォルトの名無しさん
NGNGADOでAccessファイルを読み込む
SQL文で任意のレコードを抽出
てな辺りを調べてみるとか。
0761749
NGNGただ、今回作っているものは毎回条件が変わるので、そうするとどうすればいいのかわからないんです。
0762デフォルトの名無しさん
NGNGありがとうございます。
参考書があっても、どこを見たらいいのかわからない状態だったので、
とても助かりました。
0763デフォルトの名無しさん
NGNGWHERE条件がわからんの?
チェックされてる時だけ AND 症状 でつなぐ。
0764749
NGNGとりあえず、一つの条件で抽出する時は
Main.rscmdMaster.Filter = "症状 like *頭痛*"
って感じに書いたんですけど、、、
チェックされてる時だけっていうのは、
If Check1.Value = 1 Then
ってのから書き始めるんですか?
0765デフォルトの名無しさん
NGNGそんな感じ
0766749
NGNGいやぁ、実はここまではもう行き着いてたんですが、この先がわからないんです。
If Check1.Value = 1 Then
Main.rscmdMaster.Filter = "症状 like *頭痛*"
End If
If Check2.Value = 1 Then
Main.rscmdMaster.Filter = "症状 like *発熱*"
End If
じゃできないですし、入れ子にしても駄目でしたし、、、
0767デフォルトの名無しさん
NGNGs = s & "a"
s = s & "b"
ってな感じで出来るで。
0768デフォルトの名無しさん
NGNG"OR 症状"
でつながないと駄目だ。
0769749
NGNG本当にありがとうございました。
何か出来そうです。
ありがとうございましたm(_ _)m
0770749
NGNGまた新たな問題が…
If Check1.Value = 1 Then
Ref = Ref & "症状 like '*頭痛*' and "
End If
If Check2.Value = 1 Then
Ref = Ref & "症状 like '*発熱*' and "
End If
Ref = Replace(Ref, " and ", "")
deMain.rscmdMaster.Filter = Ref
このように記述したところ、
チェックボックスを1つチェックしただけならきちんと抽出出来るのですが、
2つチェックするとエラーが出ます。
どこが間違ってるのでしょうか?
0771デフォルトの名無しさん
NGNGエラーならエラーメッセージくらい書け
質問するのはもう少しVBの基本的な使い方覚えてからにしたほうがいい
疑問が出るたびにここで質問するつもりか?
0772749
NGNGすいません。
エラーは、「引数が間違った型、許容範囲外、または競合しています。」です。
これって、基本的な間違いをしてるんですか?
0773749
NGNG実行時エラー 3001 です。
度々すいません。
0774デフォルトの名無しさん
NGNGちっとは自分で考えろ。
人をあてにするな。
0775デフォルトの名無しさん
NGNGデバッグの仕方覚えた方がいいよ
0776デフォルトの名無しさん
NGNG何の為に" and"を削除してる?
0777749
NGNG必要なところまで修正・削除してました。
これが正しいやつです。
Ref = Ref & """" '先頭に「"」を入れる
If Check1.Value = 1 Then
Ref = Ref & "症状 like '*頭痛*' and "
End If
If Check2.Value = 1 Then
Ref = Ref & "症状 like '*発熱*' and "
End If
Ref = Ref & """" '最後にに「"」を入れる
Ref = Replace(Ref, " and """, """") '最後のandを削除(「 and "」 を「"」に置換)
deMain.rscmdMaster.Filter = Ref
771さんのおっしゃるとおり基本的なことが出来てませんでした。
すいませんでした。
0778デフォルトの名無しさん
NGNG0779デフォルトの名無しさん
NGNGいや、別にあなたのような人には聞いてないのですが。
そんな不快ならあなたが書き込まなければ済む話でしょ?
脳みそは少なめのようですね。
0780デフォルトの名無しさん
NGNGあなたが解答すれば済む話でしょ?
脳みそは少なめのようですね。
0781デフォルトの名無しさん
NGNG0782デフォルトの名無しさん
NGNG0783デフォルトの名無しさん
NGNG0784デフォルトの名無しさん
NGNGぐぐってみまましたがあるようでないみたいです
できれば、ツリードライブ検索でネットワーク対応があれば最高です
お願いします
0785デフォルトの名無しさん
NGNG0786デフォルトの名無しさん
NGNGでもって、ぐぐったらやまほど出てくるから。もっかい探せ。
…そのまえに、MSDNにもばっちりかいてあるとおもうぞ。
0787デフォルトの名無しさん
NGNGキーワードください
0788デフォルトの名無しさん
NGNGOSは2000SP4
昨日からプログラム始めましたよろしくお願いします。
コマンドボタンのCaptionをLabel.Alignment=0のように左揃いで出したいのですが
そのプロパティがないのでできません。(自動で中央揃いのみ?)
なんとかできませんか?デカいボタンが好きなんです。
0789デフォルトの名無しさん
NGNG台詞の右側に適当に空白つっこんだらだめかね?
解決じゃなくて、回避だけど。これじゃ。
サイズ変更なんかしないんだから、これでいんじゃない?
0790784
NGNGそんなんじゃない。もっと高機能つーかツリー系のやつ
たぶんCreateObject("????.SEHLL") ← こんな感じでつかえた
過去に使ったけど忘れたからきーてるワケ
0791デフォルトの名無しさん
NGNGSHxx系のAPIを調べる。
あとは自分でどうにかしろ。
0792788
NGNGレスありがとうございます。
しかし、Capitionの内容はLogの状況でころころ変わり、
ウィンドウサイズを変更するとそれに合わせて
目的のコマンドボタンの幅も変わるようになってるので
(できるだけボタンを大きく取りたい)
適当な空白数を計算する策は私にとっては難しいです・・、どうかよろしくお願いします
0793デフォルトの名無しさん
NGNGなんで質問してるのにそんなえらそーなん?
だから、普通にぐぐれば見つかるから探せよ。
高機能でツリーな奴もAPIで一発だろ。そのままずばりを解説したHPもあります。
てめーがサーチ能力もないクズだからみつからねぇワケ。
0794初めて4日目の名無しさん
NGNGお願いします><
0795デフォルトの名無しさん
NGNGつか、こんなとこでうだうだやってる間にまじめに探せばみつかるんじゃ、あほがぁぁ
SHGetPathFromIDListA
これくれてやるから、とっととうせろ、この、くれくれたこらふぇちやろうがぁぁ。
0796デフォルトの名無しさん
NGNG>795に任せりゃケツに答えを突っ込んでくれる!
0797デフォルトの名無しさん
NGNGなろほろ、そういう用途なら、決めうちではいかんですな。
んじゃ、ひたらす回避路線ですが、コマンドボタンの上にラベルのっけたらだめなの?
0798デフォルトの名無しさん
NGNG正直、やめといたほうがいい。
ダイアログを自作しちゃったほうがマシにも思える。
0799デフォルトの名無しさん
NGNG危ないおもちゃを与えてしまった気分満タン。
0800デフォルトの名無しさん
NGNGボタンの上にラベルって乗っかるか?
>>792
コマンドボタンのキャプションが変わるっつーインターフェイスに疑問があるが・・・
イメージBOX&ラベルで無理やりつくるか
ピクチャBOXで作るかじゃだめなのか?
0801デフォルトの名無しさん
NGNG君ごときが人に何か与えられるなんて思い上がらない方がいいよ。
0802デフォルトの名無しさん
NGNGしかし、再配布できるDBエンジンって何があるのかがわからないのですが、どなたか詳しい方は、教えていただけないでしょうか?
ちなみに、現在、"Microsoft DAO3.6 Object Library" が参照されていますが、これは再配布できなかったように思います。
また、これ以降(.net)には、再配布可能なDBエンジンはついているのでしょうか?
#・・・データベースを使ったソフトを作る場合って、どうするのが一般的なんだろうか・・・
0803デフォルトの名無しさん
NGNGやってみた。どうあっても後ろに引っ込むな。だめだこりゃ。すまんかった。
0804デフォルトの名無しさん
NGNGDAO=JETデータベースエンジン=MDBファイルは再配布可能。
あと、MSDEも再配布可能・・・だけどインストール先に十二分以上に確認しないと文句言われます。
(SQLServerそのものですから重い)
0805デフォルトの名無しさん
NGNGなんだこれ?
0806デフォルトの名無しさん
NGNG馬鹿は無視しろ。
0807デフォルトの名無しさん
NGNGDAOは3.5も3.6も再配布可能なパッケージがあるから探せ。
細かいVer.とかサブセット版もあるから注意しろ。
国内サイトじゃほとんどないから海外サイト探せ。
それがダメならADOで組み直せ。
ADOならMDAC入れりゃいいから問題なかろう(MS純正・再配布可能だし)
あと肝心のDBの種類が書いてない。それに依存する話なら上記は忘れろ。
>788
まずFormのサイズに合わせてCommandButtonのサイズも変わるというクソな仕様を止めろ。
止められないなら見えない場所にLabelを貼って、AutoSizeをTrueにしろ。
それでLabelのCaptionに適当な文字列ブチ込みゃWidthが文字列に合わせて変わるから、
その数値を元にCommandButtonの幅なりCaptionに突っ込むスペースなり適当に計算しろ。
0808784
NGNGSHGetPathFromIDListA
ほんとはVBなんでオートメーション系をきぼんぬだったが
T H X!
0809802
NGNG>>807
ありがとうございました。
ソフトウェアは、これから作るので、データベースの種類は、これ、っていうのはないんです。
ソフトをインストールするだけで、すぐに使えるようにしたいので、自作ソフトと一緒にデータベース関係のファイルを再配布したいのです。
で、一応、血眼になってぐぐってみたのですが、
http://support.microsoft.com/?scid=kb;ja;233002&spid=3042&sid=global
こんなのが見つかりました。
これを読む限りでは、dao3.6 + jet4.0 は再配布しても良いように思えるのですが、Microsoft Visual Studio6.0 ユーザーに対するものなのか、今一つわかりません。
0810デフォルトの名無しさん
NGNGまあまあ、このスレのレベルじゃ期待通りのものが出てくる
ことはあまりないから。
0811デフォルトの名無しさん
NGNG0812デフォルトの名無しさん
NGNGこらお前ら、飲んでたほっとレモン
キーボードに吹いちまったじゃねーかw
0813デフォルトの名無しさん
NGNGVBで作ったフォームからキーボードイベントは拾えるのですけど、他のアプリから
拾う方法がわかりませんでした。
どなたかヒントください。宜しく御願い致します。
0814デフォルトの名無しさん
NGNG807だ。
これから作るにしてもDBの種類ぐらい決めておかないとそのうち質問すら出来なくなるぞ。
で、DAOとJETは再配布してもよい。MDACもだ。でなけりゃMSのサイトからDownload出来る訳がなかろう。
俺が書いたDAOは、このページに書いてあるDLL単体じゃなく、インストーラ付きの
エンドユーザ向けランタイムパッケージだ。必ずあるから死ぬ気で探せ。
でだ、DAOにしろJETにしろMDACにしろ、いずれかのDBエンジンはOSによって
最初から入ってる/入ってない、もしくは入ってるVer.の違いというものがある。
例えばMDBの場合、Win2k以降ならMDACを入れなくてもADOなら動く(ただしMDACのVer.は古い)
そこらへんキッチリ調べておかないと、ユーザに古いDBエンジンを上書きインストールさせる羽目になるぞ。
0815814
NGNG0816804
NGNGだから、DBMSとして、JETでもMSDEでもただで手に入るんだって。
JETは2000前のACCESSのDBMSそのもの。
MSDEは制限つきのSQLServer。
上記に対するミドルウェアとして、DAOでもRDOでもADOでもVBを持っていて、
そこからインストーラーを作成してれば再配布可能。
0817デフォルトの名無しさん
NGNGフォルダなのかを判別するにはどうしたらいいでしょうか?
Dir関数の使用例に
'ビット単位の比較を行い、フォルダかどうかを調べます。
If (GetAttr(Path$) And vbDirectory) = vbDirectory Then Msgbox "これはフォルダです"
のようなものがあるのですが、これを使ってみるとなぜかフルパス中に半角スペースが含まれているとエラーになります。
Path$ = """" & Path$ & """"
と入れてみましたがやはりエラーになります。
0818817
NGNG0819デフォルトの名無しさん
NGNG特にエラーは出なかったが、どんなエラーだ?
0820817
NGNGえぇ、そんなはずは・・・、と思ってもう一度ソースを見てみたら
判別する前の状態で半角スペースがあるときは["]を付加してありました。
それを取り除けばできました。
申し訳ないです orz
0821デフォルトの名無しさん
NGNG>815
お前は誰だ?(w
0822デフォルトの名無しさん
NGNG0823デフォルトの名無しさん
NGNGちゃんと書かれている。TXTを読めばわかる。
0824デフォルトの名無しさん
NGNG使用範囲を広げた再頒布可能コードってどういうことですか?
TABCTL32.OCXなんですけど。
0825デフォルトの名無しさん
NGNGまあまあ、その質問の仕方じゃ回答があっただけでも奇跡と思えって話だぞ。
回答の催促に情報小出しつつもらった回答への難癖とぎりぎりまでお礼なし。
しかも、一番最後に「本当は○○がほしかった」おっしゃられる。
最初にそれ言えば一発じゃんよ。
調べるのにつきあってたやつ乙。
0826802
NGNGdao3.6 + jet4.0
で行こうと思います。
ありがとうございました。
0827784
NGNG仕切りなおしたいと思います
オートメーションで呼び出せる「ファイル選択ダイアログ」はないでしょうか?
よろしくお願いします
0828デフォルトの名無しさん
NGNG>827
おもしろそうだからオレもまぜてクレ
Windowsのエクスプローラーのようなダイアログがほしいのか?
とりあえずツリー型のサンプルとか投下してみるテスツ
ttp://www.mvps.org/btmtz/vbexplorer/
0829デフォルトの名無しさん
NGNG0830デフォルトの名無しさん
NGNG0831デフォルトの名無しさん
NGNGまあ、IEインストールで入れられるActiveXでその類があったように思うけど、自分で調べろって感じかな?
SHxxxのAPIのHPとかを見ていったり、そこでのキーワードで再度グーグルしたりすれば、たどり着いたような薄い記憶はある。
まあ、環境限定がAPIの場合より厳しいので使わなかったからうろ覚えだけど。
0833822
NGNG中間のspで再配布可能となったと思われるファイルについては何も分からないけど
どこで分かるのか、ね。
0834デフォルトの名無しさん
NGNGVBのヘルプを再配布とかインストーラをキーに検索して、その辺りを兎に角読む。
0835デフォルトの名無しさん
NGNGSendMessage
0836デフォルトの名無しさん
NGNG中間のSPのredist.txtを入手して読む。
あるいは>>834
なにか、最近もらった回答に難癖つけるような物言いする人が多いのね。
0837784
NGNGちゃんとメッセージまでかかんとわからんだろ?
コマンドボタンに左寄せがないって言ってる椰子にSDKレベルで(ry
いやがらせか?
0838デフォルトの名無しさん
NGNG0839デフォルトの名無しさん
NGNG回答が役に立たたなかったら、率直に伝えた方がよいでしょ。
0840デフォルトの名無しさん
NGNG難癖つけるような物言い。
言い方があるでしょってお話し。
役にたたなかったら、役に立たないということは正常かと。
0841デフォルトの名無しさん
NGNGSQLに、VBA関数を使ったクエリを表示しようとすると
実行時エラー '-2147217900 (80040e14)'
式に未定義関数 '関数名' があります
という、エラーが返ります。
このエラーの対処法を教えていただけないでしょうか?
0842デフォルトの名無しさん
NGNGそれだけじゃ何も分かりません。
0843デフォルトの名無しさん
NGNGAccessで慣れると必ずやるんだよな、これ。
対処方法? VBAの関数を使わないクエリにするしかない。
(この場合、DAOでもVBAの関数は使えない)
でなければ、素直にAccessで作る。
要件(規模含む)次第だが、この場合、VBを使わないでAccessを
使った方が生産性高いかもな。(どちらも長短がね)
0844デフォルトの名無しさん
NGNGお返事ありがとうございます。
つまり、外部からaccessのクエリを利用するには、
そのSQL分は、標準のSQL関数しか使えないという事でいいでしょうか?
別の実装方法を考えたいと思います。
ありがとうございました。
0845813
NGNG0846デフォルトの名無しさん
NGNGshellを使って、バッチファイルを呼び出しているのですが、うまくいきません。
バッチファイル内部では別のプログラムを呼び出していて、そのバッチファイルを
ダブルクリックで起動した場合は、正常に動くのに対して、
VBから呼び出した場合に、エラーを吐き出し、正常に終了しません。
Dim path As Variant
Dim procID As Variant
Dim cmd As Variant
path = batPath.Caption '実行するバッチファイル格納場所
procID = ID_param.Text '実行パラメータ
cmd = cmd & path & " " & procID
Shell (cmd), vbNormalFocus
プログラムは現在このようになっています。
バッチのエラーから、おそらくVBでのバッチ実行時のパスに問題があるのではないかと
思うのですが、なにか、対処法ありますでしょうか?
0847デフォルトの名無しさん
NGNGできればエラーの内容を書いてほしいんだけど…。
バッチファイルのパスに空白が含まれているのかも。
試しに path の前後を二重引用符で囲んでみよう。
あと、cmd = cmd & path & " " & procID となってるけど、
cmd は元々空白だから cmd = path & " " & procID
と同じことだよね。これは意図通りなのだろうか。
たぶん問題なかったと思うけど
バッチファイルを Shell 関数に直接渡して実行できるんだっけ?
0848デフォルトの名無しさん
NGNGこうじゃないの?
Shell (cmd), vbNormalFocus → Shell (cmd, vbNormalFocus)
0849デフォルトの名無しさん
NGNG2.cmd.exe?comか忘れたが、UNIXとかでいうところのShellに引数を与える形式
コマンドプロンプトで CMD /? を実行してみればわかると思う。
Shellに渡すコマンドは・・・。
CMD バッチフルパス オプション
でいけると思う。
細かい部分は自分で試してください。
0850デフォルトの名無しさん
NGNGフロントエンドのユーザインタフェースはVBで。
バックエンドのサーバ側はJavaで。
という例を見たのですが、こういうのって最近多いのでしょうか。
VB単体、Java単体で動かすのは理解できるのですが、これらの連携というのがイマイチイメージできません。
VB側からJavaを呼ぶって具体的にどうやるのでしょう?
サンプルのコードなんかがあるサイトを教えて下さい。
0851デフォルトの名無しさん
NGNG良くあるかはしらんが、普通に昔から三階層風に作ることはある。
サーバー側C言語で、クライアント、サーバー間はソケット。
サーバ側は管理プロセスが通信の送受信とその受信したデータのサーバ側プロセス(スレッド)への割り振りを行う。
同じように単にJAVAにしてるだけじゃないの?
上記の管理プロセスは1プロジェクトで作るには豪華すぎるから、売ってるものもあるはず。
(タキシードとかってこの類でしたっけ?)
0852デフォルトの名無しさん
NGNGVBからJAVAよんでるって発想するとどつぼにはまるかもね。
>>851さんが書いてくれてるように、
単純に二つのアプリケーション(フロントエンド・バックエンド)がプロセス間通信してるだけだよ。
ソケットでも、ファイルでも、介在するものはなんでもいいんだけど。
たぶん、VBからJAVA、あるいは、JAVAからVBに制御はかけてないと思われ。
0853850
NGNGVB+COMで作る3階層C/Sみたいな仕組みが用意されているのかと思ってました。
0854デフォルトの名無しさん
NGNGこの人本当に分かったのか疑問。
0855デフォルトの名無しさん
NGNGiif関数
iif(A,B,C)Aが真の場合B,Cを実行する
しかし結果はB
0856デフォルトの名無しさん
NGNG何が問題なんだ?
IIF関数のTrueパートとFalseパートが両方評価されることはバグではなく仕様で明記されてるし。
0857デフォルトの名無しさん
NGNG0858デフォルトの名無しさん
NGNG彼は何をバグと思って、どのような結果が正常だと思ってるんだろうか。
0859デフォルトの名無しさん
NGNGまずお前の日本語をどうにかしろ。
0860デフォルトの名無しさん
NGNGDir("path\*.*")で、指定したパスに存在する最初のファイル名が得られ、
その後Dir("")を繰り返すと続きのファイル名が得られる。
それはいいとして、、、
どうやら、Dir("path\*.*")はFindFirstFileで
Dir("")はFindNextFileに相当するらしい。
で、Dir("")の戻り値が "" だった場合、
自動的にFindCloseが呼ばれてるらしい。
そのため、Dir("path\*.*")だけを繰り返し実行していると
FindCloseされず、ハンドルがどんどんリークしてしまう。
昔このせいでハマったことがあった。
とりあえずFind〜系のAPIを直接呼ぶことで回避した。
これって有名な話? VB6.0ではどうなのかな。
0861デフォルトの名無しさん
NGNGVB6でAPIMonitor使ってみてみたけど、
一回目は開いていないから当然FindCloseはしないとして、
二回目からは前のをFindCloseしているようだよ。
0862861
NGNG見てみたけど、それも二回目からはFindCloseしているよ。
ちなみに、使ったAPIMonitorはこれ。
http://www.rohitab.com/apimonitor/
0863デフォルトの名無しさん
NGNGうおっ、レスはやっ。
そうか、VB6では問題ないのか。あの頃VB6があれば…。
あと、おかげさまでAPI Monitorの存在を知りました。
今まで自分でAPIフックのコードを書いていたよ…。orz
0864860
NGNGで、手元にあったVB5.0 SP3で早速試してみたら、
ちゃんとFindCloseしてるじゃん!!
あの当時リークがあったのは間違いないので
SPを当てていないバージョンだったのか、それともVB4だったのか…。
なんにせよ、少なくともSPを当てていれば問題ないようなので
>>860は忘れてください。>ALL
なんか釣り師みたいになっちゃったな…。
0865デフォルトの名無しさん
NGNGVB5では INT(100@/1@) がIDE/P-Codeでは100、ネイティブでは99となる。
VB6ではどっちも100。
どっかの掲示板で知って開発環境か実行環境かの判断につかったことがある。
(もちろんジョークでだが)
0866デフォルトの名無しさん
NGNG詳しく!
なにか問題あるの?
Aが真ならBを
偽ならCを返すんじゃないの?
0867デフォルトの名無しさん
NGNG他の言語とは動きが違うってこったろ
Aが真ならBだけを実行すればいいのにCまで実行するのは
男の仕様だよな
0868デフォルトの名無しさん
NGNG醜くなるから漏れは使わないのもあるのだが・・・・
0869デフォルトの名無しさん
NGNG0870855
NGNGヘルプもろくによんでませんでした、てへ
ごめんね、つりじゃないよ
>動作で遅くなるの判ってるから殆どの香具師がIIF使わないんじゃないのか・・・
すきか嫌いかで言うと俺は
IF
処理
ELSE
処理
END IF
↑嫌い
IF 処理 THEN 処理
↑好き
ついでに三項演算子みたいなのもすきだイテレータはこのんで使う主義
0871デフォルトの名無しさん
NGNGAND条件を羅列するときに、既に条件があればANDをつけるとか。
WHERE A AND B AND C とかで、 WHERE以降のABCがアリ無しあるとき。
IF A <> "" THEN
hoge = IIF(hoge <> "", " AND " , "") & SQL条件文
ENDIF
一々IFで書くよ可読性が悪い。 A<>""もIIFでかけるけど、それをやるとIIFが二重になるから避けてる。
0872855
NGNGなるほど、おいらはIIF関数の使いどころがずれていたみたいだね
IF文の代用に使っていたから.......
さすがにおいらもIIFの入れ子はしないさ
0873デフォルトの名無しさん
NGNG兎に角、両方が評価されるという仕様をきちんと理解してれば問題なし。
0874デフォルトの名無しさん
NGNG無駄な計算をする。
Private Sub Form_Load()
Dim a As Long, b As Long, c As Long
a = 5
b = 2
c = IIf(a > b, a, Test(a))
End Sub
Private Function Test(c As Integer)
Debug.Print "通過"
End Function
0875デフォルトの名無しさん
NGNGだから、IIF関数のもっとも基本的な仕様に関して、それを言ってどうするの?
そもそも最初の人の無知が始まりだけどさ。
0876デフォルトの名無しさん
NGNGMDI親フォームの背景に画像を並べて表示をする事は可能なのですか?
一枚の大きい画像を表示するのはPictureプロパティにセットすれば良いと
いうのは分かるのですが、小さい画像をパネル状に並べる事は出来るのでしょうか?
開発環境は
OSはWinXp Pro VB6.0のSP4という環境です
方法等分かる方、よろしくお願いします
0877デフォルトの名無しさん
NGNGブラシ
0878デフォルトの名無しさん
NGNGブラシというのは、gdi32APIを使うと言うことでしょうか?
以前に、単色で塗りつぶしには使った事があるのですが
外部のビットマップファイルを読込んで使えると言うことですか?
0879786
NGNGプゲラまたいやがらせだな
>878
並べて表示の機能を使う
0880デフォルトの名無しさん
NGNGとするとある時とつぜんIDXと大文字になるんです
idxは予約語かなにかでしょうか?
0881デフォルトの名無しさん
NGNGえっ、ブラシでというのはデマなのですか?
並べて表示というのはどうやるのでしょうか?
詳しいやり方などを教えていただけるとありがたいです
0882786
NGNGデマかどうか知らんが>ブラシの一言で何か分かったかどうか疑問
結局>881がじらされて面白がってるだけだと 思うよ
フォームをブラウザビューにしてHTMLで並べて画像の表示すれば
いいんじゃないかと思うがどうかなぁ
0883デフォルトの名無しさん
NGNGどこか他の場所ですでに大文字のIDXという変数が宣言されているのでは。
0884デフォルトの名無しさん
NGNGVBAなんかから関数を呼び出す場合、foo(arg1, arg2,..)とか書く場合と
foo arg1, arg2, ...とか()を書かない場合がある気がしますが、何の
違いがあるのでしょうか?
0885デフォルトの名無しさん
NGNG0887デフォルトの名無しさん
NGNGCallステートメントの説明読めば理由が分かるよ。
0888デフォルトの名無しさん
NGNGいや、確かそうとも言い切れないケースがあったはす。
確か参照渡しの引数を一つ取る関数を括弧をつけて呼び出すと、
括弧をつけたことにより変数の参照ではなく値が渡されてしまい
期待するのと違う結果になる、みたいな話だと思ったが。。
VBに限らないけど、プログラミング言語ってちょっと触ってないと
どんどん忘れていくな。
0889デフォルトの名無しさん
NGNG0890デフォルトの名無しさん
NGNGExcelのIF関数と同じと思えばいいのかな?
0891デフォルトの名無しさん
NGNGMsgBox "hoge"
MsgBox "hoge", vbOkOnly
MsgBox ("hoge") ←───
MsgBox ("hoge"), (vbOkOnly)
括弧をつける
Call MsgBox("hoge")
n = MsgBox("hoge", vbYesNo)
n = MsgBox(("hoge"), (vbYesNo))
0892デフォルトの名無しさん
NGNGWHERE句の最初に必ず満たす条件を
つけとけば判定1回づつで済まない?
例:
strSQL = "SELECT * FROM TABLE"
strSQL = strSQL & " WHERE 1 = 1"
If A <> "" Then
strSQL = strSQL & " AND " & SQL条件文1
End If
If B <> "" Then
strSQL = strSQL & " AND " & SQL条件文2
End If
0893デフォルトの名無しさん
NGNGIIf(x = 0, 0, 1 / x)
みたいな書き方ができなくて不便でもある。
0894デフォルトの名無しさん
NGNGなんでできないの?
0895893
NGNG上で散々話題になってるじゃん。
IIf って結局ただの引数が3つの関数だから、
関数に値が渡されるときに x = 0 のときでも、1 / x まで評価されて
0 除算エラーになってしまう。
0896デフォルトの名無しさん
NGNGSQL文に余計な条件をつけることで、万が一にパフォーマンス等に影響があったら論外なのでパス。
完全なプログラマ都合じゃん 1=1なんて。
0897デフォルトの名無しさん
NGNGc:\test\test.txtのように入力したときとかです
0898デフォルトの名無しさん
NGNGどうすればいいのでしょうか?
0899デフォルトの名無しさん
NGNGInstrRevで一番右の¥位置を取って、それより左をフォルダパスとして保持。
Dir関数で第二パラメータにvbDirectoryかなんか指定。
>>898
数値は何の値?秒数?文字列?(500は500秒?、5:00?)
0900デフォルトの名無しさん
NGNGすいません。秒数です。
0901デフォルトの名無しさん
NGNG0902デフォルトの名無しさん
NGNGありがとうございます。
0903デフォルトの名無しさん
NGNGありがとうございまた
0904デフォルトの名無しさん
NGNG思っていますが妥当でしょうか?アドバイスよろしくお願いします
<次の文字列は右のように変換する>
MLdbdata(hDBProc, 1) -> rs1.Field(0).value
MLdbdata(hDBProc2, 10) -> rs2.Field(9).value
法則1hDBProcはrs1に読み替える
法則2hDBProc1,10の10は常に-1する
0905デフォルトの名無しさん
NGNGすでにVBの話じゃないよな? 妥当? 好きなようにやればいい。
0906904
NGNGわかった。ありがとう
秀丸板さがします
0907デフォルトの名無しさん
NGNG解雇
0908デフォルトの名無しさん
NGNG0909デフォルトの名無しさん
NGNG注意すべきことってありますか?
0910デフォルトの名無しさん
NGNGSQL="Table Exist('NorthWind')"
conn.execute(SQL)
みたいなものだと予想してます
0911デフォルトの名無しさん
NGNGえ?
0912デフォルトの名無しさん
NGNGADOXを使うとか。
ADODB.ConnectionオブジェクトのOpenSchemaメソッドを使うとか。
0913デフォルトの名無しさん
NGNGConst adSchemaTables = 20
rc = conn.openschema(adSchemaTables)
で、データベース内のいくつものテーブル名はコレクションとしてとりだされるから
rc("TABLE_NAME").valueをさらにFor EachとかDo whileで1個ずつとりだせた。
do until rc.eof
S+=rc("table_name").value
rc.movenext
loop
debug.print S
0914デフォルトの名無しさん
NGNGさすが
0915デフォルトの名無しさん
NGNGVBのバージョンは?マルチスレッドの実現方法は?
0916デフォルトの名無しさん
NGNGVB6.0で、実を言うとマルチスレッドと言うか、1つは
DLLからのコールバック関数で、もう1つはタイマーイベント
なんです。そもそもこれってマルチスレッドって言うんですかね。
0917デフォルトの名無しさん
NGNGスレッドのIDを表示させてみたら分かる。
0918デフォルトの名無しさん
NGNG開発環境はOKで、コンパイルするとNGってパターンじゃない?
そもそもVB6は普通のマルチスレッドには対応してなかったと思う。
「動く時はある」だろうけど、やっちゃいけないことではないかと。
0919デフォルトの名無しさん
NGNGあと、PCDNとかでサンプルあるかもしれん。
マルチスレッド、出来る出来ないは出来る。でも、わざわざVBでやらんほうがいい。
0920デフォルトの名無しさん
NGNGタイマ使ったらそれだけでマルチスレッドではないの?
0921デフォルトの名無しさん
NGNGだいぶ違うと思うぞ
0922デフォルトの名無しさん
NGNGマジで。タイマーたくさん作ったらそれぞれ別スレッドで動いてると思ってた。
0923デフォルトの名無しさん
NGNGそれと、VBのDoEventsと、一般基礎知識としてのプロセスとスレッドの勉強。
0924デフォルトの名無しさん
NGNGそかー。サンクス
0925デフォルトの名無しさん
NGNGだから、スレッドのIDを表示させてみろって。
0926デフォルトの名無しさん
NGNGどうやるの?
0927デフォルトの名無しさん
NGNGGetCurrentThreadId
> 解説
> スレッド ID は、そのスレッドが終了するまで、システム上でユニークな(一意の)値となります。
0928デフォルトの名無しさん
NGNGありがとう。確かに一緒でした。
0929デフォルトの名無しさん
NGNGDLLからのコールバックはスレッドIDが別でした。
というのもDLL内でスレッドを起動しているので当たり前なのですが・・・
というわけでやはりマルチスレッドなのですが、グローバル
変数を読み書きする際に注意する点はあるでしょうか。
0930デフォルトの名無しさん
NGNG>923。
質問が漠然としすぎ。
0931デフォルトの名無しさん
NGNGマルチスレッドは、複数の処理が同時に進行する。
例えばグローバル変数を G、ローカル変数を L とするとき、
L=G
L=L+1
G=L
が2つのスレッドで同時に処理されたとしたら、Gの最終的な値は保証できない。
(2人の人間に上記の処理をさせたことを想像してみるといい)
簡単な指針としては、グローバル変数の値を変更するときは
InterlockedIncrement 等の Interlocked 系 API を使う。
処理が複雑で、これらの API を適用できないときは
処理の前後を EnterCriticalSection と LeaveCriticalSection で囲む。
パフォーマンス低下やデッドロックにならないよう使い方に注意すること。
0932931
NGNG0933デフォルトの名無しさん
NGNGありがとうございます。InterlockedExchangeでうまくできそうです。
>932
色々事情がありまして・・・
とにかくありがとうございました。
0934デフォルトの名無しさん
NGNG書き込み、読み込みをしたいのですが、これで書き込みしたのを読み込みできません。なぜでしょうか?
Sub failsave()
Open "c:\back.bin" For Random As #1 Len = LenB(idata(1, 1))
For i = 0 To 30
For j = 0 To 30
k = 1
temp = idata(i, j)
Put #1, k, temp
k = k + 1
Next j
Next i
Close #1
End Sub
0935デフォルトの名無しさん
NGNGプログラミング以前だね。
まず人に読んで理解してもらえるよう文章を推敲することを覚えるべきだ。
そういうの「片手落ち」って言うんだよ。
0936デフォルトの名無しさん
NGNG0937デフォルトの名無しさん
NGNG読み込みが失敗してるなら、
読み込み部分も提示しなきゃどうしようもねぇだろ。
エラーがでてるのかどうなのかも書いてないしな。
っていうか、Option Explicit入れてエラーが出ないコードにしてから
出直して来いって感じだな。(たぶんその辺じゃないかと思うけどさ)
片手落ちっていうか9割落ちだな。必要な情報が1割もねぇ。
0938デフォルトの名無しさん
NGNGkが1づつ増えないといけないのに、
k=1の位置がおかしなとこにあるから
kが1,2を交互に繰り返してしまいました_| ̄|○
ご迷惑おかけして申し訳ありませんm(_ _)m
0939デフォルトの名無しさん
NGNGstdoleのIPictureやらIUnknownの型を扱ってるんだが、
コイツらはオブジェクトではないのか?
IsObjectでfalseが返ってきちまう。
0940デフォルトの名無しさん
NGNGMSDN読めばきっちり書いてあるんだが。
商の結果が整数か浮動小数点数か、の違いだ。
0941デフォルトの名無しさん
NGNG>そういうの「片手落ち」って言うんだよ。
いや、違うと思います。
0942デフォルトの名無しさん
NGNG次どぞー
0943デフォルトの名無しさん
NGNGオイラじゃ ムリぽ(^^;
VB6で、システムにフォントをインストールしてやるにはどうすれば良いのだ?
大抵、フォントの追加って、
[コントロールパネル]→[フォント]で、
フォントファイルをドラッグか[メニュー]→[フォントのインストール]をしてやれば、
自動的にインストール始まるよな。
そのインストール作業をVBからさせたいらしいのだが
どうにも方法が、いまいち分からんのだと。
単なるフォントフォルダ取得してフォントファイルのコピー&ペーストじゃ
当然ダメだっつーことは分かった。
フォント専用のインストーラでもあるんかいな?
0944デフォルトの名無しさん
NGNGコピペでいいんじゃないのか?
0945デフォルトの名無しさん
NGNGコピーした後、レジストリのHKLM\Software\Microsoft\Windows\Fonts
(NT系だとWindowsNTだった気がする)に直接書き込め。
0946945
NGNG書き込んでください。の間違いです。
0947デフォルトの名無しさん
NGNGフォント自体にもライセンスあるから、コピーにはご注意を。
0948デフォルトの名無しさん
NGNGおまえいい奴なのかそうじゃないのかどっちだ?
ただのおちゃめさんな気もしないではないが。
0949デフォルトの名無しさん
NGNG切り出すコードを書こうとしたのですが、読み込みの段階で躓きました。
ファイルを全部メモリに読み込んでから処理しようとすると
配列がデカくなりすぎて、ReDim時にエラーが出るのです。
そこで、ファイルを分割して読み込もうと考えたのですが
Open関数でファイルを開く際、特定のbyte数から
読み込みを開始する方法は無いでしょうか?
0950デフォルトの名無しさん
NGNGそのままずばり、オープンモードの使い分けってのが、
Open関数のMSDNヘルプからたどれるとこにあるから、参考にするといいかと。
やりたいことに対するアプローチの仕方はまちがってない、そのままがんばれー。
0951デフォルトの名無しさん
NGNG2GBを頭から馬鹿みたいに舐めたらあかんぜよ。
パターンマッチングに絶対の正解はないですから。
あれば誰も検索速度を競わない。
中のデータとか、こっちの探す元パターンとかで最善のやり方が異なりますんで。
0952デフォルトの名無しさん
NGNGありますか?
まさに実行中のソースコードにずばりブレイクポイント張りたいんですが....
0953デフォルトの名無しさん
NGNG実行中ならブレイクポイント張らずに、いきなり止めたい場所で中断したらだめなの?
0954デフォルトの名無しさん
NGNG中断の操作方法はどうやるんですか?
0955954
NGNG何か間違ってますでしょうか...
0956デフォルトの名無しさん
NGNG一つのCSVファイルに数千行のデーターが入っているのですが、
これを一行一行読みながら置換などの処理を行い、元のCSVファイルに
書き込んでいきたいと思ってます。
Openステートメントを見る限り、読み取り専用と書き込み専用モードしか
無いようなんですが、DBのレコード操作のように、一行一行を
UPDATEみたいなことはできないんでしょうか?
0957デフォルトの名無しさん
NGNGでも、一端別名ファイルに保存して完了した時点で元削除してリネームでいいんじゃないか?
0958デフォルトの名無しさん
NGNG無理ですかね?
ウエーブを鳴らすAPI使ってまして
APIの引数にファイルのパスを指定しています
どうにかプログラム内のリソースを指定する感じで組みたいのですが
可能でしょうか?
Public Declare Function sndPlaySound _
Lib "winmm.dll" _
Alias "apiPlay" _
(ByVal lpszSoundName As String, _
ByVal hModule As Long, _
ByVal dwFlags As Long) _
As Long
0959デフォルトの名無しさん
NGNGReference=とObject=に続くコード+DLL名またはOCX名の
コードの部分は毎回同じになりますか?
手動で参照orコンポーネントの追加を自動でするには文字列を挿入するだけで
OKぼくじょ?
0960デフォルトの名無しさん
NGNGコントロールの"TextBox"にマウスがオーバーしたら
ツールチップコメントを表示させるにはどうすたらよいでしょうか?
ツールチップコメントとは、タスクバーにマウスをフォーカスしたら
っぽこっとメッセージがでてくるやつです
0961デフォルトの名無しさん
NGNGプロパティをよく見たの?
0962デフォルトの名無しさん
NGNGwaveファイルをリソースファイルに加える。
んで、そのままではwaveを読めないみたいだったから
一旦Tempフォルダか何かにwaveを書き出して、
書き出したwaveを鳴らす、みたいなことをやったことがある。
0963デフォルトの名無しさん
NGNGWINMMのAPIつかってる限り、どうやっても一回ファイルにしないとだめじゃないかな。
0964956
NGNGなるほど、ランダムとはそういう時に使うのですか。
別名保存のリネームも視野に含めて作成したいと思います。
ありがとうございました。
0965958
NGNG少し手間がかかりそうですね
パソコンゲームでは画像や音楽ファイルを見かけることが少ないので
実行ファイルに全て入っていると思っていました
>waveファイルをリソースファイルに加える。
から挑戦してみます
>963さん、ありがとうございます
>WINMMのAPIつかってる限り、どうやっても一回ファイルにしないとだめじゃないかな。
APIとダイレクトサウンドの両方使っていますが、ダイレクトサウンドでは
実行ファイルに含められそうですか?
0966デフォルトの名無しさん
NGNGMCIコントローラーそのものが、VBとは独立したWINDOWSの機能で、
VB → コマンド送信 → MCIコントローラー(デバイスオープン/管理) → サウンドデバイス(ファイル/CDetc)
なので、仕組みを考えるとどうやっても無理かと。
ダイレクトサウンドのほうはわからん。調べてみよう。
VB → サウンドデバイス
て、接続ができるなら、直にデータ流し込めるから、埋め込みデータでもいけるんじゃない?
0967958
NGNG>なので、仕組みを考えるとどうやっても無理かと
私はプログラムの経験が少ないので>966さんのおっしゃることが
難しくて理解できない状態ですが、がんばってみます
>ダイレクトサウンドのほうはわからん。調べてみよう。
お手数かけます。
>て、接続ができるなら、直にデータ流し込めるから、埋め込みデータでもいけるんじゃない?
なんとか埋め込みデータで行きたいと思います
0968デフォルトの名無しさん
NGNGありました!ありました!どもです!
0969デフォルトの名無しさん
NGNGVB → コマンド送信 → MCIコントローラー(デバイスオープン/管理) → 実際に音ならすとこ
↓↑
サウンドデバイス(ファイル/CDetc)
※コマンド送信「あっこのファイル(CD)の面倒みてくれや」
こーなってて、あくまでVBから送るのは「コマンド」だけって話でした。
VB → 実際に音ならすとこ
↓↑
サウンドデバイス(ファイル/CDetc)
こーなれれば、VBから渡すのはファイルじゃなくて「データ」になれるから、実現できるねって話。
…で、こーなれるのかどうか調べます。
0970デフォルトの名無しさん
NGNGttp://www.mb.ccnw.ne.jp/garger-studio/vbgame/113.html
ttp://www.mb.ccnw.ne.jp/garger-studio/vbgame/114.html
「次にバッファを用意し、Waveファイルを読み込んで格納します。
Set dsBuffer = ds7.CreateSoundBufferFromFile(soundFileName, bufferDesc, waveFormat)
Waveファイルのフルパスを引数に渡すことでバッファへの格納が行われます。」
て、やってる(=ファイルを直接オープンしているわけではない)から、
このCreateSoundBufferFromFileの代わりに、
直接バッファにデータセットする方法がわかればいけるんでないかな?
具体的には、DirectSoundのバッファの形式と、
リソース内のWavFileの形式がわかればいけるかも。
で、実際のそのやり方は、時間なくなってしまったので、誰か詳しい人にパス。すまん。
0971デフォルトの名無しさん
NGNG説明ありがとうございます。MCIコントローラのことが少しは分かったような
きがします。
> VB → 実際に音ならすとこ
> ↓↑
>サウンドデバイス(ファイル/CDetc)
>直接バッファにデータセットする方法がわかればいけるんでないかな?
>具体的には、DirectSoundのバッファの形式と、
>リソース内のWavFileの形式がわかればいけるかも。
お時間とらせてすいません。
レスをヒントに自分でも調べなおしてみます
ありがとうございました。
0972デフォルトの名無しさん
NGNGプログラマ板で質問したのですが板違いだったようなので移動してきました。
アクセサリ形のプログラムを作っているのですが、
「スタートアップに登録する」機能をつけたいのです。
ショートカットを作る方法からわかりません。初心者過ぎてすみませんが教えてください。
あと、スタートアップはOSによっても違うし、
ユーザーが分かれているときは、
そのユーザーのスタートアップフォルダにだけ入れなくてはいけなくなると思うのです。
0973デフォルトの名無しさん
NGNGCSIDL_STARTUP
CSIDL_COMMON_STARTUP
0975デフォルトの名無しさん
NGNGまずはGoogleなどで検索しろ
今日はたまたまページが開いてるし酒でいい気分なのでアドレス貼るがな
ttp://www.bekkoame.ne.jp/~ilgg/VBMain/VB/Folder/Specfold.html
0976デフォルトの名無しさん
NGNGコンボボックスのクリックイベント内で、
そのコンボボックスのリスト内容を入れ替え、その後代入すると
コンボボックスの値が反映されずに、消えてしまいます
たとえば、
Private Sub Combo1_Click()
Combo1.Clear
Combo1.AddItem "OK"
Combo1.AddItem "NG"
Combo1.Text = "OK"
End Sub
Private Sub Form_Load()
Combo1.AddItem "OK"
Combo1.AddItem "NG"
End Sub
というコードで、コンボボックスを選択すると、
値が消えます
この動作原理を説明して頂けないでしょうか?
0977デフォルトの名無しさん
NGNG引数にVBの関数のポインタを渡し、DLLからそれを
コールするような処理を書いてみました。
問題なくコールできたのですが、DLL内でスレッドを生成し、
そのスレッド内からコールすると、「ハンドルできない例外」が
発生してしまいます。このような呼び出し方はやっては
いけないことなのでしょうか。
ちなみにデバッグで起動すると問題ないのですが、
VBでexeを作って起動すると失敗します。
0978デフォルトの名無しさん
NGNGあー、それ俺も経験ある。
時間もなかったので、あきらめて構成を変えちゃったんだけど。
この辺が関係するのかも。
ttp://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/Vbcon/html/vbconScalabilityMultithreadingInComponents.asp
0979デフォルトの名無しさん
NGNGVB6でマルチスレッドは、
ちゃんとその仕組みを分かってないなら使わない方がいいよ。
そういう意味では「やってはいけないこと」だね。
0980デフォルトの名無しさん
NGNGありがとうございます。読んでみます。
>979
うぅぅ・・・・すいません。
0981デフォルトの名無しさん
NGNGろくに推敲もしない奴は今まで大いに叩いてきたが、>>975はそいつらと
同レベルの下衆だな。きっと不幸な奴なんだろう。
0982デフォルトの名無しさん
NGNGそっか?ヒントになることを書いている分だけ、
俺やお前のように他人の行動を非難するだけのクズよりは
世の中のためになる奴だと思うけどなぁ。
0983980
NGNG使っていたのですが、これもまずかったのですかね。
ヘルプには_beginthreadと_endthreadを使うように書いてありますが。
とりあえず明日試してみます。
0984デフォルトの名無しさん
NGNGVB6にてDDEサーバを作ろうとしているのですが、
なかなか解説サイトが見つかりません。
Helpを眺めてもVB用のサンプルが見つからないので困っています。
DDEサーバはどのように作ればいいのでしょうか。
よろしくお願いします。
VB6 sp6
win2k
0985デフォルトの名無しさん
NGNGDDEは.NETから廃止となります
DDEじゃないと絶対に駄目な場合でなかったら別のやり方を選択しましょう
0986デフォルトの名無しさん
NGNGこれじゃダメなのか?
Private Declare Function sndPlaySound Lib "winmm" Alias "sndPlaySoundA" (ByRef lpszSound As Any, ByVal fuSound As Long) As Long
Dim bytBuf() As Byte
bytBuf = LoadResData(リソースID, "リソース型名")
sndPlaySound bytBuf(0), SND_SYNC Or SND_NODEFAULT Or SND_MEMORY
0987958
NGNGまだレス拝見しただけですが、できそうな予感です
>LoadResData(リソースID, "リソース型名")
試してみます、ありがとうございました。
0988デフォルトの名無しさん
NGNGレスどうもです。
古いソフトなのでOLEが使えずDDEでやろうと思ってたのですが。。
どうやらDelphiでDDEが使えるようなので
VB捨ててDel厨になろうと思います。
0989デフォルトの名無しさん
NGNGMSDNのDDEを読んでどこがわからなかったの?
読んでないなら論外。出直してこいと。
0990デフォルトの名無しさん
NGNG初期値と終了値を入れる時で、
1000以上の値を入れるとおかしくなるですが
解決策ないですか・・。
0991デフォルトの名無しさん
NGNG0992デフォルトの名無しさん
NGNGMDIの親フォームの背景(Pictureプロパティ)に画像を表示し
画面に表示中に別のファイルをロードしたのですが、背景が変わりません。
一旦最小化させ、また開くと変わっているので再描画されていないだけだと思うのですが
MDIの親フォームを再描画する方法が分かりません。
MDIFormってRefreshなどのメソッドを持っていないみたいなのですが
再描画って可能なのでしょうか?
0993デフォルトの名無しさん
NGNGWinsockでネットワークを利用した多人数でできるゲームを製作しているのですが、
チャットも搭載したいのですが、
サーバー側のプログラムとクライアントのプログラムと分けているのですが、
クライアント側がゲームのデータとチャットの文字データと2つのデータを送るつもりなのですが、
Senddataで送り、Getdataで受信するのですが、これだと1つのデータしかやりとり出来ません。
文字データとゲームのデータ2つを分けてやりとりしたいのですが、どうすればいいでしょうか?
0995デフォルトの名無しさん
NGNG1つに纏めて送信し、受信したら二つに分けれ。
0996デフォルトの名無しさん
NGNGディストリビューション ウィザードで作成したセットアップファイルに
ライセンス等の同意確認画面を入れたいのですが、参考になる画面の
サンプルソースで、何か良いのありませんか?
よろしくお願いします。
0997デフォルトの名無しさん
NGNGですがですがと連呼して読みにくいぞ。
>Senddataで送り、Getdataで受信するのですが、これだと1つのデータしかやりとり出来ません。
>995方式でもいいし、クライアント-サーバ間でやりとりするデータにヘッダなり何なりを
付加して受けとる側が判断する方法もある。
0998デフォルトの名無しさん
NGNG0999デフォルトの名無しさん
NGNG1000デフォルトの名無しさん
NGNG10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。