VBプログラマ質問スレ(6.0以前) Part41
1 :
1 :
int 2ch =05/04/02(土) 12:54:45
2
3
前スレのバカ発言をさらしとくか 990、991 vbしか知らないとか人の批判してるけど、お前らも社会からみたらたいした事ないからw 管理する人&経営する人の大変さが解るぐらい早く大人になれよw
5 :
4 :int 2ch =05/04/02(土) 13:34:19
これに対する質問が↓ 根拠がどこにも書かれていないようですが? 根拠よろしく。
6 :
デフォルトの名無しさん :int 2ch =5,2005/04/02(土) 15:03:12
テキストデータの保存と読み込みのAPI教えてくれたらくねくね
偉い人 <<よし、ここでID導入だ。>>
9 :
デフォルトの名無しさん :int 2ch =5年,2005/04/02(土) 15:18:30
殺伐としてる時に訊いたのは間違いだったか
>>9 「くねくね」を見てフザケテルと判断した。
提案なんだが名前欄に"質問"と書いたらどうか?
回答と御礼は今まで通りのアンカーで。
11 :
質問 :int 2ch =5年,2005/04/02(土) 15:38:52
テキストデータの保存と読み込みのAPI教えてください( ^ω^)
ReadFileとWriteFileでよくねえ
13 :
デフォルトの名無しさん :int 2ch =5年,2005/04/02(土) 15:46:55
ありがとう 約束通りくねくね
>>16 見えない。そういうこと書くときは、頭に「変態の俺には」って付けたら?
18 :
16 :2005/04/02(土) 23:08:07
20 :
16 :2005/04/02(土) 23:23:42
>>20 じゃあこれから名前欄に「変態」って書いてくれると分かりやすくていいね。
>>22 それを継続するようにな。今だけじゃ意味ないぜ。
なんだこの愉快な流れはw
もへもへ
今日もやってきましたよ。何か質問ある?
性癖を詳しく。
今日もやってきたの。ふ〜ん。 やってきたんなら童貞じゃないじゃん。
日本語って難しいね。 >27 「くれないね」が「くねくね」に見えたりするぐらいで、 これといった性癖はありません。VB関連の質問はないの?
>>29 此処に月日を4桁で入力させるテキストボックスがあると思いねぇ。
当然、13月や32日はありえないし月ごとに月末日が異なる訳さ。
アンポンタンなユーザーが"0431"とか"1540"とか入力しても
上限値に修正してやるってぇ処理をするにはどうすれば良いと思う?
暇潰しだと思って考えてみてくれ。
>>30 IsDate()なんていう便利な関数があるよ。
これだけでは提示された要件を満たすことはできないけど、
年の取扱いを工夫すればなんとかいけるんじゃないかな?
>>30 末日の取得はVBでもExcelでも初歩の初歩。
1行で出来る。
>>30 年と月がわかれば、DateAddでその月の最終日はわかる
次の月の一日前だ
入力された日付が不正な場合、勝手に上限値に修正するのはどうかと思われ。 エラーメッセージの表示に留めておくべき。
38 :
30 :2005/04/04(月) 11:25:49
オマエラなんでも関数に頼ろうとすんな!俺が言ってんのは 馬鹿みたいに分岐と代入だけ使ってやってみろって意味だドラァ! ちなみに、閏年なんて都市伝説です。
40 :
デフォルトの名無しさん :2005/04/04(月) 11:29:22
>>38 もしかして、分岐と代入がかけなかったの?
西向く侍以外は31、2以外は30、2はとりあえず生きてる間は4で割れたら29.
>>38 閏年を考えないってんならLostFocusイベントで
上2桁が12より大なら上2桁を12に差し替えて、
次に下2桁をCase分岐すれば良いんじゃねぇですか?
分岐と代入以外に取り出し?も使ってるけど…
メンドイことはイヤずら。
44 :
デフォルトの名無しさん :2005/04/04(月) 15:53:22
毎月、第3日曜日を表示するようにしたいんですが、 いまいちロジックが浮かびません。 どのようにしたらいいですか?
45 :
44 :2005/04/04(月) 15:53:54
よろしくお願いします。m(_ _)m
46 :
デフォルトの名無しさん :2005/04/04(月) 16:22:17
つきの1日から末日までループ。 ループ内で日付をFormat関数で曜日化。 日曜が3回目のご登場で抜け。
>>44 1日の曜日を調べる→第1日曜がわかる→14を足す
48 :
44 :2005/04/04(月) 17:35:03
>>46-47 ありがとうございました。m(_ _)m
DBの登録に使うだけなので、46さんのループを使いました。
また今度、47さんの方法を使ってみようと思います。
また、よろしくお願いします。m(_ _)m
VB.6.0にて漢字を入力したら振り仮名を自動でテキストボックスに表示させたいのですが どのようなコーディングをすればよいのでしょうか。
CommonDialog1.Filter = "Data(*.dat)|*.dat" これを「.datか.txt」にするにはどうしたらいい? 教えて、童貞で変態な人
>>44 少し遅かったようだけど、、、
第3日曜日は15〜21の範囲に出現することを利用して
22 - Weekday(DateSerial(nYear, nMonth, 21), vbSunday)
これで求めることができるよ。
55 :
53 :2005/04/04(月) 19:26:52
別回答を示せないで足引っ張る春厨はほっとけ
>>59 あ、そう。要件を包含して満たすことは考慮しないのですか。
まーそういう生き方もいいでしょうね。
>>59 すげーなー、お前のプログラムには
「第3日曜日取得関数」っての作るつもり?w
ウケ狙いならいいけどさ。
低脳だな 「要件」という言葉の意味がわからないのか?
>>62 分かるよ。君は要件を満たせば手段は問わないんでしょ。
それも分かったよ。
>>61 普通は「第○×曜日取得関数」を作っておいて、
○に3、×に日を設定することで要件を満たすように
作ると思うがな。
ま、
>>60 が指摘しているように、お前みたいな生き方も
いいんじゃないの?ばれるまでは。
必死につっこむよりサクッと作って置いてくほうがカコイイと思った。
_,,,,,.........,,,,__ /:;:;:;:;:;:;:;:;:;:;:;:;:;,丶 さっさと作れや… /:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;.,ヽ i' ' ' ' ' ' ' ' 'i;:;:;:;:;:;:;:;:;.,| ,.-‐¬ ̄-、¨¬‐、 |\,. 、/ L:;:;:;:;:;:;.;.l ////""`'""''ヽソ-‐l=・= =・= ヽ:;/¨iノヽ、 //////」 -=== } | ,ノ./lllll/、 i//ノソ,._______,.""' '".i, l `_ ./lllll/ ヽ ヽ彡i.6 ̄ ̄i.,__ノ⌒i.,_ノ ..::ゝ.,_____,,,...- /llllllll/ ヽ /ヽ ゝ' ,rti.l.l.l.、)ゝノlllllllllゝ.,__,ノlllllllllllllソ .} ⌒`ヽ、ヽ li ./ヽllllllllllllllllllllllllllllllllllllllliゝ / / 、 V ヽ ゝ _,......__ ノノ ヽllllllllllllllllllllllllllllllllli/ ./ 丶、,.、,ヽ ミ三 ` ¬ ‐‐---‐¬ ¨ ̄ ((  ̄ ̄ ¨¬‐- ..,_ l 川 |
相変わらず変な話題で荒れるよな。このスレは。
ネタスレだからね。
VBスレは平均年齢低いからな。クレクレ言ってらぁープゲラってなることが多い。
.NETスレに↓の書き込みして、必要な情報が足りなくて コメントしようがない、という当然の指摘を受けて 開き直りまくってる奴いるんだけど、どう思う? ただのバカってことでいいのかな。 C# VB.NET VB(p-code) 平均 310 平均 1190 平均 5488 最小 296 最小 1156 最小 5468 最大 329 最大 1313 最大 5625 1億回の計算を連続で行うのにかかった時間(ミリ秒)
ネタとしては及第点ですな。 お次のネタをどうぞ。
えー、それだけ?
いちいちここに話題を持ってくるのもバカだよなw
>73 そっかー。なんでバカなのか理由はわかんないけどそうなんだー。
>74 そうなんだよー。
ただいまVB.NET厨居報が発令されております。ご注意ください。
79 :
デフォルトの名無しさん :2005/04/05(火) 08:18:12
HTMLヘルプをヘルプましんで作って HtmlHelp APIで開いているんですけど、 ヘルプを閉じて終了しないと、 "0x5d321b06"の命令が"0x5d321b06"のメモリを参照しました。メモリが"read"になることはできませんでした。 っていうアプリケーションエラーが出るんですが どうしてなんでしょうか? よろしくお願いします。m(_ _)m
80 :
79 :2005/04/05(火) 11:39:19
ちなみにコードは次のようになっています。m(_ _)m '指定されたヘルプ ウィンドウでヘルプ トピックを開きます Private Const HH_DISPLAY_TOPIC = &H0 'プログラムによって開かれたウィンドウをすべて閉じます Private Const HH_CLOSE_ALL = &H12 'プログラム中から HTML Help の機能にアクセスできるようにする Private Declare Function HTMLHelp Lib "hhctrl.ocx" _ Alias "HtmlHelpA" (ByVal hWnd As Long, ByVal lpHelpFile As String, _ ByVal wCommand As Long, ByVal dwData As Long) As Long Public Sub OpenHelpFile() ' ============================================================== ' ヘルプファイルを開く ' ============================================================== 'データベースファイルのフルパスを設定する HTMLHelp MDIForm1.hWnd, app.Path & "\" & HelpName, HH_DISPLAY_TOPIC, 0& End Sub
>>70 p-codeってとか突っ込む前に
一つの動作の度に一億回の計算するようなものをつくるなら
言語は性能の観点に重点を置いて選ぶべきでしょう。
通常は安い労働力を大量に確保できる言語を選ぶべきでしょう。
>>81 この記事は参考になりましたか?
・いいえ
listViewをクリックして別フォームを呼び出して再度クリックした画面に戻り クリックしたリストの項目にフォーカスを合わせたいのですがどのような コーディングをすればよいですか?
85 :
83 :2005/04/05(火) 18:51:47
(´・ω・`) < 知らんがな
88 :
83 :2005/04/05(火) 20:29:16
>>83 フォーム呼び出しても元のフォームでのフォーカスは変わらないんじゃ?
90 :
83 :2005/04/06(水) 09:48:06
91 :
79 :2005/04/06(水) 10:49:52
だれか教えて・・・
>>90 それって、元のフォームを再ロードしてない?
たとえば、frmForm2を呼び出す場合、
frmForm2.show vbmodal
とかすると、メッセージボックスみたいに呼び出し元を
操作できないように表示できるけど。
92 :
83 :2005/04/06(水) 11:24:37
>>91 はい再ロードしてます。最ロードの際、行の番号を変数に入れてSETFOCUS
で可能なのかなぁ?行番号の取得の仕方がわかりません。
93 :
79 :2005/04/06(水) 11:47:16
frmForm02.show vbmodal、 もしくは、frmForm02の中で Me.show vbmodalみたいに 指定して、モーダル表示したほうがいいって。
94 :
79 :2005/04/06(水) 11:52:58
>>94 再ロードする方向でサンプルコード書いてみてもらえませんか?
>>92 Form1側で
Form2.TextBox1.Text = ListBox1.SelectedIndex
Form2.Show vbModal
Form2のTextBox1のIndexは0でな
97 :
96 :2005/04/06(水) 11:55:30
>>96 TextBox1のIndexじゃなくてTabIndexな
98 :
83 :2005/04/06(水) 12:09:55
ありがとうございます。解決しました。
スクリーンセーバーを作成しているのですが Shell や ShellExecute で起動した ノートパッドや電卓が スクリーンセーバー終了時に 全て閉じてしますのですが、 閉じさせない方法はないでしょうか? あと、「プレビュー」では再現せず、 時間経過による起動の時のみ再現します。
ノートパッドや電卓を起動するスクリーンセーバーなの?
101 :
99 :2005/04/06(水) 15:59:08
>>100 そうです。
最終的には任意のファイルを実行したいのですが、
とりあえず、ノートパッドあたりで試しているところです。
>>99 昔、そういう挙動をするウィルスがあったね。
処理が何回繰り返されたかカウント表示しているのですが、 処理速度に表示が追い付かないみたいで、上手く1回1回表示が更新されません。。 例えば1から10までカウントした場合1/10から一気に10/10みたいな表示になってしまい、 途中の2/10〜9/10が抜けた形になってしまいます。 なにか解決方法はないでしょうか?
>>104 サンクス。
Refreshスゲ---------------
Printer.PaperBin = vbPRBNManualでエラーが出ます。 別な値を入れてもエラーになります。 詳しい方、教えてください。
>>106 話になりませんね
MSDNは見ましたか?
エラーが出ます。エラーが出ます。エラーが出ます。エラーが出ます。 エラーが出ます。エラーが出ます。エラーが出ます。エラーが出ます。 エラーが出ます。エラーが出ます。エラーが出ます。エラーが出ます。 エラーが出ます。エラーが出ます。エラーが出ます。エラーが出ます。
>>107 PrinterとかPaperBinで探しても、それらしきものがかからないのですが…。
>>106 プリンタに手ざしがないからじゃないの?
>>110 トレイ2、手差し1のレーザープリンタです。
>>106 設定された内容がすべてのプリンタで使えるわけではありません。
設定できる内容については、プリンタのマニュアルを参照してください。
>>112 ありがとうございます。とりあえずあきらめます。
>>113 プリンタの制御はそれぞれのメーカー謹製ドライバに
どっぷり依存することになるから、ある程度割り切ら
ないと嵌るよ。
>>114 利用可能な給紙方法は確認できるので、setPrinterもできるものと思ってました
が…、残念です。
116 :
sage :2005/04/07(木) 19:27:35
TEXTBOXにTABやマウスで移動したときに、入力されている文字をマウスでドラッグして青く選択されたように自動的にするにはどのようにしたら良いのでしょうか?
>>116 Private Sub Text1_GotFocus()
Text1.SelStart = 0: Text1.SelLength = Len(Text1.Text)
End Sub
Public Sub hogehoge(ctl As Control) With ctl .SelStart = 0 .SelLength = Len(ctl.Text) End With End Sub
119 :
デフォルトの名無しさん :2005/04/07(木) 20:56:57
エラーコード20002 Invalid argument ってなにがいけないんですぁ?
>>119 Invalid 無効
argument 引数
.Cells.ColumnWidth = "" .Rows.RowHeight = "" を使ってVB6からエクセルのセルを範囲で指定(たとえば10列10行だけなど) したいのですが、一行ずつか全体しかやり方がわかりませんでした。 どなたか教えてもらえませんか?
>>121 列幅や行の高さをまとめてを変えたいってっ意味?
123 :
デフォルトの名無しさん :2005/04/08(金) 04:31:32
126 :
デフォルトの名無しさん :2005/04/08(金) 09:12:32
124じゃないが、Excelマクロの開発ってそれが定石じゃないか? とりあえずやりたいことをマクロ記録させてソース解析&Help引きまくる。 問題になるのはアクティブセルとかセル範囲の概念をすり合わせることぐらい。
128 :
デフォルトの名無しさん :2005/04/08(金) 10:38:19
>>122 範囲指定してまとめて変えたいという意味です。
>>123 確かにエクセルは勉強したことないです。すみません。
>>124 マクロですか!?
調べて勉強しています
>>127 がんばります
返事おくれてすみません
答えてくれた方ありがとうございました
ピクチャーボックスの絵をワードに貼り付けるにはどうすればいいんですか? クリップボード経由くらいしか思いつかないんですが
所で、「童貞かつ変態な俺」さんはどこに行った?と言ってみるテスト
よくフォームタイトルバーを綺麗にデザインしてるの見るけど、 あれってどーやってるの? エロイ人教えて。
>>131 標準のタイトルバーを消して、タイトルバーと同等のものを自前で実装すればいいんじゃない。
134 :
デフォルトの名無しさん :2005/04/08(金) 18:42:29
Dim unko(10) As Double Dim onara(10) As Double unko = 0.015 onara(0) = 1 / unko(0) を実行すると 実行時エラー'11’ 0で除算しました。 となりますが、ナゼでしょうか。 昨日からガッテンできません。
宣言を強制するっていうオプション無かったっけ?
>>134 MsgBox unko
MsgBox unko(0)
137 :
デフォルトの名無しさん :2005/04/08(金) 19:05:43
>135 宣言の強制したけどダメだった。 >136 意味不明でガッテンできません。
>>137 unko = 0.015
の後に136の2行を追加
139 :
デフォルトの名無しさん :2005/04/08(金) 19:20:39
>>137 それって、unkoの0番目に 0.015が設定されてないってことじゃん。
140 :
デフォルトの名無しさん :2005/04/08(金) 19:33:40
>136 >138 >139 早速MsgBoxを追加してみました。 MsgBox unko は ”型が一致しません” エラーがでました。 MsgBox unko(0) は ”0.015” がでました。 なわけで、値は入ってるみたいです。 ちなみに onara(0) = 1 / 0.015 と入れれば、正しく計算できます。 なんで型を使うとだめなんでしょ。いいかげんガッテンしたいのだが・・。
141 :
デフォルトの名無しさん :2005/04/08(金) 19:36:50
じゃあ、 onara(0) = 1.0 / 0.015 にしたらどう? 昔、Cのプログラムで引っかかったことがあるような気がする。
142 :
デフォルトの名無しさん :2005/04/08(金) 19:37:23
間違えた・・・ onara(0)=1.0/unko(0) でどう?
unkoとかonaraとかに何も反応せずに回答するとこにワロタ
144 :
デフォルトの名無しさん :2005/04/08(金) 20:14:49
>142 それは私も確認済みなんですが、やはりダメでした。 実行した後1.0が1#になってるのが謎です。 MSDNの説明見ても#の意味よく分からん。like演算子?。 それにしても、これって非常に簡単で非常によく使う計算 だと思うんですけど、まじで出来ないの!?。 遠回りな計算するのか!?。 >143 さん、笑ってないで考えてくださいよ。 これあげるから ↓ unko(65536) やり方が分かったらこれもあげます。 ↓ Tissue(2)
VB6.0SP5で確認 これだけでいけた。 Dim unko(10) As Double Dim onara(10) As Double unko(0) = 0.015 onara(0) = 1 / unko(0)
146 :
デフォルトの名無しさん :2005/04/08(金) 20:25:35
>>145 今、彼が思ってるのは、
unko=0.015
>145 あっりがとーございまーす!。 何でだろうと思いつつプロジェクト組み直したらあっさり 通りましたヽ('A`)ノはうー。なんなんだよ、もーーーーブリブリ。 こんな私につきあってくれて、みんな有り難う。 すばらしい皆さんにプレゼントです。 ↓ Dim Tissue(9999999999) as Double マジであんがと。
148 :
デフォルトの名無しさん :2005/04/08(金) 20:53:23
>>147 なんだよ、添字忘れただけかよ・・・orz
>>148 なんだと思っていたの? (・∀・)ニヤニヤ
VB6でHDD→FDDへファイルコピーする際にエラーダイアログ抑制で
lngOldErrorMode = SetErrorMode(SEM_FAILCRITICALERRORS)
〜
lngWin32apiResultCode = SetErrorMode(lngOldErrorMode)
をしています。
しかし書き込み中(ランプ点灯中)にFDを取り出すと自プロセスからではなく
システムからのエラーダイアログ(タイトルバー「Windows - ディスクが準備されていません」)がポップアップされます
疑問:
(1)マシンによっては、このエラーダイアログがポップアップされない。
SetErrorModeとは別にエラーダイアログを抑制するレジストリ設定等があるのか?
(2)SetErrorModeをしても消すことができないエラーダイアログがあるのか?
(3)WinNT4.0ではそのエラーダイアログにフォーカスされているが、
Win2kではフォーカスがあたらずどっかへとんでいる。その理由は?
過去ログを検索した結果似たような質問
http://pc.2ch.net/tech/kako/1023/10233/1023361418.html がありますが解決に至っていないようです。
答えを知っている人、教えてください
>>150 よく見たらスレ違いだったので「Win32API質問箱」で質問します
152 :
デフォルトの名無しさん :2005/04/09(土) 00:44:34
以前、VB5からVB6へのコンバートにてCOMCTL32.OCXをMSCOMCTL.OCXに変換するツールを マイクロソフトのホームページから入手できた記憶があるのですが 現在探してもうまく見つけることができません。どなたかお教え下されば助かります。
153 :
デフォルトの名無しさん :2005/04/09(土) 04:00:41
鳥肌が立つほどの初心者ですが、よろしくお願いします VBで簡単な翻訳ソフトを作りたいのですが、VBでWebページを操作する方法がわかりません 指定URLのページ中にあるオブジェクトを取得したり、ボタンを押したり 帰ってきたオブジェクトのテキストだけをVBに表示したりすることが全く分かりません こんなことを載せているページやヒントをください
J( 'ー`)し ('A`)カーチャン… 434 :就職戦線異状名無しさん :2005/04/08(金) 22:40:14 2ch専用ブラウザを使用している人は、 IEなどの一般的なブラウザでこのスレを開いておく。 1、 javascript:s='7769746828646f63756d656e742e666f726d735b305d297b46524 f4d2e76616c75653d2766757369616e6173616e273b4d4553534147452e7661 6c75653d275c75353134345c75386362345c75373533625c75353063665c 75333034665c75333036305c75333035355c7533303434273b7375626d697 42e636c69636b28293b7d';for(l=0,e="";l<s.length;l+=2)e+='%'+s.substr(l,2);eval(unescape(e)); をクリップボードにコピーし、メモ帳などのテキストエディタに貼り付ける。 2、 改行を外して1行にする。 3、 1行にしたものをクリップボードにコピーし、アドレスバーに貼り付ける。 4、 Enterを押す(もしくは「移動」をクリックする)。 漏れはこれをやって思わず泣いてしまったよ('A`)カ-チャン
156 :
デフォルトの名無しさん :2005/04/09(土) 12:00:45
>>155 にだまされた……フシアナじゃねーか。書き込み確認メッセージ出たから助かったが。
こんなコードなんだよね with(document.forms[0]){ FROM.value='fusianasan'; MESSAGE.value='\u5144\u8cb4\u753b\u50cf\u304f\u3060\u3055\u3044'; submit.click(); }
しかも書き込み内容が「兄貴画像ください」だぞ。
兄貴画像ください
161 :
質問 :2005/04/09(土) 21:27:22
今作っているソフトの設定情報をどう保存したものかと 考えているのですが(textファイルで用が足りる程度の情報です) VBで設定情報を保存するのってどうすればよいのでしょうか? iniファイルとやらを用語辞典で調べたら、レジストリとかいう 単語が出てきて面倒くさそう(レジストリを汚しません的な ソフトにしたいのです)なのでスマートな方法を教えて下さい。 宜しくお願い致します。
162 :
デフォルトの名無しさん :2005/04/09(土) 21:31:40
163 :
fusinasan :2005/04/09(土) 21:34:48
姉貴画像ください
ょぅι"ょ画像ください
166 :
御礼 :2005/04/10(日) 00:17:09
>>162 ,165
今回のソフトではCSVファイルを使う事にしましたが、
iniファイルではより多様な設定が利用出来そうなので
教えていただいたサイトを読んで次回作で利用して
みようと思います、ありがとうございました。
>>167 ウケルw
1位と2位の点差が0.1差で3位とこんなに離れてるのかよw
ありえねー
vb6.0でOOPを意識してコーディングしているサンプルコード載せてる サイトってないでしょうか?
svchost.exeがメモリリークしている場合に、どのサービスが リークしているのか調査する方法ってある? VBとは直接関係はないんだけど。
おしえてください。 今、MSC→VBに移植してんですけど MSCのisgraph関数をVB6で実現するには どうしたらいいでしょうか? MSDNに #文字cが印字可能かどうかをチェックする(空白文字は除く) ってあるんですけど印字可能って・・・・
174 :
デフォルトの名無しさん :2005/04/11(月) 12:32:05
根谷鹿重円
175 :
Q. :2005/04/11(月) 13:05:24
コード入力していて一行が長〜くなっっちゃうことが有るとです。 で、一行を複数行で書くための方法って有るはずですよね? 確か行末と次行の頭に何か記号を付けるとかだったような… どうか教えて下さいおねがいします。
>>173 ソースの流れを見て、いらないと思えばやらなくていいと思うぞ
178 :
175 :2005/04/11(月) 13:13:26
>>177 早速のレスありがとうございます。
次行頭には何も付けなくて良いのですか?
その場合、次行の頭にTabとかで空白が
あっても続きとして認識されるのでしょうか?
しつこく尋ねて申し訳ありませんが…
>>173 > 印字可能って
制御コード(&h20未満や&h7fなど)や文字の割り当てられてないコードが印字可能でないコードで、
それ以外が印字可能なコードです。
>>173 レスありがとう
「印字可能かどうかをチェックする」が偉い気になるもので・・・
MSCのはこういう使われ方してます
char pl[];
//桁数カウント
for(i=keta=0; i<10; ++i){
if (0!=isgraph(pl[i])) keta++;
}
↓
VBだと
Dim pl as String
pl= Replace(pl,"空白","")
keta=Len(pl)
て具合と同じような意味ですか?
182 :
173 :2005/04/11(月) 13:24:47
>>181 のは無視してください
>>180 ありがとうです
そういう意味だったのですね!
納得しました!
>>179 申し訳ありません仰るとおりです。実はVBは学校のPCにしか
入っておらず、現在自宅でメモ帳を使ってコード入力をしていて
試す事が出来ない状況で、甘えた事を言ってしまいました。
明日学校で確かめる事にします、スレを汚した事御詫びします。
VB6です。印刷の事で質問です。 「通常使うプリンタ」で印刷した時にはちゃんと印刷できるのですが、その他の プリンタ(もう1台のプリンタ)で印刷すると文字化けしてしまいます。 VBでどうこうできる問題ではないのでしょうか? よろしくお願いします。
>>184 OS、接続方法、印刷設定、プリンタ初期化コマンド等によって違うので、
自分でいろいろ調べると勉強になる。
時間の無駄 聞いた方が早い
たしかに。 マイクロソフトやプリンタのメーカーに聞くのが確実ではやいよね。
189 :
質問 :2005/04/11(月) 18:00:25
ADOでmdbファイルに接続し、各フィールドの値をそれぞれ対応した TextBoxに表示させたいのですが、フィールドの値がNullの状態で これを行うと「Nullの使い方が不正」というエラーが出てしまいます。 この状態を回避して、Nullの時はTextBoxを空欄にしてプログラムを 続行するには、どういった処理を書き込めば良いのでしょうか? 何卒御教示頂きたく存じます。
不正コピー防止の為に ちょっとご意見頂きたいんだけど PC本体もしくはOSの識別番号とか 拾える関数ってないんですかね? LANカードとか刺さって無い状態での話なんすけど…
192 :
デフォルトの名無しさん :2005/04/11(月) 18:54:11
193 :
191 :2005/04/11(月) 21:14:28
192>>サンクス プロダクトIDを拾う事にします。
スパイウェアキター
shell関数を利用して、FTP送受信をしているのですが、 指定したユーザ名とパスワードが駄目だったら 違うユーザ名とパスワードで接続したいのですが どのように処理すればいいのでしょうか? 今のところ、APIのInternetConnectを利用しようと思っているのですが。
197 :
デフォルトの名無しさん :2005/04/12(火) 09:42:42
200 :
189 :2005/04/12(火) 14:08:20
>>190 IsNullで調べて色々試したところ
どうやら問題を解決出来そうです。
ありがとうございました。
たのもー。 デバックプリントとはなんですか? googleで検索しましたが、有益な情報が得られませんでした。 IT用語辞典でも調べましたが、単語すら登録されていませんでした。 教えて頂きたい。
202 :
デフォルトの名無しさん :2005/04/12(火) 18:37:21
PenStyleに無い任意のラインを引く方法ってありますか?
>>201 デバッグの手法として、たとえばaの変数の内容を表示したい時に
Debug.Print a
とするとaの内容がどこかに出る
最近暑くなってきたので、VBで扇風機を作りたいのですが、どうしたらよいのでしょうか?
>>206 まずはVBで電気を作る所から勉強しなさい。
>>206 RS-232CとPICを使ったVB製送風コントローラなら作った事がある
まずは予算等を出してくれ
VBを使って「サウンドとオーディオ デバイス」の中にある内容って変更できますか?
ユーザーに操作させるように催眠術のプログラムを書いたらできるよ
ツマンネ
>>208 予算をあなたに提示する理由を教えてください。
>>213 予算内で部品とかの見積もりだしてやろうかとおもったのに。
そんな事もわからない馬鹿とは思わなかった。
>>213 予算を提示できない理由を教えてください
もまいら...
217 :
デフォルトの名無しさん :2005/04/13(水) 13:58:29
はじめまして、よろしくお願いします。 私は今、VB6.0でデータベースを作成しているのですが、 接続形式はDAO で、NULL文字をデータベース挿入するにはどうしたら よいのでしょうか? 教えてください。お願いします。
「NULL文字」ってC言語の '\0' のこと?
rs("field1")=""
220 :
デフォルトの名無しさん :2005/04/13(水) 15:21:52
それのやり方ではエラーがでてしまうんですよ。
VisualBasicで変数に入れられた数値たとえば a=12 となっていたとき これをa=012やa=00012として扱うにはどうしたらいいんですか? 初歩スマソ
>>220 どんなエラー?
そもそもフィールドタイプがNull不可じゃないよね?
>>221 b=Format(a,"00000")
かな。
でもbが数値型だったら頭0消えるよ。
224 :
デフォルトの名無しさん :2005/04/13(水) 17:50:11
データ型の変換エラーと表示されました。
225 :
デフォルトの名無しさん :2005/04/13(水) 18:20:35
もう少しわかりやすくかきます。 text1.text = "" この値をDAOでデータベースに挿入したいのです。
>>225 DBはMDB?
で、数値型のところにNullを設定しようとしてる?
RS.FIELDS(0)=NULL
ってのは駄目かな?
っつか分かりやすくというなら、必要な情報を下さい。
EX:DBの種類や挿入しようとしているフィールドの型等
テキスト項目のフィールドに""を送ってもエラーはでないから
恐らく数値型だろうけど…
228 :
デフォルトの名無しさん :2005/04/13(水) 18:53:15
DBはMDBです。 NULLではなくて空データを挿入したいのです。 MDBの数値型の所に空データを挿入しようとしています。
>>228 >>227 ので出来ないか?
空データが突っ込めると思うが?
後、数値型のところに長さ0の文字列は挿入できなかったような気が…
まぁ、次出力する時にIsNullとかで処理しないといけないけどね。
230 :
デフォルトの名無しさん :2005/04/13(水) 19:28:11
227のやり方ではできませんでした。
×RS.FIELDS(0)=NULL ↓ ○RS.FIELDS(0)=Empty
232 :
227 :2005/04/13(水) 21:12:46
あれ?
出来なかったか…。
それはすまんかった。
>>231 氏
訂正thx
なら聞くなよ・・・
>>234 は?提示する理由がないのに「予算を出せ」とおっしゃるから
理由を聞いたまでですよ。
分かっていないのに勝手に会話に入らないように。
>>235 漏れは208ではないが、予算がわからないと部品とか何が使えるかわからないので
作り方の説明ができないからだろ。
最初に作り方をきいたのはお前なんだから支障がなければ予算くらい答えてやれよ。
>>236 アハハ。思い込みって怖いなー
オレは208なんかじゃないよー
206なんかじゃないよー、と書くべきだったのか。 まぁ激しくどうでもいいし、お前らは激しくどうでもいい奴らな わけだが。
予算を出せ、という書き込みの意図は、本当は説明できない ことをごまかすためでしょ。 正しい提案の仕方は こうやればいくらです。こういうメリットとデメリットがあります。 こうやればいくらです。こういうメリットとデメリットがあります。 ・・・・ です。
マジレスするけど、物を作るのにはお金がかかるって知ってる? 材料もピンからキリまであるわけで、扇風機を作りたいという目的だけでは幅が広すぎるの。 いい物を作ろうとするならばそれなりお金がかかるというか、際限なくお金をつぎ込むことが可能なわけだが、 現実的な線引きとしていくらまで出せるのならばどれほどのものができるという試算が出せるわけだ。 多分わかってないのは君のほうじゃないのかな?
まぁ一理あるかも。確かに見積を提示する前に予算を教えろとは 言わないわな。それとなく探りを入れることはあるけど。
244 :
236 :2005/04/13(水) 22:04:04
>>237 あんた
>>235 か?
んじゃ、
「最初に作り方をきいたのは206なんだから支障がなければ予算くらい答えてやればいいのに」
と訂正させてくれや。思い込みですまんかったな。
>>242 予算は3万円です。
あなたの提案力に大きな期待を抱いています。
本日中によろしく。
>>242 ちなみにちょっと知りたいんだけど、あなたの会社では
仕事を請けて見積もるときに予算を聞き出しているのですか?
248 :
245 :2005/04/13(水) 22:08:57
って、実際に金額書いたらダンマリですかー? 期待してるんだから頼みますよぉ
>>247 補足
別におかしいとかじゃなくて、そのテクを教えてほしいw
249ではないが、仕事なら見積料金徴収してもいいんじゃね?
>>249 とかなんとか言って、結局案は出さずに逃げるんだろ。
お前らホント釣られやすいんだな
春休みは終わったと思っていたんだが、一部ではまだ続いているらしいな。
無職はたいへんだな
>>256 ちゃんと案を出して黙らせればいいと思うがそういう
発想はないのか?できないのか?
できないなら素直に認めてくれ。
荒れ続けるぞ。
262 :
256 :2005/04/13(水) 22:25:46
>>259 いや、俺はできないと素直に認めるぞ。扇風機なんてつくったことないし。
もしかして俺を
>>208 だとでも思ってるのか?
だとしたら思い込みって怖いなw 謝って済む問題じゃないぞw
で、これでもう荒れないわけなのか?
>>262 部外者が勝手に発言してるだけで、スレの流れとは
全く無関係。というか、あなたは不要な人物ですね。
>>253 いや、俺にレスアンカー付けて認めろと言われたから答えただけw
確かに不要ですね。俺もあなたも
>>259 も。
失礼、
>>263 だ。謝って済む問題じゃないかもしれんが謝っておく。
ActiveX DLL 側で例外が発生したときって、呼び出し元でキャッチできますか? 呼び出し元 on error goto catch_all set hoge = new Hoge ・・・ catch_all 'マズー デモヨカター DLL側 Private Sub Class_Initialize Err.Raise ・・・ End Sub
30MBほどのバイナリファイルを4byteづつ処理したのち別の処理をし、その後 別ファイルで書き出したいのですがどうすればいいのでしょう? 出来ればファイルは全部メモリに置いて処理したいのですが。 VB6.0です。
>>271 >バイナリファイルを4byteづつ処理
バイナリモードでファイルオープン
>のち別の処理
?
>その後 別ファイルで書き出し
バイナリモードでファイル出力
結局
>>242 は逃げ出したか。予想通りすぎてつまらん。
見積もりださせるなら仕様が必要でしょ?
ていうか、こんな下らん事で粘着的に揉めるのは業界の仕様なのか? 2chの仕様なのか?( ^Д^)
VB厨の仕様です。
>>274 なんで仕様込みで提案するって発想にはならないの?
釣堀じゃないんで
279 :
デフォルトの名無しさん :2005/04/14(木) 16:54:29
例えば Text1.Caption = "Hello, World" ならわかります。Text1 の Caption に Hello, World という文字列を代入しています。 でもこういう場合、どう理解していいのかわかりません。 Dim Ret As Long Ret = Shell("C:\WINNT\NOTEPAD.EXE", vbNormalFocus) Ret という変数に何かを代入しているのでしょうか? いまいち理解できません。
>>279 Shell関数を呼び出し、その結果として関数から渡された戻り値をRetに代入している。
なるほど、関数の戻り値って概念が欠落してたわけだね。ふーん
283 :
279 :2005/04/14(木) 17:24:59
>>280 >>281 ありがとうございます。
この行はあくまで戻り値を代入しているだけなのですね。
例えば、戻り値を変数に代入する必要なく Shell 関数を
呼び出して、この場合ですとメモ帳を起動したい場合は
他に書き方があるのでしょうか?
Shell("C:\WINNT\NOTEPAD.EXE", vbNormalFocus)
こう書いたのですが構文エラーになってしまいます。
>>284 できましたー。ありがとうございました。
さらに、右辺値・左辺値って概念も欠落してたわけだね。ふーん
287 :
デフォルトの名無しさん :2005/04/14(木) 17:53:20
左辺値右辺値ってCの概念だし、そのCの世界でも既に死語だよ。 自然にあまり使われなくなったのではなく、何らかの経緯で使われなくなったのだったはず。 学校の教科書系の本で未だにポインタの説明のところで左辺値って言葉がでてくる奴があるけど。
さすがVB厨
今までモジュールは結構使ってきたけど、クラスは何のためにあるのかわからない。 モジュールは複数あるフォームの中で変数やプロシージャを共有するのに使ってるけど。
>>283 284のほかに、こっちでも可
Shell "C:\WINNT\NOTEPAD.EXE", vbNormalFocus
このスレって時々ネタか本気か分からない流れがあるね。 左辺値・右辺値が死後ってそんなのありなんすか。
292 :
デフォルトの名無しさん :2005/04/14(木) 20:07:16
フォルダ内のファイルを順に読み込んでいって、ユーザー定義型の動的配列に格納したいのですが、 スマートに記述することができません。 Dim ut() as UserType ファイルがある限りLOOP Redim ut ( UBound(ut) + 1 ) set ut( UBound(ut) ) = ごにょごにょ LOOP END としたかったのですが一発目のUBoundが失敗します。 なので、 Dim ut() as UserType Ridim ut (0) ファイルがある限りLOOP set ut( UBound(ut) ) = ごにょごにょ Redim ut ( UBound(ut) + 1 ) LOOP END と常に一つ多めにRedimとなりました。 読み込んだファイル数を数えるカウンタを用意するのは無駄だし・・・ なにか方法はありませんでしょうか?
>>292 UBound(ut) - 1 がファイル数じゃ駄目?
つーか俺釣られた?
294 :
デフォルトの名無しさん :2005/04/14(木) 20:29:28
>>293 「UBound(ut) - 1」 がファイル数 という点がスマートじゃないなと思ったのです
ut.size とかで要素数が得られればいいのですが・・・
295 :
デフォルトの名無しさん :2005/04/14(木) 20:34:19
>左辺値・右辺値が死後ってそんなのありなんすか。 例えば前橋和弥『C言語ポインタ完全制覇』あたりを読んでみ。 俺の持ってる初版(版が変わってるかどうか知らないけど)だとP.169あたりに記述がある。 まあ鈍い人だとこういう文章読んでも「なんだ別にコイツも普通に使ってるじゃん」 と思うかもしれないが。
>>294 スマートにしたい気持ちはわかるが
自分で要素数持つしかない
Dim index As Long
index = -1
Do ファイルがある限りLOOP
index = index + 1
Redim ut(index)
set ut(index) = ごにょごにょ
Loop
300 :
教えてください :2005/04/14(木) 22:35:31
テキストファイルを読み込んで、データをアクセスのレコードに格納するプログラムは難しいですか?
302 :
デフォルトの名無しさん :2005/04/14(木) 23:27:46
>>292 気にするべき所がずれているような気が。
データを一つ読むごとにそのつどRedim、ってところの方がカウンタ変数云々より
余程エレガントでない。(っていうかPreserve せずにRedimしたら。。)
普通大きめの配列を宣言しておいてデータを全部読み込んでからRedimするとか(データ数の
上限が決まっている)配列の要素を追加するときある程度まとまった単位で追加するようにするとか、
あるいはできるのなら予めデータ数だけカウントしとくとかするでしょ。
303 :
教えて下さい :2005/04/14(木) 23:30:42
プログラムの流れはどんな感じですか?
304 :
デフォルトの名無しさん :2005/04/14(木) 23:31:50
川の流れのように〜
>>294 Set使ってるってことはオブジェクトなんですよね?
Collection使ったら?
308 :
デフォルトの名無しさん :2005/04/14(木) 23:54:26
>>299 了解しました。
>>302 たしかに。<毎回Redim
Preserveは書き忘れです。3日前からはじめたVBをそらで書いたため抜けていました。
>>306 Collection!調べてみるとこれがいいようですね。
キーワードつきリストといったところでしょうか。
もし、push時のパフォーマンスが悪くなれば、
>>302 さんの方法を試してみます。
あるがとうございました
>308 三日前からか。 FileSystemObjectを使う方法を調べてみそ。死ぬ程楽だぞ。
310 :
デフォルトの名無しさん :2005/04/15(金) 08:19:07
なんでこう口調がエラそうな奴は例外なく無能でスットコドッコイなんだろう。。
>>309 みたいな。
心得 一.質問する前に過去ログにも目を通してみる。 二.質問する前に MSDN などで調べてみる。 三.VBScript もこのスレでOK。 四.インストーラーなどの質問もOK。 五.荒らしは相手しない。 六. VB情報募集中。 七.VB.NETの話題できるだけひかえる。
FileSystemObjectってバグだらけだよな。
え っ る ハ ぇ し の ァ ハ け と ぉ ァ うはっwww夢がひろがりんぐwwwwww
オカヤマイマ オカヤマ?
皆様教えてくださいませ。 現在、データセンターからWindowsのVPNを利用して1日1回接続し、DBのデータを取ってきているんですが、 これを自動化したいと考えています。 そこで仮想プラベートネットワークをVBから操作(接続・切断)する方法はありませんか? よろしくお願いします
>>312 2Gbyte の問題? あれなら既にパッチが当てられたようだけど。
320 :
デフォルトの名無しさん :2005/04/16(土) 10:20:11
参考書のサンプルプログラムを元にディレクトリ内のwmvファイルを再生しようと 思うんですが、mciSendString関数を使っているところで「ファイルが見つかりま せん wimm.dll」とエラーが起きてしまいます。 改めて参考書を読み直してみたのですが、特に抜けている個所がなく原因がわかり ません。よろしくお願いします。
322 :
デフォルトの名無しさん :2005/04/16(土) 15:45:49
ソースがどうこうっていうより、こんなとこに文章タイプしてる暇があったら まず最初にGoogleなりで検索するだろ普通。。 なぜ検索してないとわかるか? それは検索してれば一瞬で解決すると思われる問題だから。
つ[ウスター]
>>322 いやー、池沼のお前さんが思っても説得力はないよねー
>>320 のような曖昧な記述だけで、どうしてググればすぐ解決する
問題だと分かる?
答えは君の視野が狭いからです。
325 :
デフォルトの名無しさん :2005/04/16(土) 15:56:59
>>324 この人これマジレスしてるだろ。。
死ぬほど恥ずかしい奴だな君。
まずは"mciSendString vb"で検索してみろ。
出てくるコードを穴があくまで眺めてみることだ。
そして自分の恥ずかしさを実感しろ。
まあ、恥を感じるような感性があればこんなことは書かないだろうけど。
>>324 完璧に記述できるなら、それって原因分かってるってことにならない?
そんなことできる奴がココで質問なんかしないよねー。
視野が狭いというか脳縮んでんじゃねーの。
なんか>324みたいなのが時々涌いてくるな。 恐らくバカな質問してボコボコにされた事がある厨房だと思うので スルーでいこうぜ皆の衆。
331 :
デフォルトの名無しさん :2005/04/17(日) 08:07:56
ADO+ADOデータコントロール+データグリッドコントロールを使ってテーブルの 全てあるいは検索条件に合致したレコードセットを読み取り専用で取得し、こ のデータグリッドのレコードをなんらかの手段で選択すると、その1レコード の内容を、別フォームのグリッドに表示し、そこでユーザーが内容を変更して "更新"ボタンを押したらそのレコードセットをデータベースに反映させるUIを 作成してます。が、作成中に悩むことがでてきました。 まず、データグリッドで何行目が選択されたかをうまく判定できません。Clic kイベントでRowを見ようとしましたが、とある1列を選択したりしても当選Cli ckイベントが発生するので、この場合、Rowがうまくとれなかったりします。 何かうまい方法はないでしょうか。 あと、データグリッドコントロールのレコードセット(読み取り専用)から、あ る1レコードを行ロックで取得し、更新後、データベースを更新するような仕 組みは可能でしょうか。 DBアクセス初心者のため、ご指導願います。 なお、DBはMSDEです。
>何かうまい方法はないでしょうか。 あります。 >可能でしょうか。 不可能です。 わたしはちゃんと質問に答えましたよ。
> 不可能です。 まさか本気で不可能と思ってるわけじゃ・・・
>>333 え?できるの?だって読取専用っていうからさー
>334 331の内容そのまま「データグリッドのレコードセットから取得したレコード」を 編集するのは不可能だな。 別ウィンドウで編集用に表示するのだから、DBGridとは別にデータを持ってくれば そちらでの処理になる。 この場合、排他ロックを掛けていなければ無問題。 まぁ、331にはDBGridのプロパティ一覧を穴が開くほど見て貰うとして。
337 :
デフォルトの名無しさん :2005/04/17(日) 15:03:26
338 :
デフォルトの名無しさん :2005/04/17(日) 16:30:15
MSDNってネットからダウンロードできないのでしょうか? CDからインストールするしかないんでしょうか?
339 :
デフォルトの名無しさん :2005/04/17(日) 16:36:33
>>343 そんなー、皆さんが有能と見込んで質問したのに
無能だったってことですかー?
345 :
デフォルトの名無しさん :2005/04/17(日) 20:00:55
VBScriptで、コマンドプロンプトを起動させるスクリプトを 考えているのですが、以下の Wshell.Run "cmd.exe" のように単純にコマンドプロンプトを起動させる方法しか分かりません。 起動させるコマンドプロンプトの、ウィンドウのサイズと画面上での配置を 指定したいのですが、どなたか分かる人がいらっしゃいましたら、教えて 頂けませんか。
WshShell.Run(strCommand, [intWindowStyle, [bWaitOnReturn]); strCommand は実行するコマンドを表す文字列です。 intWindowStyle はウィンドウのスタイルを表す整数値です。 bWaitOnReturn はスクリプトがコマンドの実行を待つかどうかを表すブール値です。 位置の指定は無理かも。
347 :
デフォルトの名無しさん :2005/04/17(日) 20:18:01
>>345 です
>位置の指定は無理かも。
そうでしたか。何か別の方法を考えて見ます。
レスありがとうございました。
349 :
331です :2005/04/17(日) 22:06:59
>>335 データグリッドに表示(読み取り専用)されたレコードセットにおいて、ユーザー選択した1レコードを
行ロックかけて(編集可で)取得することってできますか?
まずは、データグリッドで選択したレコードの取得からどうすれば良いか分かりません。
すみませんがアドバイスねがいます。
351 :
デフォルトの名無しさん :2005/04/17(日) 22:54:27
>>349 > データグリッドに表示(読み取り専用)されたレコードセットにおいて、ユーザー選択した
> 1レコードを行ロックかけて(編集可で)取得することってできますか?
聞く前に自分で試したら?
353 :
デフォルトの名無しさん :2005/04/18(月) 19:15:15
MLでは放置され、2ちゃんでもこの反応・・・ 悲惨だな。
355 :
353 :2005/04/18(月) 19:22:28
いや、ちゃんと相手してもらってる方でしょ
357 :
デフォルトの名無しさん :2005/04/19(火) 11:39:07
初歩的な質問ですみません。 VB5でCOBOLソースのステップカウンターを作成しています。 ソースをテキストラインで開いて、コメント行とブランク行のスルーし 実行ステップ行のみカウント取得する仕組みです。 ブランク行に色々種類があり tabのみで改行したり、""だったり" "だったりパターンが沢山あって 判定が大変なのですが、うまいブランク行判定のしかたを教えていただけないでしょうか?
>>357 タブと半角スペースを取り除いてから判定
そんなもん使えるのかー
361 :
デフォルトの名無しさん :2005/04/19(火) 12:19:12
>>358 レスありがとうございます
If Trim(strLine) <> then
End IF
のように記述していたのですが、Tab等をコードラインに含む行で
不具合が発生してしまいました。
取り除き方の思考が誤っているようであれば指摘をお願いいたします。
よろしくお願いします。
>>359 当方VBがVer6ではないからでしょうか?ぐぐって引っかかりません。
よろしくお願いします。
>>361 Trim()は両端しか取れないじゃん。
>>361 URLを紹介してもらってるのに何をぐぐってるんだ?
365 :
デフォルトの名無しさん :2005/04/19(火) 12:40:21
>>362 ちから不足ですみません。
判定行 1ステップで完全に空ラインを割愛できる関数や方法は
ないでしょうか?
よろしくお願いいたします。
>>363 RegExp型というのがvb5でみつからなかったので
正規表現が5でつかえる方法がないかをぐぐりました。
BASP21でも正規表現が使えるね。 使ったこと無いけど。
>>365 要らない文字取って""と比較した結果を返す関数作って分岐
そうそう。
>>369 がなぜできないか教えてくれよ。
371 :
デフォルトの名無しさん :2005/04/19(火) 13:39:43
アプリやゲームなどのCDを入れるとインストーラのランチャーで 画像の一部をクリックすると(HTMLのクリッカブルマップのような感じ) インストールが始まるようなのはどうやって作ればいいのでしょうか? InstallShield のような効果なツールを買わないとだめでしょうか?
>>371 setupのソースを好きに書き換えるがいい
374 :
371 :2005/04/19(火) 14:06:48
375 :
デフォルトの名無しさん :2005/04/19(火) 14:33:25
当方XPSP1で、VB6SP6を使用しています。 質問なのですが、キーボードのプロパティキー(って云うの?)を押した時とか、マウスを右クリックした時に出るコンテキストメニューって抑制出来ます? ネットで検索してみたところ、別のコンテキストメニューを作成して表示させる解決法があったのですけど、私の作り方が甘いのか、Escキーを併用すると簡単に元のメニューが表示されてしまったり、 両方順番に表示されてしまったりしました。 Shift+F10は無効化出来たのですが、根本的にコンテキストメニューを表示させない方法はありますでしょうか。
今までやったところのソースを晒すかソースを晒さない理由を 教えてください。
へ へ|\ へ √ ̄| へ ( レ⌒) |\ ( |\)| |/~| ノ ,__√ /7 ∠、 \ . 丶\ _ __ |\_/ /へ_ \) | | | |∠ | |__ | / ! | | |_〜、 レ' レ' \_./| |/ \ .| |( ̄ _) | ) | | i | へ_,/ ノ ,へ / / ̄~ヽ ヽ. | | フ ヽ、 ノ √| | ! レノ | !. \_ ー ̄_,ー~' ) / /| | | | | |( ノ| |`、) i ノ | | \_ノ ノ / フ ! (~~_,,,,/ノ/ | | | | / / | | . し' ノ ノ | | / / | |  ̄ \\ノ | / / | |___∠-". | | ノ / ノ | /( \_ノ_/ / (____) し' ノ/ / / | 〜-,,,__ ∠-''~ ノ/ (_ノ 〜ー、、__)
フォーム上にテキストボックスが一つあるとします。 このテキストボックスをドラッグして大きさを変える場合、 どのようにすれば良いのでしょうか? テキストボックスのMouseMoveイベントを拾っても、 テキストボックスが拡大した場合の座標は拾えません。 宜しくご教授くださいm(_ _)m
>>375 完全に出ないようにしたいのなら、サブクラス化してメッセージをハンドリングすれば良いかと。
WM_CONTEXTMENUとかでぐぐってみれ。
それで出来ないようならソースを晒して。
380 :
デフォルトの名無しさん :2005/04/19(火) 18:49:20
フォームをタイトルバーを消しつつ、マウスで移動できるようにできないのでしょうか? 今は BorderStyle を 0 にしていますが、移動できずに困っています。 可能ならば、やり方を教えてください。
>>380 ReleaseCaptureとSendMessageでWM_NCLBUTTONDOWN,HTCAPTION
だった記憶がある
>>383 お断りだ って書いてあるように見えるな
それより
>>365 の案件が片付いたのか気になる。
あれから何の音沙汰もないが・・・
>>384 VB6だったらReplaceでやっつけるけど、VB5って使えないのかね。
386 :
384 :2005/04/19(火) 20:06:51
>>380 あのさ、「できないのでしょうか?」って失礼だと思わない?
(´-`).。oO(変な奴が常駐してるな)
>>365 はいっそのことExcelVBAで書くってのはどうかね?
391 :
DBアクセス初心者 :2005/04/20(水) 00:14:52
VB6+データグリッドコントロール+ADOデータコントロールでDBアクセスプログラムを 作成中ですが質問があります。 データグリッドに読みこんだレコードセットの任意のフィールドでソートさせたいのですが 簡単な方法はありませんか。 現状、データグリッドにはユーザーが選択した検索条件で検索したレコードが表示されるように なっています。レコードセット取得時でしたらORDER BYで指定できますが、 レコードセットを取得してからはソートできないんでしょうか。
「できないんでしょうか」って失礼だと思わない?
>>391 Sortプロパティで昇順ソートはASCキーワード、
降順ソートはDESCキーワードでできるよ。
ところでActiveX DLLをレジストせずに利用する方法ってありますか?
VBで作成したDLLを、EXCELのVBAから利用しようと思ってるですが、
やっぱりAPIで起動時に登録、EXCEL終了時に解除するのが望ましいでしょうか?
試しにCreateObject ("ここにDLLのパス")としてみたのですが、出来るはずもなく・・・
ない
396 :
デフォルトの名無しさん :2005/04/20(水) 18:20:59
DataRepeaterコントロールを使える方いませんか? 私は事務処理系ソフトを作成しているPGです。今回売上画面作成を担当になり、 Accessのサブフォームのように明細を表示できるコントロールを探していまし た。始めはSpredで作成したのですが、何かが違うなと感じています。 いろいろ調べてDataRepeaterというコントロールが使えそうなのですが、残念 ながら使い方を説明してくれているサイトを発見できませんでした。 もし使った事がある・使っているという方がいましたら、何を参考にしたのか 是非教えてください。
397 :
デフォルトの名無しさん :2005/04/20(水) 18:41:09
あのVBのソフトと書籍売ってる店知りませんか? 今日秋葉、新宿と探したけど両方ともVB.netしか置いてなかったのでorz
>>398 書籍は本屋かオークションで。
VB6は入手不可。
400 :
398 :2005/04/20(水) 21:24:20
>>399 マヂっすか(゜口゜;)
じゃあ家で勉強出来ないのかorz
学校の先生に聞いたら秋葉に売ってるって言ってたのにorz
漏れの今日の一日の努力は一体なんだったんだろ_| ̄|Ο_| ̄|Ο
秋葉ならなおさら無いだろうな
Visual BasicとV.B.NETって何がどう違うんですか?
そんなものありません
ただのグレードアップと見せかけて本当は全然違います。 「.NET」の力はすごいです。
>>405 おおっ、これこそ自分の求めていたものです!
しかしサイド バイ サイド技術ですか。難しい・・・
え?V.B.NETと?
409 :
デフォルトの名無しさん :2005/04/21(木) 09:43:16
VB.NETですた
ホントに全部違う?1個でも違わないとこを出されたら あなたウソつきになっちゃいますけど撤回する気は?
411 :
デフォルトの名無しさん :2005/04/21(木) 13:33:18
ない
414 :
412 :2005/04/21(木) 13:46:00
>>413 即レスありがとうございます。
初歩的な質問で申し訳ないのですが、そもそもWindowsXP上で動作するアプリ開発は
VB6では無理(というか保証外)なのでしょうか?
この様な初歩的な事について書かれている資料やサイトをご存知でしたらご教授下さい。
416 :
412 :2005/04/21(木) 14:25:14
>>415 さんありがとうございます!
とても参考になるサイトを教えてくれて感謝感謝です。
これ見るとVB6でもいけそうですね。
SPは6を当てないといけないのかな?
Win95、Win2000のマシンの混在する職場で共通で使用する
アプリの為、開発環境(コンパイルする為に)をWin95、Win2000
と用意して開発してるのですが、ここにWinXPのマシンが
増える事になって大変です^^;
ご教授下さった皆さんありがとうございました。またちょくちょく
のぞきに来ますね。
>>416 とても参考になるサイトってMSDNじゃん
418 :
デフォルトの名無しさん :2005/04/21(木) 15:26:51
MSDNってとても参考になるサイトじゃん
420 :
sage :2005/04/21(木) 20:19:26
今VB6SP6をwindows2000で使っているのですが、突然dateだけが使えなくなったり、【プロパティList(combo.Text)の参照が不正です】なんてエラーメッセージが出たりしてるんです。何が悪いのでしょうか?
421 :
デフォルトの名無しさん :2005/04/21(木) 20:30:45
>>420 そゆときはVBを再起動。だまって再起動。
424 :
デフォルトの名無しさん :2005/04/22(金) 03:01:20
FileListBoxにファイルを表示させたら、拡張子が表示されてしまいました。 FileListBoxの拡張子は非表示にできますか? 色んなところ検索しても見つからなかったので質問してみました。 よろしくお願いします。
426 :
デフォルトの名無しさん :2005/04/22(金) 11:41:17
>>426 読み込ませているソースが使い物にならないと使い物に
ならないフローチャートが出てくるだろうね。
>>426 目的は何?フローチャートを作ることが目的なの?
429 :
デフォルトの名無しさん :2005/04/22(金) 13:32:35
分岐やループなどが抜き出せればいいのですが、 できればフローを出力したいです。
>>429 仕様書doctorとか使ってみた?
HCPチャートとかでいいんじゃない?
今時フローチャートなんて使わないような気がするけどなー。
>>426 てかさ、お前が目的に合ったソフトを選んでないだけなのに
使い物にならないってのはおかしいんじゃないの?
秀丸のVB6.0の強調ファイルってないですか?
434 :
デフォルトの名無しさん :2005/04/22(金) 17:52:48
こんばんわ もりしんいちです VB6を購入したいのですが、どこで買えますか? できるだけ安いほうがいいです。 やはりオークションでしか買えないのでしょうか。
>>434 正規に買うならMSDNになるかな?
オークションで買うならMSに正式にライセンスの手続きをする事
436 :
デフォルトの名無しさん :2005/04/22(金) 20:25:06
簡単なことで申し訳ないのですが、べき乗の演算優先順位を教えていただけませんか? VBからコードを移植しているのですが、ググってみても見つけられないのです・・・ X = A * B ^ 2 この場合は、どちらが先に計算されるのでしょう?
>>436 演算子の優先順位はMSDNに書いてあるじゃないか。
気になるなら()をつければいいだろ。
失礼しました。MSDNにて解決しました(多分)。 移植元のVBコードが前述のように記されておりまして、 VBが手元になく実証できなかったもので慌ててしまいました。
>>438 アホか。ここでウソ教えられたらどうする気だったんだ?
440 :
デフォルトの名無しさん :2005/04/22(金) 21:30:44
っていうかさあ、わざわざ数学の規則と違う優先順序にしないだろう、 ぐらいの見当は付くでしょ普通。 どう考えても「にえっくすじじょう」のつもりでコードかいたら 「よんえっくすじじょう」になっちゃうような意地悪な優先順序にするはずがない。
Forthという楽しい言語もあるけどな
>>440 それは順序じゃなくて2が4に変わってるんですが。
>>435 あれ?なんでお前に注意されなきゃなんねーの?
444 :
デフォルトの名無しさん :2005/04/22(金) 22:03:59
>>442 おいおいマジレスかよ。。。
いまじゃこんな人種でもプログラミングすんのか
本気で間違えたのを本気で指摘しちゃダメって ことなんじゃないの?
execl、wordからvbプログラムを呼べるようにする方法があったと思うのですが 誰か方法を教えてください。 よろしくお願いします。
>>447 ある程度グーグルで検索したと思いますが、
どういうキーワードを入れて検索したら見つからなかった
のでしょうか。
"execlから" "vb"ですが
薄い記憶ではツールバーかその下あたりにカスタムで呼べるように出来たのを見た気がするんですが・・・ もうVBAで組んだほうが早い気がしてますが・・・・
451 :
デフォルトの名無しさん :2005/04/22(金) 23:51:35
っていうか煽りじゃなくてマジで「呼ぶ」ってどういう意味? マクロから別のアプリを起動するって意味か? それならshellでいいと思うけど。
うーんと、マクロはは無関係でVBで作ったexeをツールボックス付近に登録できた気がするんですが勘違いですかね・・・・
ツールバーでした
454 :
デフォルトの名無しさん :2005/04/23(土) 00:01:47
アドインって奴か?
コントロール配列のIndexを変える方法ってありますか? 実行時にコントロールを削除した場合に、Indexも変える必要があるのでは?と 思うのですが、こういった場合、どうするんでしょうか?
>>458 やっても分からなかったから聞いてると思いますよ。
VB6アプリケーションって、VB.NETじゃ作れないの?
プロパティにIndexってあるじゃん。そこを変えれば良い。
462 :
デフォルトの名無しさん :2005/04/24(日) 00:50:51
少しばかり助けていただきたいです (2のn乗-1) \ (24*60*365)をやらせて出力するプログラムなのですが 割り算のところでオーバーフローします ソースは以下の通りです、初心者なので汚いのは勘弁m(_ _"m) --------------------------- Option Explicit Private Sub Command1_Click() Dim tmp, ans, loops As Currency tmp = 1 Dim inp '入力処理 inp = Val(Text1.Text) '階乗処理 tmp = 2 ^ inp 'デバッグ用@(無しでもいい) Text2.Text = Chr(10) & Chr(13) & "debg tmp:" & tmp '計算 ans = (tmp - 1) \ (60 * 24 * 365) '出力 Label1.Caption = ans & "年" End Sub --------------------------- 変数宣言のところをCurrencyにしたりバリアントにしたりしてみましたが、どうもできません。
463 :
462 :2005/04/24(日) 00:52:32
追加 入力したい数値の最大値は50です。 お願いします。
464 :
デフォルトの名無しさん :2005/04/24(日) 01:07:13
>>462 学生さん?学校の授業ならこういうことはたいてい真っ先に教えてくれる
はずだと思うんだけど。まあ、最近は先生の質も(以下略
60 * 24 * 365
60も24も365も小数点も型宣言文字もないから、Integer型の値として扱われる。
だから演算結果の型もInteger型になる。
しかし、
60 * 24 * 365
この結果はいうまでも無くInteger型で扱える値の範囲を超えている。だから例外が発生する。
どうでもいいけど[Xのn乗]って普通「階乗」って言わないと思う。
階乗ってのはX!のことだよ。
貴重な授業時間を特定の言語の仕様の解説に費やす先生の方が問題だと思われ。
だから高卒は(以下同文
467 :
デフォルトの名無しさん :2005/04/24(日) 01:17:45
>特定の言語の使用 馬鹿丸出し。 プログラミングの授業ってのはたいていデータ型の意味とか 演算誤差とか、言語に関係ない普遍的な内容からはじめるものだ。 まともな学校ならね。
こんどは専門学校出身の方が出現されたようです?
469 :
462 :2005/04/24(日) 01:51:47
2のn乗を階乗なんて書くなんて馬鹿だなぁorz
>>464 >all
えーっと、どうすればいいのでしょうか?
60,24,365をCurrency変数として宣言?
-----------------
Dim sec, hour, day As Currency '追加
sec = 60: hour = 24: day = 365 '追加
ans = (tmp - 1) \ (sec * hour * day) '修正
---------------------
やっぱ無理です
VBはいいところもあるが、あいまいなところがあって難しいですね
>>469 >Dim sec, hour, day As Currency
この書き方だと前の2つはVariant型になる。
>>470 嘘?
まじで?
どっかのサイトで
Dim a As integer;
Dim b As integer;
Dim c As integer;
と、
Dim a As integer, b As integer, c As integer;
と、
Dim a, b, c As integer;
は同じって書いてたような
>>471 それはVB.NETだろ。
証拠
Dim a, b, c As Integer
a = "test"
>>472 あ〜そっか。
ごっちゃになってたスマソ
お前らさぁ、この手の簡単な質問来るとホント食い付きいいよなぁ。 難しいっつーか、微妙にレベル上がっただけで普段はダンマリしてんのにな
質問です VisualBASIC6.0 LearningEditionって、StandardEditionと何が違うの?
名前が違う。 あとさ、なぜMicrosoftのHPで調べないか教えて。
477 :
デフォルトの名無しさん :2005/04/24(日) 11:46:17
>>469 ってBasicとかPerlとかJavaScriptとかのインタプリタ言語人間なんじゃ?
ああいうの型とか明確にされてないし
479 :
デフォルトの名無しさん :2005/04/24(日) 11:58:44
>>456 そんな冷たい言い方しないで教えてくださいよ
検索が下手だから使えないのかもね
>>485 だからないって言ってるんだけど。
あるかないか関係あるのか?
>>486 おまえに関係無いのに言う必要あるのか?
490 :
デフォルトの名無しさん :2005/04/24(日) 16:34:47
VB5 Learning Edition かなり以前に購入したのですが、 SP3をもっていません。サポート外とはおもいますが、 どこかでダウンロードできませんでしょうか?
Learning EditionはMS公式もサポート外になってるな
492 :
デフォルトの名無しさん :2005/04/24(日) 17:41:43
>>491 ありがとうございます。つまりLearning Editionには最初からSP3は
なかったということでしょうか?
いずれにしても、ここのサイトみてると各バージョンでの
ラインタイム動作が不定なのでいまから力を入れてプログラム組むのが
不安になります。(完全上位互換ではないようですね?)
ランタイムが必要なVBではどのエディションでもついてまわる
問題なのでしょうか?
ttp://www.takami.com/hp/news.htm
>>492 今から力入れるならC#とか.Net系にしろよ。5.0なんてやっても時間の無駄だぜ?
VBスレでC#かよ
>>494 おいおい…使ったことが無い人は黙ってた方がいいよ。
496 :
462 :2005/04/24(日) 18:22:31
>>477 自分なりにがんばってみたんですけど
2^50 \ (60*24*365)
ここでオーバーフローする原因がよく分かりません
.netだと動くのですけど、なんでだろ
498 :
デフォルトの名無しさん :2005/04/24(日) 18:26:41
オイオイマジカヨ テイウカ、セッカクノニチヨウビクダラナイツリシテタノシイカ?
>>496 \演算子
除算を実行する前に、数式はバイト型 (Byte)、整数型 (Integer)、または長整数型 (Long) の式に丸められます。
2^50ですでに。
>>496 桁数が超えてるから
アクセサリの電卓で関数電卓モードのQWORDでそれ計算して見ろ
Currencyの桁数オーバーしとるわ
502 :
デフォルトの名無しさん :2005/04/24(日) 18:38:21
>>490 Learning Editionって、SP適用できない、とどこかのサイトで読んだ。
いくつからかは覚えてないけど。
503 :
490 :2005/04/24(日) 19:11:30
>>502 ありがとうございます。VBでLEは鬼門ですね。
それはそうとVB6もサポート打ち切りとのことですし、
過去の資産を考えると
SP、ランタイムとも、自分で保管することを心がけ
なければ大変なことになりそうですね。
>>496 2 ^ 50 / (60 * 24 * 356&)
型宣言文字のことを2回も指摘されてるのに。
505 :
462&496 :2005/04/24(日) 20:50:20
サンクス>>all とりあえず自己解決しました vb6でlongやCurrency使おうとしたことが間違いだった そういえば.netのlongって64ビットだったんですね
Currencyってなんですか?GetDiskFreeSpaceExの戻り値を Currencyで受け取っているサンプルを見たことがあるのですが、 それは正しい使い方でしょうか?
じゃあもう一度しっかり調べてきてください
>>506 Currencyは8バイトで小数点以下4桁の固定小数点型。
内部では10000倍して64bit整数として値を格納している。
だからそういう使い方でもたしかに動く。(良いか悪いかは別として)
Currencyは8バイト Currencyは8バイト
>>506 オイラもLONGLONG型を必要とするAPIなんかでは
よくCurrency型を使ったりするよ。
ただ、APIとかとやり取りするときはいいんだが
それをそのまま計算に使うと
浮動小数点になっちゃう場合があるんで注意が必要。
(別にAPIがらみの問題って訳じゃなくてCurrecy型の注意点だけどな)
意味がわかって使ってるなら「間違った使い方」じゃないんでないかな。
LONGLONG型を必要とするAPIって、他にどんなものが ありますか?
514 :
457 :2005/04/25(月) 12:44:52
>>461 >プロパティにIndexってあるじゃん。そこを変えれば良い。
例えばForm上に、Text1(0)とText(2)があるとします。
Text1(2).Index = 1 とすると
値の取得のみが許されているプロパティに云々というエラーが出てしまいます(つД`)
そりゃそうだろ。
516 :
デフォルトの名無しさん :2005/04/25(月) 20:03:07
VB5.0で拡張メタファイルをクリップボードに転送致したく。 メタファイル→ピクチャオブジェクト作成→クリップボード転送 ↑の流れで組んでいるのですが、クリップボードにピクチャオブジェクトを 設定する方法がわからず困っとります。ご教授願います。
517 :
デフォルトの名無しさん :2005/04/25(月) 20:27:15
winows2000のPCでVisualBasicプロジェクトのASP.NET Webアプリケーションでプログラムを作ったんだが ログオンユーザーAで作ったプログラムをログオンユーザーBのほうで開いたけど 実行は出来るが編集するソースというかプログラムが出てこない。 権限はどちらもあるんだけどなぜでしょうか?
>>514 プログラムの中でIndexの値を変えたいっていうなら無理。
今、VB6.0の勉強をしているのですが、 人がつくったソースを見てそれをいじりながら勉強したいと思うのですが、 どこかにそういったものはありませんでしょうか?
522 :
457 :2005/04/26(火) 01:33:14
すると
>>457 の場合、どうしたら良いのでしょうか?
実行中に、コントロールを削除した場合の処理をどうすうれば良いのでしょう?
コントロールを削除すると、Indexに欠番が出来てしまいますよね?
>>522 欠番があると支障がでるかやってみればわかる、
と458で回答されてるのに。
>>520 //www2j.biglobe.ne.jp/~little-g/cgi-bin/hajikariqa.cgi
#902〜
>>523 配列の添字を使ってループさせたい場合に、面倒な事になると思うのですが・・
>>525 Dim o As Object
For Each o In Text1
Debug.Print o.Index
Next o
別に生成したオブジェクトにデータを渡す場合に同期がとれないのではないかと・・
何故にちびちび条件が増えるんだ?
>>525 コードで削除するのに、管理できない理由がわからない。
削除したのをスキップするだけなのに。
まぁ、そのまえに削除するケースなのかどうかが問題な気もするが・・・・ 別にVisible=Falseとかでもいけるのならそっちのがいいでしょ? まぁ本人次第だが
削除したら勝手にIndex詰まらなかったか?
>>532 デザインの時も詰まらないよ。
TabIndexは詰まるけど。
MSFlexGridの外枠の大きさを中の表のサイズに自動に合わせる方法はないでしょうか? どなたかヘルプお願いします。
俺の記憶違いだったか・・・
>>534 そう言えば、XPとそれ以前では中のサイズが違うし。
自分で計算式を導け。
>>533 次に追加する時、若い空き番号から埋まっていくだけだったか。
539 :
519 :2005/04/26(火) 23:11:54
>>527 for i=1 to 10
txtbox(i).text=str(i)
next i
もし、こういうコーディングをしていて
テキストボックスを削除する場合があるんで
どうすればいいかというんだったら、
コントロール配列の分だけboolean型の
動的配列かなんか用意して、コントロール
配列を削除した場合にコントロール配列の
インデックスと同じ添え字の配列にfalseを入れる。
で、
j=1
for i=1 to 10
if flg(i)=true then
txtbox(i).text=str(j)
end if
j=j+1
next i
とかするしかないんじゃね?
そもそもコントロール配列を削除する場合があるのに配列でループを
回すって言うのが、おかしいような気がするけど。
どんなソースになっているか分からんのでなんともいえない。
541 :
デフォルトの名無しさん :2005/04/26(火) 23:25:17
VBでMTA作るのって可能でしょうか?
VB6.0で、変数の大文字、小文字が勝手に統一される 機能って抑止できる?
543 :
519 :2005/04/26(火) 23:33:32
間違えた。 j=j+1はif文の中のtxtbox(i).text=str(j)の次の行に入れてくれ。
545 :
デフォルトの名無しさん :2005/04/26(火) 23:46:43
なんかアホ質問に馬鹿回答って感じだな。。 しかし口調が偉そうな奴はどうして揃いも揃って馬鹿で無能なのか。
↑↑↑
>>544 そういうことでなくて、例えばある関数の中で
Dim iRet as Integer
というのがあって、新しく追加した関数の中で
Dim iret as integer
などとすると、元々あった関数の中のiRetがiretに変換されて
しまう機能のことです。
>>547 そんなことにはならない。
宣言してない場合は最新の表記に統一されるけど。
>>548 なるよ。VB6の話だけど。
それ以前のVBは知らん。
かっこいい画面を作ってその裏の処理がVBって作れるのかしら? かっこいい画面というのは、flashかそれ類似のUIを目指したいのです。 最近のアプリはmedia playerだとかUIがキレイ系なものも多いですが、 ああいうのは何で作っているのかしら?
552 :
550 :2005/04/27(水) 02:38:25
553 :
548 :2005/04/27(水) 02:38:45
>>547 確認。orz
IDEを使う限り、このおせっかい機能は切れないみたい。
どうしても変えたければ、保存した後にエディタで手を加えるとか。
でも、表記は統一したほうがいいと思う。
メッセージボックスがでている間にタイマーイベントが発生するかしないかというのは IDEで実行しているときと、exeにしたときで動作が違いますか? メッセージボックスがでている間にタイマーイベントが発生しないか 発生しても無視するようにする 簡単な方法ってありますでしょうか。
555 :
デフォルトの名無しさん :2005/04/27(水) 02:44:53
CopyHere methodを使ってフォルダ内のファイルをコピーしようと思ったんだけど C:\Testを指定すると、Testフォルダを含めてコピーしてしまいます。 Testフォルダを含めずに、Testフォルダの中身だけをCopyHereで コピーすることってできますか?
>>550 かっこいい画面つったって
所詮、画像を表示しているだけじゃん。
>>555 CopyFileメソッドでワイルドカードを使えば?
559 :
デフォルトの名無しさん :2005/04/27(水) 11:02:35
>>559 コードレベルでは問題ないはず。
コントロールの張替えなどすれば大体動きます。
561 :
デフォルトの名無しさん :2005/04/27(水) 17:30:10
VB6.0にて、テキストボックスAとテキストボックスBを設けて、 「Aに文字を入力すると、仮名漢字変換前のフリガナをBに表示する」 というものを実現したいです。どうすればできますか?
563 :
534 :2005/04/27(水) 19:05:24
OSによってサイズが変わるのですが、対処方法はないですか?
>>563 3の倍数のポイント数ならOKだったような。
もともと半角全角の組み合わせでズレる仕様を突然XPで修正したのが原因。
でも、9ポイントは小さすぎるし、12ポイントは大きすぎるし。
>>561 >>562 のレスを参考に「VB6 PHONETIC」でググったら
何やら使えそうなお手本発見。あとは自力でなんとかなるっしょ
566 :
デフォルトの名無しさん :2005/04/27(水) 20:34:35
>>559 さすがにネタでしょ?何周回遅れだよw
そういうのは『ここだけ時代がxx年ずれてるスレ』でやっておくれ。
567 :
デフォルトの名無しさん :2005/04/28(木) 00:23:59
VB6.0 ADO SQLServer を使います。 テーブル作成用のSQLファイルが既にあり そのSQLファイルをVBからキックしてテーブルを作るプログラムを作ろうとしているのですが SQLファイルをADO等で実行する事って出来ますか?
Inetコントロールで、ExecuteでHTTPデータを転送し、GetChunkでサーバからの応答を 文字列で受信するとき、受信したデータの中に"http/"という文字があると""が取得されてしまうのですが これはどうにもならないのでしょうか? バイナリ配列でも同じ結果でした。
569 :
550 :2005/04/28(木) 00:56:46
>>556 画像を表示って?
たとえばRealPlayerのUIと同じものをVB6で作るということはできることでしょうか?
あるいは言語を変えるべき話なら何がよいのかしら。
>>567 おれは知らないけど、DDLとADOで検索してみては?
>>569 あなたは才能が無いから、あきらめてください。
>>569 UIという表現は曖昧すぎて何を知りたいのか他人には伝わらない。
うい ノ
574 :
550 :2005/04/28(木) 01:10:52
>>571 才能の問題は誰しも抱えているので。。
>>572 見た目にキレイなボタンとか、タブとか
ウィンドウの縁とかそいういうものを実装したいという話です。
>>574 たとえば、ハート型のフォームも丸いボタンもVBで可能。
556が言うように、すべてスクリーンに描画してるだけ。
576 :
550 :2005/04/28(木) 01:21:52
>>575 どの辺にサンプルがあるかご存知でしょうか。
リージョンとか穴あきウィンドウでググれ
579 :
550 :2005/04/28(木) 01:29:34
>>577 知らないならしょうがないけど
検索のキーワードくらいは教えてよ
低能が
581 :
550 :2005/04/28(木) 01:33:44
582 :
デフォルトの名無しさん :2005/04/28(木) 04:12:08
VB6で、CDRにデータを焼きたいんだけど どこか参考になるサイトってありますか?
>567 ConnectionオブジェクトのExecuteメソッドにSQLファイル内容文字列を渡して実行
環境 VB6.0+WEBブラウザコントロール VBでIEのプロキシーサーバ設定を変更させて即時WEBブラウザコントロールを使った通信に反映させる 方法っていいのしらないですか?レジストリ変更まではやってみたんだけど反映されないのよね^^ HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings にある ProxyEnable ProxyServer を変えてみたんだけど・・・ 再起動したら反映するんだけどそれだとね〜 えろいお兄さんおしえてください。
586は、しらかわよふね(w
588 :
ユーザー :2005/04/28(木) 15:17:16
VBで作成した画面で、郵便番号入れたら自動的に住所がある程度まで 入力される仕組みになっています。このとき、IME辞書ではなく、INPUTMANという 郵便番号辞書を使っています。ところがこれが、年に2回しか更新されないので 市町村合併の相次ぐ今、郵便番号辞書が古いままの状態となり困っています。 郵便番号辞書を最新に更新する方法、どなたかご存じありませんか?
文化オリエントに文句言えばいいじゃない。どうしてくれるんだと。
>>584 おそらくプロセス生成時にメモリに読み込んでいるので、
そういう機能が提供されていなければできないかもしれません。
プロキシサーバを自作してIEにはそれを使うように設定し
自作のプロキシサーバの設定を変更していくという作りにしてはどうでしょう?
かつてそんなソフトもありましたし。
あぶねえあぶねえ。いっかり押すとこだった。ウイルス情報読んでて良かったよ。
なんなの?そこ。
>>591 マジでしゃれですまされんことしちゃったね。
>>591 話が大きくならないうちに、自分で削除依頼出しておけよ
もう手遅れかもしれないけどな
ウイルス張られた時の反応からこのスレの住民の特徴が分かった。
警察庁のネットワーク・セキュリティ対策室は実績をあげようとやっきになってるし。
>>591 を実験台として提供してもばちは当たらんだろ。
604 :
デフォルトの名無しさん :2005/04/30(土) 04:15:35
>>590 なるほどいいことおもいつきましたねー
ってそれだったらWEBブラウザコントロール使わずに
WINSOCKつかってやってるわよ。フフフ
でもお兄さんのなんとかしてあげたいって思いがつた
わってきてよかったわよ
UrlMkSetSessionOption
607 :
デフォルトの名無しさん :2005/04/30(土) 20:53:54
すまん、ちょっと教えておくれ vb6.0のソースってVB.NETで開けますかね 開くというか、移行できるのかお聞きしたいのですが ある程度は、VB.NETが修正してくれて、細か部分は 人間が修正するみたいな。 それともまったくVB6のソースは、移行できずに 作り直しなのかな
608 :
デフォルトの名無しさん :2005/04/30(土) 21:01:36
VBは素人なんで詳しいことは分からんけど
vb6.0のソースはVB.NETで開けますよ
想像してる通り、.netが修正してくれますけど
型変換なんかがうまくできない場合がよくあります。(私だけかも
それにしても
>>591 うざ こういうのが居るから重いノートン立ち上げてないといけないんだよなぁ
コントロールのVisibleプロパティを変更しているのに 変更されなかったりするのってどんなときですか?
>>610 Visibleプロパティは変更されているんじゃないかな。
ただ目に見えている内容はVisibleと一致する訳じゃないよ。
Visibleプロパティは「(次回)描画すべきタイミングで描画するか」の
ON/OFFであり、描画する/消去するを行うものじゃないってことだよ。
不一致となる時間を短くしたいならRefreshメソッドなんかを呼んでみたら?
>>614 いや、デバッグで見るとVisibleプロパティが変わっていないのですよ。
1つのフォームインスタンスに対して2回ShowDialogを呼ぶとか
ってNGですかね。
自分なりに問題を単純化してみたのですが、 Form2にButton1、Button2を貼り付けておいて、 Form1からForm2をShowDialogで開きます。 1回目は、Button1、Button2共にVisibleプロパティが Trueとなっているのですが、続けてShowDialogを 呼び出すと、今度はButton1、Button2共に VisibleがFalseとなっており、こうなるとTrueを 代入しても変わらないようです。何が悪いのでしょうか。
>607 変換すると言っても、色々制限があって面倒なので、作り直した方が 早かったりする。 例 Set AAA = Nothing は変換してくれない。 コメントアウトされて、要修正箇所のリストに追加される。 WebClassも変換してくれるが・・・ Windowsアプリケーションを変換した場合よりも修正箇所は少なくて 済むが・・・ 仕様変更や修正を行おうとすると面倒でなぁ。
619 :
デフォルトの名無しさん :2005/04/30(土) 23:17:08
VB使いって本当に進歩がないな。今の時代あえてVB使ってる人って少なくとも
2年以上触ってるわけだろ?それでこんなレベルで悩んでいるのか。。
>>616 >1つのフォームインスタンスに対して2回ShowDialog
「1つのフォームインスタンス」じゃないんだよきっと。
620 :
デフォルトの名無しさん :2005/05/01(日) 02:28:58
Visual Basic 6.0 Enterprise Edition の通常版とアカデミック版の 見分け方はありますか?(箱のシール以外で) また、アカデミック版では制限されている機能とかはあるのでしょうか? お願いします。
>>619 すいません。スレを間違えていたことに今気が付きました。
VB.NETでした。
ちなみに問題はもう解決しました。では。
>>621 ShowDialogって時点でVB6じゃないことは分かっていたが、
>>619 は何を思って「1つのフォームインスタンスじゃない」とか
言ってるんだ?
とりあえず言ってみたってやつ?
とりあえず言ってみた。すまん。
む〜ん
625 :
デフォルトの名無しさん :2005/05/04(水) 14:31:29
専門学校で電卓を作るプログラムの課題が出たのですが、四則演算の計算は出来るようになったの ですが、=を連続で押したときに結果が変化していきません(例:1+1=2=3=4=5)。どうしたら上手く出力 することが出来るのでしょうか?教えてください、お願いいたします。
>>625 一個前の行動を覚えておいて2度目以降の=ならそれを繰り返すだけでは?
こんばんわ ドライブコントロールがユーザーによって変化したことを フォルダパスに伝えるコードがあるんですが Private Sub Drive1_Change() ' ドライブ名をディレクトリリストボックスに割り当てる Dir1.Path = Drive1.Drive End Sub デバッグで調べたところ Drive1.Driveには"c:\"となっているんですが、 代入されたDir1.Pathには"c:\Program Files\Microsoft Visual Studio\VB98"とフルパスになっています。 どうして"c:\"の代入が"c:\Program Files\Microsoft Visual Studio\VB98”と変化されるのでしょうか?
>>627 MS-DOSの流れから、
ドライブごとにカレントディレクトリを管理してたんじゃなかったっけ?
629 :
627 :2005/05/04(水) 15:04:10
>>628 "c:\"をDirListBoxのDir1.Pathに代入しても、自動的にカレントディレクトリに修正されるということですか?
>>629 コマンドプロンプトやMS-DOSでドライブやディレクトリを変えて
色々ためしてみたらいいのに。
Print #〜 でテキストファイルに出力すると、必ず改行されてしまうのですが、 改行しないようにするにはどうすればいいのでしょうか。
>>631 MSDNでPrint # ステートメントの説明を熟読せよ
どうすればいいかしっかり書いてある
業務でVB6を使わなきゃならなくなった NETへ移行は済んだと思いきや、 VB5や6で稼動してるアプリがたくさんあるあるw まぁWin32やMFCをこなしてきた俺からしてみれば簡単やね>VB6 今週中には全てマスターしようと思ってる。 寝ながら気楽にやるけどさ、まぁ大変。
r;ァ'N;:::::::::::::,ィ/ >::::::::::ヽ . 〃 ヽル1'´ ∠:::::::::::::::::i i′ ___, - ,. = -一  ̄l:::::::::::::::l . ! , -==、´r' l::::::/,ニ.ヽ l _,, -‐''二ゝ l::::l f゙ヽ |、 ここはお前の日記帳じゃねえんだ レー-- 、ヽヾニ-ァ,ニ;=、_ !:::l ) } ト ヾ¨'7"ry、` ー゙='ニ,,,` }::ヽ(ノ チラシの裏にでも書いてろ :ーゝヽ、 !´ " ̄ 'l,;;;;,,,.、 ,i:::::::ミ ::::::::::::::::ヽ.-‐ ト、 r'_{ __)`ニゝ、 ,,iリ::::::::ミ ::::::::::::::::::::Vi/l:::V'´;ッ`ニ´ー-ッ-,、:::::`"::::::::::::::;゙ , な! :::::::::::::::::::::::::N. ゙、::::ヾ,.`二ニ´∠,,.i::::::::::::::::::::/// :::::::::::::::::::::::::::::l ヽ;:::::::::::::::::::::::::::::::::::::::::::/ / ::::::::::::::::::::::::::::::! :|.\;::::::::::::::::::::::::::::::/ /
初歩的な質問になりますが ディストリビューションウィザードはどこにあるんですか?
>>635 特別な理由が無い限り、Visual Studio Installerを使ってください。
637 :
デフォルトの名無しさん :2005/05/04(水) 20:06:04
>>636 なんで?
ディストリビューションウィザードしか使ったことないんですけど。。。
いや、冗談でなく「異民族に庇を貸して母屋をとられた主権国家」っていう悲惨な 事例は、現代史に実在するよ。 インドに吸収されたヒマラヤ周辺の小国・シッキム王国がそう。 シッキムは下層労働者階級として入ってきたネパール人が古くからの住民を人口で 圧倒し、かれらを裏で操るインドが圧力をかけたこともあり、住民投票でインド併 合が決定。シッキム王国は消滅してしまった。 いまや原シッキム人たるモンゴロイド系のレプチャ民族は、ほんらいニューカマー にすぎない征服者ベンガル・アーリア人に屈辱的な差別支配をされ、客観的にみて も辛く悲しい立場にあるという。まさに移住を隠れ蓑にした侵略だ。
640 :
637 :2005/05/04(水) 20:24:38
何この壮絶な誤爆
いや、こりゃこのスレも教えてクンを装った他言語崇拝者に 乗っ取られる可能性があるから注意せよ、という説話じゃないか?
643 :
デフォルトの名無しさん :2005/05/04(水) 23:21:09
>>626 解決策を教えていただきありがとうございました。しかしまだプログラミングについて あまり理解していないので、いろいろ試して動かしたのですがどうしても思うように動いてくれません。 どうしたら出来るのでしょうか?もし宜しかったら教えていただけないでしょうか? 現在の演算処理の部分のソースコードは以下のようです。 Private Sub cmdenzan_Click(Index As Integer) If suuti = "Number" Then Select Case enzanflag Case False box1 = txthyouji.Text enzanflag = True Case True box2 = txthyouji.Text Select Case botan Case "tasu" txthyouji.Text = box1 + box2 Case "hiku" txthyouji.Text = box1 - box2 Case "kake" txthyouji.Text = box1 * box2
644 :
デフォルトの名無しさん :2005/05/04(水) 23:22:55
ゴメンナサイ。続きです。 Case "wari" If box2 = 0 Then txthyouji.Text = "0で割ることは出来ません" Exit Sub Else txthyouji.Text = box1 / box2 End If End Select box1 = txthyouji.Text End Select End If Select Case Index Case 0 botan = "tasu" Case 1 botan = "hiku" Case 2 botan = "kake" Case 3 botan = "wari" Case 4 botan = "equal" End Select suuti = "syurui" End Sub
645 :
631 :2005/05/04(水) 23:28:19
>>632 あ、回答くれてたんですか。回答が遅いからとっくに
自己解決しちゃってましたけど。
まあご苦労酸です。
646 :
デフォルトの名無しさん :2005/05/04(水) 23:33:21
VB6でテキストファイルにxor演算をかけたいのですが 上手くいきません。たぶん、文字列の1バイトごとに アクセスできれば可能かと思うのですが、良いやり方を 教えていただけませんでしょうか?
>>646 今はどうなっていて、どう上手くいっていないのかくらい書けよ。
聞かなくても想像はつくけどさ。
>>647 すみません、実はVB始めたばかりで
今まではC言語をやっていました。
上手くいかない、というかやり方が分からないのは
VBの文字列型(string ?)の1バイトずつのデータに
アクセスする方法です。
文字操作の関数を調べてみたのですが、1バイトではなく
あくまで1文字ずつの取得しか出来ず、全角文字が入っていると
上手くいきません。
C言語では配列で1バイトずつxorをかけることができました
質問ですが、 Imageコントロールと PictureBoxコントロールの違いはあるんですか? 共に画像を表示させるものだと思うのですが。
653 :
なぞ :2005/05/05(木) 06:59:52
単発質問じゃまずいそうなので、ここに投稿することにします VBでプログラム作成してるんですけど、 DataReportで、帳票作成して オープンしたとき、既存で印刷ボタン(プリンタのマーク)と エキスポートボタン(本のマーク?)がでてきますよね。 それで、そのエキスポートボタンを消したいんですが どうすればいいのでしょうか???? 既存なので無理なのでしょうか??使用させたくないんです。。。
655 :
デフォルトの名無しさん :2005/05/05(木) 08:27:16
ごめんね
656 :
デフォルトの名無しさん :2005/05/05(木) 08:27:31
本当にごめんなさい。
657 :
デフォルトの名無しさん :2005/05/05(木) 08:28:04
すいません
658 :
デフォルトの名無しさん :2005/05/05(木) 08:28:10
ごめんなさい
659 :
デフォルトの名無しさん :2005/05/05(木) 08:28:12
これまでの数々の無礼をお許しください。 本当に申し訳ございませんでした。
660 :
デフォルトの名無しさん :2005/05/05(木) 08:28:16
ゆるしてください
661 :
デフォルトの名無しさん :2005/05/05(木) 08:28:20
今までご迷惑をおかけしました
662 :
デフォルトの名無しさん :2005/05/05(木) 08:28:49
う〜ん、ごめりんこ
663 :
デフォルトの名無しさん :2005/05/05(木) 08:28:51
反省しています
664 :
デフォルトの名無しさん :2005/05/05(木) 08:29:35
>< ごめんなさい
665 :
デフォルトの名無しさん :2005/05/05(木) 08:30:07
ごめwwwwwwwwwwwww
666 :
デフォルトの名無しさん :2005/05/05(木) 08:30:38
ごめんなさい
667 :
デフォルトの名無しさん :2005/05/05(木) 08:30:47
心お入れ替えて精進します
668 :
デフォルトの名無しさん :2005/05/05(木) 08:30:47
例の件については深く反省してます。
669 :
デフォルトの名無しさん :2005/05/05(木) 08:31:16
ごめんよ
670 :
デフォルトの名無しさん :2005/05/05(木) 08:31:28
ごめんなさい
671 :
デフォルトの名無しさん :2005/05/05(木) 08:31:28
VIBBERどうし うはwwwwww
672 :
デフォルトの名無しさん :2005/05/05(木) 08:31:46
>>663 あぁ例の件ね。
ホント反省してくれ!!
あのときはマジむかついたんだから
673 :
デフォルトの名無しさん :2005/05/05(木) 08:32:01
もうしません。申し訳ありませんでした。
674 :
デフォルトの名無しさん :2005/05/05(木) 08:32:24
VIPからきましたwwwごめんねwwwwwwwwwwwwwww
675 :
デフォルトの名無しさん :2005/05/05(木) 08:32:30
すんませんっしたっ!
676 :
デフォルトの名無しさん :2005/05/05(木) 08:34:05
もうしません。申し訳ありませんでした。 もうしません。申し訳ありませんでした。 もうしません。申し訳ありませんでした。 もうしません。申し訳ありませんでした。 もうしません。申し訳ありませんでした。
あwwwwwっうぇ
678 :
デフォルトの名無しさん :2005/05/05(木) 08:37:57
679 :
デフォルトの名無しさん :2005/05/05(木) 08:38:56
すまんこ
680 :
デフォルトの名無しさん :2005/05/05(木) 08:40:35
681 :
デフォルトの名無しさん :2005/05/05(木) 08:42:02
もうしません。申し訳ありませんでした。
682 :
デフォルトの名無しさん :2005/05/05(木) 08:43:37
683 :
デフォルトの名無しさん :2005/05/05(木) 08:48:09
ごめんなさい
684 :
デフォルトの名無しさん :2005/05/05(木) 08:59:47
ごめんねwwwwwwwwww
685 :
デフォルトの名無しさん :2005/05/05(木) 09:01:22
ごめす
686 :
デフォルトの名無しさん :2005/05/05(木) 09:23:26
うはwwwwスマソwww
687 :
デフォルトの名無しさん :2005/05/05(木) 09:26:42
今まで迷惑かけてすみませんでした。 ごめんなさい
謝って済む問題じゃないね。
自作自演氏ね
>>653 単発質問スレの削除依頼はまだ出してない?
>>690 単発質問の何が悪いの?てか、単発質問って何?
>>691 2ちゃんねる初心者か。
半年はROMってろ。
>>692 5年くらいやってますが知りません。勝手にルール作ったんですか?
>>694 5年やってて知らないのですから、あなたの脳が
作ったルールということでしょう。
単発以外の質問って何?
697 :
695 :2005/05/05(木) 16:21:10
あー、自己レスだけど言いたいことは分かったわ。 でも削除依頼なんて何の意味もないし、かえって迷惑だってのは ご存知ないようで。
どっちにしろ、単発スレ立てた人間の質問になんて 誰も答えないと思うよ。 反省もしてないみたいだし。
嵐がひどいなぁ(苦笑。黄金厨ってやつかな?
>>653 > DataReportで、帳票作成して
> オープンしたとき、既存で印刷ボタン(プリンタのマーク)と
> エキスポートボタン(本のマーク?)がでてきますよね。
> それで、そのエキスポートボタンを消したいんですが
> どうすればいいのでしょうか????
よく知らないけど検索してみたらこんなのがでてきた。
http://www.dotnethell.it/newsgroups/ReadMessage.aspx?MID=49x4087 日本語でも英語でもないので内容は良く分からないけど、
Controllo in DataReport VB6 というタイトルで
Hide the Export button なんて書いてあるからこの方法が使えるんじゃないのかな?
GetWindowしてそのウインドウ消しているみたいだからメソッドとかは用意されてないのだろう。
>>703 自演を指摘されたときってつらいよな。
「苦笑」とかって逃げるのが精一杯だもんな。
分かるよ。
Visual Studio Installerのわかりやすいサイトありませんか? よろしくお願いします。m(_ _)m
>>705 マイクロソフト。
Visual Studio Installerで検索すればすぐ見つかる。
VBって今から覚えても意味無いですか? 大昔、N88BASICを勉強したのでちょっとした 仕事で使うようなツールを作るのならこれで 行けるかなあと買ったんですが・・・
とりあえずN88BASICとVBを同列視すんじゃね
業務アプリとして実際に多くの企業で 使われているんだから機能的には問題ない。
>>708 じゃないけど、プログラムの作り方がまったく違う。
N88BASICは構造化すらされていない言語だが、
VBは構造化に加えてオブジェクト指向も一部加わっている。
VBは基本的にはRAD(GUIを部品の貼り付けで作れる)で、
イベントドリブン(ユーザーが行ったアクションをきっかけに処理が始まる)
そしてN88BASICには無い命令が沢山追加されている。
N88BASICで使える命令も残ってはいるが、基本的に使わない。
まあプログラミング言語ってのはどの言語でも応用できる部分はあるから
N88BASICの経験がまったく役に立たないとは言わないけどね。
言語の知識では無くプログラミングの考え方自体なら応用できる。
>>711 >>708 じゃないけど、を見た瞬間読む気がしなくなった。
なんで勝手に答えるのか意味がわからん。
>>707 慣れるまでは大変だった。
どうせならVB.NETにすれば?
めっちゃ低レベルなんですけど カンマで区切られないようにテキストファイルを読み込むにはどうしたら良いですか? ↓でやるとカンマがあると区切られてしまうので。改行だけで区切りたいんですけど。 Open "D:\date.txt" For Input As #1 i=0 Do Until EOF(1) Input #1, a(i) i = i + 1 Loop Close #1
718 :
デフォルトの名無しさん :2005/05/06(金) 15:56:01
vb7.0であるプログラムを編集しています。 出来上がったコードをVBスクリプトに変えて動かすと ファイルを消したり、起動したりするステートメント行で コンパイルエラー(型が一致しません)になるんですが、なぜでしょう?
>>718 VB7.0ってVB.NETのことかなあ?
それならスレ違いなんだけど。
コード書かないとエラー原因はわからんし。
.NETの前に7.0が有ったはず どちらにしろ、6.0以前と銘打ってあるのだからスレ違いだが
721 :
718 :2005/05/06(金) 16:16:03
もうしわけありません7.0は間違いです 97といいたかったです。5ですねバージョンは
722 :
デフォルトの名無しさん :2005/05/06(金) 16:20:02
VBとVBスクリプトは別物ですから。 具体的なコードを書けと言っても無視かよ。
724 :
718 :2005/05/06(金) 16:28:40
>>723 すみません。VBS内のコードは
Call Kill("c:\temp\Acc.log")
の一行です。
725 :
AMI :2005/05/06(金) 18:39:01
ここの質問掲示板でいいのかは悩みましたが投稿させて頂きます。 現在、N88-BASICでプログラムをくんでいるのですが、FA制御ソフト 「ブレーク信号」ってBASIC上で送信できるんですか? VBでもやり方がわかれば、BASICに移植するのは簡単とはおもいますが・・・ ちなみに、いろいろしらべたのですが、ブレーク信号の定義が「1バイト長以上の長い時間、Loの状態が続く信号です」 とあったので、NUL(CHR$(0))をたくさん送信したのですが、反応無し、 [0]を多く送信しても反応無しという状態です。 またはこれはソフト上では作成不可能なのでしょうか? ご教授お願いします。
727 :
デフォルトの名無しさん :2005/05/06(金) 19:05:18
232cでしょたぶん。ホストはPC-9801かな? 98なんて触ったことも無いけど、ちょっとググってみるだけでそれらしい資料が 見つかったけど。
ブレークはストップビットも0にしなくてはならない
729 :
デフォルトの名無しさん :2005/05/06(金) 19:15:15
レスすんなや
すれ立てるまでもない質問はここで 第67刷
http://pc8.2ch.net/test/read.cgi/tech/1114263857/ より誘導されて参りました。質問が有るのですが、よろしくお願いします。
内容は以下の通りです。
VB6 から IE の文字コードの設定を変更する方法はありませんでしょうか?
Private Sub Command1_Click()
Dim sh As SHDocVwCtl.ShellWindows
Dim wb As WebBrowser_V1
Dim doc As MSHTML.IHTMLDocument
Set sh = New ShellWindows
For Each wb In sh
If wb.LocationURL = "
http://www.yahoo.co.jp/ " Then
Set doc = wb.Document
doc.Charset = "SJIS"
End If
Next wb
End Sub
とすると、メニューの設定はSJISになりますが
メニューでSJISを選んだ時のように、画面が切り替わりません。
リフレッシュの様なものが必要なのかと思いましたが
wb.Refresh
とか入れても変わりませんでした。
どなたかわかるヒト教えてください。
レジストリ変えれば?
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Nls\Locale こ、この辺ですか?? うう、値が良くわからない・・・
マイクの音量を設定したいのですが出来ないでしょうか? よろしくお願いいたします。
738 :
736 :2005/05/06(金) 22:32:44
ありがとうございました。 何とかやってみようと思いますが、 他に簡単な方法は無いでしょうか? 出来ればDirectXを使わない形で行いたいのですが。。。 申し訳ありません。
レジストリ変えれば?
質問があります。 今、VB6でActiveXコントロールを作っています。 このコントロールはPropertyとしてCollection1を持ち、 このコレクションにClass1をAddしていきます。 何がしたいかというと、ListViewコントロールの ListItemsのようなものを実装したいのです。 ListView1.Listitems.Add〜〜などとやると、新しい ListItemオブジェクトが作成され、ListViewの表示も 更新されますよね。 しかし、自作のコードでは、新しいClass1が作られても、 あるいは更新されても、ユーザーコントロールがわで それを知ることができません。 何か良い方法はないでしょうか?
744 :
AMI :2005/05/07(土) 02:11:25
725です。 >726:接続インタフェイスは何? 232Cです >727:ちょっとググってみるだけでそれらしい資料が見つかったけど。 資料はみつかるのですが、それをソフト上で作成ってできるのでしょうか? 通信電文的には、ストップビットは常に「1」なのにこれを0と表現するって 全く検討がつきません。 728 :デフォルトの名無しさん :2005/05/06(金) 19:09:55 ブレークはストップビットも0にしなくてはならない
>>743 WithEvents と Event RaiseEvent で検索するとお望みのものに辿りつけるよ。
Collectionの自作して(これはウィザードで作成すると楽)、Addの時にRaiseEventでイベントを発生させる。
ユーザーコントロールはメンバで WithEvents mCol As MyCollection な感じで定義してInitializeで Set mCol = New MyCollection でインスタンスを作成。
ユーザーコントロール側で自作のコレクションのイベントを受け取れるようになるので、mCol_OnAdd なんてイベントを処理すれば、Addされた時に自動的に表示更新できる。
大きな所を間違えている気がするが、流れはこんな感じ。
アイテムの数を監視するだけならタイマー使う手もあるけど、アイテムの内容が変更された場合も表示更新したい場合はイベント使った方が楽かな。
746 :
デフォルトの名無しさん :2005/05/07(土) 02:23:47
748 :
743 :2005/05/07(土) 02:31:44
>>745 ありがとうございます。
そこでちょっと疑問なのですが、例えばListViewコントロールの
ListItemをオブジェクトブラウザで見てみると、
"Class ListItem"と表示されメソッドやプロパティ等も表示されますが
それらしきEventは含まれていないようです。
ListItems、Nodes、Panels等のコレクションでもそうです。
これら、MSComctlLibのコントロール群はどういう方法で
コレクションにオブジェクトが追加されたのを知ることが
できるんでしょうか?
コントロールのPropertyとしてコレクションを公開している
ところまでは私のコード一緒だと思うんですが・・・
>>748 それはおいらには分からん。すまんがね。
GetMessage PeekMessage SendMessage PostMessage PostThreadMessage で同じようなことできるから、
それらで実装されている場合はオブジェクトブラウザでは確認できんだろうね。
もう1つ付け足すと、オブジェクトブラウザで確認できるのはCOMのインターフェイスだけだから、 実装にそれ以外の手段が使われている場合、その中身を確認するのは難しいと思うよ。
751 :
743 :2005/05/07(土) 03:06:13
>>749 つまり、クラス(またはコレクション)側からユーザーコントロール宛に
WM_APP+1のようなメッセージを送って通知する、ということですね。
その場合、送り先のユーザーコントロールのhWndと各クラス毎のIDみたいな
ものをクラスのインスタンス内に保持しないとならないと思いますが、
可能なんでしょうか。Friend Propertyで設定とか?
分からないことだらけですが、とにかくありがとうございました。
なにかご存知の方がいらっしゃいましたら、よろしくお願いします。
752 :
743 :2005/05/07(土) 03:11:28
>>750 COM、OLEについてはまだよく勉強してなくて。
まあ、ActiveXに足を突っ込もうと思えば、やはり
COMの仕様から勉強しないといけませんかね。
ありがとうございます。
753 :
AMI :2005/05/07(土) 03:14:07
>>725 です。
747さんサンプルありがとうございました。
しかしこのサンプルでは、ブレーク信号の送信は行っておらず
通常の通信になりますよね。(ポーリング通信)
ブレーク信号送信のサンプルってあれば教えて頂きたいのですが・・・。
ストップビットは通常「1」で固定なのに、それを0にする方法って
どのようにするのでしょうか?
>>742 何がしたいの?って指摘したいんだと思います。
>753 MSComm1.Break = True とか SetCommBreak かなぁ
758 :
AMI :2005/05/07(土) 09:06:29
>>725 です
>756
>757
さんご助言ありがとうございました
ということは、これはVBの「MSComm1」の機能を使用して、実行しているということですね。
N88-BASICではコントロールの概念がないから、無理ってことでしょうか?
759 :
デフォルトの名無しさん :2005/05/07(土) 09:34:12
761 :
木綿豆腐 :2005/05/07(土) 14:07:50
分からないことがあって聞きたいんですが、あのvbで記号$と!の意味はなんですか??
763 :
木綿豆腐 :2005/05/07(土) 14:41:28
ありがとう、でもちょっと詳しくお願いします
>>758 N88-BASICのソースをVBに移植してるとずっと思ってたんだけど、違ってたのか。
たしかに最初の文章にはそれっぽいことが書かれてたけど、
事実上は上記移植がほとんどだから、ただの表現ミスだと思ってた。
PC-98はハードウェアが違うし、やり方も違う。
DOSとWindowsということでも違う。
VBでのやり方を質問しても、参考になるどころか逆に混乱するだけ。
>>763 定義不要言語は使うところで定義しながら動く
N88BASICの場合、デフォルトでは!型の変数に解釈される
コンマオ
770 :
デフォルトの名無しさん :2005/05/09(月) 12:39:47
ただ、なんでそんなアクロバティックなことしてまでVB6に固執する必要があるのか いまいちよくわからん気が。。
普通じゃ満足できない体になっちゃたから。
>>766 ○動く
Private Sub Command1_Click()
Form1!Command1.Caption = "ぬるぽ"
End Sub
×動かない
Private Sub Command1_Click()
Form1!Caption = "ぬるぽ"
End Sub
○動く
Private Sub Command1_Click()
Form1!Command1.Caption = "
>>773 ガッ!"
End Sub
776 :
774 :2005/05/09(月) 17:48:03
おいおい、俺に言われても困るぜ
777 (*^ー゚)b
VB6.0のユーザーコントロールについて質問です BackStyleを0(透過)に設定したユーザーコントロール上に、BackStyleを0(透過)に設定したLabelコントロールを配置して LabelのCaptionに適当な文字を設定すると、文字が欠けてしまうのですが、こういう仕様なのでしょうか? 何か、透過処理がうまくいっていないようで、どちらかの透過をやめると正常に表示されます
VB6なんですけど CommandButton上でEnterを押しても反応させないようにしたいのですが。 デバッグをしたらEnter降下後KeyUpやKeyDownにも入ってこないみたいです。 なんでだろうママン
780 :
デフォルトの名無しさん :2005/05/10(火) 12:13:08
SQLについて質問です。 得意先テーブルの口座番号フィールドをグループ化して抽出したいのですが、区分 が0や得意先番号=請求先番号等の条件式をつけたいのですが上手くいきません。 何かいい方法はないでしょうか?
781 :
デフォルトの名無しさん :2005/05/10(火) 13:54:27
program Filesのようなパスを含んだフォルダに ActiveXモジュールを格納している場合、このモジュールを revsvr32でレジストリ登録すると、パスに空白を含んでいるため 登録エラーになります。この場合そうすればコマンドラインからレジスター登録できるでしょう
783 :
デフォルトの名無しさん :2005/05/10(火) 14:16:27
>>782 感謝いたします。ありがとうございました。!!
>>779 それは、そういうものだから。
Windowsのボタンはそういうのが仕様です。
それがダメなら自作コントロールでボタンもどき作るか、ピクチャーなどでそれっぽいものを作る。
>>780 場違い。、DB板のSQL質問に行けば?
785 :
デフォルトの名無しさん :2005/05/10(火) 16:36:40
はじめまして。 .NET環境のみでバーコードを自作する事は可能でしょうか? Accessや外部ソフトは使わない前提でお願いします。
>>784 氏
あぁ、そうなのかぁ。色々調べてみたんだけど、やっぱり仕様なのね
ありがとうございました。あきらめますw
>>785 可能です。
だが、スレ違いなので適した所で聞いてくれ。
788 :
デフォルトの名無しさん :2005/05/10(火) 16:57:16
>>787 すいません、間違えました。
出直してきます。
789 :
デフォルトの名無しさん :2005/05/10(火) 19:53:23
VB6.0を使ってます。金種計算をやってるんですがどうもうまくいきません。一万で?円買ったらおつりが五千が何枚…千円が何枚…って出るようにしたいのですがうまくいきません。どの構文を使うといいとか、私だったらこう書くとかなにかアドバイスありませんか?
だいたい四則演算、if文、入出力文くらいで済むと思うよ
>>790 ありがとうございます。ifで書いていたんですが上手くいかなかったのできっとどこが違うんでしょうね…5000円以下のおつりの枚数が0枚になっちゃたりするんですよね。
>>789 簡単にやるなら、こんな感じ
1万円の枚数 = おつり \ 10000
おつり = おつり - (10000 * 1万円の枚数)
5千円の枚数 = おつり \ 5000
おつり = おつり - (5000 * 5千円の枚数)
・・・以下同様
794 :
デフォルトの名無しさん :2005/05/10(火) 20:37:46
丁寧にありがとうございます。サンプルを見てやってみます。
何か新しい物でもやってミヨーカと思いVS6.0のCDを眺めたら VBをハケン 適当に弄って何となく分かったが、もしかして xcopyとかdirみたいなコマンドラインツールは作れないですか? .NETでは作れたような?
>>795 Sub Main()から始めれば良い。
コンソール入出力はAPIでやる。
797 :
デフォルトの名無しさん :2005/05/11(水) 10:20:56
ここにおられる玄人の方々に質問です。 Projectを開く際にVisualSouceSafeに自動的にログインしようとしてしまうのですが、 これを止めることは出来ませんか? 開くたびに毎回問い合わせるので、時間がかかってしまい困っています。 ちなみにこのプロジェクトは自分が作成したものではなく、R&Dのために渡されたプロジェクトです。 回答のほどよろしくお願いします。
vbpファイルをメモ帳で開いて(ry
>>797 MSSCCPRJ.SCCを削除するか、適当な名前にリネームする。
もしくはソースコード管理のアドインを止める。
800 :
デフォルトの名無しさん :2005/05/11(水) 15:41:48
アドインマネージャでチェックオフにしたら解決しました。
お騒がせ致しました。
>>798 さん
StartMode=1を0にしてみたりしたのですが、駄目でした。
801 :
デフォルトの名無しさん :2005/05/11(水) 15:45:20
>>799 さんも有難うございます。
無事解決しました。
感謝感激雨あられです。。
802 :
デフォルトの名無しさん :2005/05/12(木) 08:13:51
VBコードを記述して四則演算を行うプログラムを作成せよ。 VBコードのみも記述せよ. って宿題が出たんですけどネットで調べても全然わかりません。 どなたか教えてください
VB6でUSBキーの固有IDをとる方法を探しています。 どっかに参考になるURLはありますでしょうか? おせえてエロイひと!
806 :
デフォルトの名無しさん :2005/05/12(木) 14:44:58
おしえてください。人から引継いだVBソースと実行プログラムがあるのですが コンパイルされたプログラムと同期があっているものとおもいきや ソースに手を加ず、リコンパイルのみ行ったところ 何故か挙動に差異があるのです。このような場合、コンペアツールで 比較すると、同じソースから出来た実行プログラムでも 絶対に差異が表示されてしまうので、実行プログラム間での ソースレベルでの差異があったかどうか見分ける良い方法がないか教えてください 1プロジェクトなら、デバッグして違いを見ていけるのですが30プロジェクトあり 中にはDLLを作成しているプロジェクトもあるので途方にくれています。
>>806 そういうデバッグは1つずつ調べていくしかない。
たった1行のソースでもコンパイルするごとに変わる箇所が多いので、
単純なバイナリ比較は意味がないと思う。
Win95の頃にVBで作られたプログラムがあるのですけれど、XPでは動作不可能なのでしょうか? 最初に[KNIFE.VBXがみつかりません]というエラーがでてきたので windowsのsystemフォルダに入れたのですけれど、 今度は「カスタムコントロールをロードできません C:\windows\system\KNIFE.VBX」というエラーがでてしまいます。 それとも、VBのプログラムを動作させるのは 何か特殊なファイルをインストールしないとダメなのでしょうか? どなたかご教授お願いいたします。
>>809 スレ違い。
ソフトウェアの使い方は別の板で聞け。
>>805 そだよ
VID&PIDはWMIあたりでとれそうなきがするんだが
とあれば製品固有IDまで〜 (^^;
812 :
デフォルトの名無しさん :2005/05/12(木) 20:45:01
製品固有IDって意味わかりませんが。。 そんなものUSB-IFの仕様にないと思うが。。
ドングルクラック
815 :
デフォルトの名無しさん :2005/05/13(金) 12:43:36
>>814 わからん。わかるわけが無い。
そりゃ、USBの仕様じゃなくて特定の機能をもつ周辺機器の一般名詞だろ
その機能の実現は各ベンダーの独自の実装によるわけで、
そんなも取得する一般的な方法があるって妄想はいったいどこから(以下略
Visual Basicオーナーズエリアとかいう所に製品登録すると 入れたそうですが、どういうサービスだったんですか?
>>816 もしそれならソースつきだから読みゃ分かるな
820 :
デフォルトの名無しさん :2005/05/15(日) 13:14:43
CreateShrotcutと併用してショートカットを作成したいと考えています。 ショートカット自体は文字数に制限がないのか、問題なく作成出来るのですが、 TargetPathに代入するファイル(フォルダ)名は、9文字以上になると 8文字までしかTargetPathに代入されず、それ以降はカットされてしまいます。 例: 'ショートカットのターゲットファイル WShShortcut.TargetPath = "C:\abcdefghijk\abcdefghijk.exe" 上記の様に設定しても、WShShortcut.TargetPathには C:\abcdefgh\abcdefgh.exe しか代入されていません。 これはWSHのデフォルトの仕様なのか、色々調べたのですが分かりませんでした。 どなたか9文字以上でもTargetPathに代入する為の方法をご存知の方が いらっしゃいましたら、教えて頂けませんか?
821 :
デフォルトの名無しさん :2005/05/15(日) 13:23:30
最初にすれ違いをお詫びいたします>< どこに質問すればいいか困っております。 HDD交換によりゲームソフトのパスワードが分からなくなっており、 そのソフトを立ち上げるとIDとPASSがはいっているのですが IDは分かるのですがPASSが****となっており 調べることができなくなっております>< ゲームソフトの中にパスワードが記述されてると思い 調べたいのですが・・・ ゲームソフトは元気の首都高バトルオンラインです。 よろしくお願いいたします、
めっさスレ違いだが答えてやろう。 そういう場合の救済措置はあるだろうから、発売元に聞いてみりゃいいんでね〜の?
823 :
デフォルトの名無しさん :2005/05/15(日) 15:11:57
教えて下さい。 VB4の16bit版で開発したプログラムをWin2000やXPで動作させる場合、何か不具合でますでしょうか? もし出るのであれば、どういったものか教えて下さい。
>>823 不具合はありません
安心して使ってください
825 :
デフォルトの名無しさん :2005/05/16(月) 10:56:39
OCXについて教えてください。 VB6でユーザコントロールをつくって ディストリビューションウィザードでCABファイルにして WEBサーバに設置しました。 とあるPCからは想定どおり動くのですが とあるPCではHTMLからOCXのコントロールにアクセスしたときに 「このページのActiveXコントロールは、安全でない可能性があり、 ページのほかの部分に影響する可能性があります。ほかの部分に 影響しても問題ありませんか?」 という確認メッセージが表示されます。「はい」を選べば その後は期待どおり動くのですが、ページ表示後、1回目だけ必ずでます。 このメッセージはクライアント環境によって出たり出なかったり するのだと思いますが、なんの設定によるものなのでしょう? よろしくお願いします。
インターネットからHTTPでPNGファイルを落として画面に表示するには、どんな方法がありますか? 一番エレガントな方法はなんでしょうか?
>>826 コンポーネントで Microsoft Winsock を選択し、
TCP/IPプロトコルでPNGファイルをTempフォルダに読み込んで表示。
もう、その辺は好みの問題では?
可能な限りMSオフィシャルで標準搭載なコンポーネントだけで最小限のコード数で実装したいのですが、WinsockではなくてMSXMLなどがつかえないものかなぁと。
>>825 インターネットオプションのセキュリティレベルでは?
>>828 XP限定なら。
それ以前はフリーのDLLを使うとか。
>830 IEコンポーネント埋め込み
>>833 ああ、その手があったかぁ。
IEで表示しているPNG画像って画像データだけ取得できるのかしら・・・。
できるならそれが一番簡単かも。
表示後加工したりしたいもので。
>>832 ああ、GDI+はXP限定なんですかぁ。
貴重な情報ありがとう御座います。
そっかぁ・・・。
836 :
デフォルトの名無しさん :2005/05/16(月) 15:10:15
プログラムでFDドライブにFDが入っているかどうか調べる方法ってありますか? Dir関数では"ファイル名が間違っています"みたいなメッセージが出てしまいま した。
>>836 ルートのDirでエラーが出れば入ってないと見なすか、
FileSystemObjectのIsReadyプロパティで
838 :
デフォルトの名無しさん :2005/05/16(月) 15:50:49
>>837 レスありがとうございます。自分でもう一度調べてみて
'FDの有無
Dim FSO As Object
Set FSO = CreateObject("Scripting.filesystemobject")
If FSO.folderexists("A:\") = False Then
End If
この方法で自己解決できました。
840 :
デフォルトの名無しさん :2005/05/16(月) 17:17:40
Adobe Reader 7.0のOLEオートメーションを使いたいのですが、 Set AcroApp = CreateObject("AcroExch.App") オブジェクト作成できません。 (Acrobatをインストールしないと使えないらしい) Set AcroApp = CreateObject("AcroPDF.PDF") を使うそうなのですが、AcroPDF.PDFをつかったサンプルソースを だれかさらしてくれませんか? 任意のファイル開いて、指定ページへ飛ぶような簡単なものでいいです。 どうかよろしくおねがいします。
>>840 オレはAcrobat入れてないから判らないが、
参照設定でDLLをインポートして、F2キーで構成を調べれば良い。
843 :
デフォルトの名無しさん :2005/05/16(月) 19:57:29
VB6.0なのですが、 あるボタンを押したときフォームの境界線を固定から可変にしたい場合、 そのボタンの記述はどのようにすればよいのでしょうか。 form1.borderstyle = 2 ではダメなのでしょうか。
844 :
デフォルトの名無しさん :2005/05/16(月) 19:59:05
初めまして。 If (X>0) Or (Y>0) Then ... End If で X>0 が成立しても Y>0 も評価されてしまいます。 C言語の || のようなものはVBにないのでしょうか? 宜しくお願い致します。
>>843 BorderStyle プロパティ
- オブジェクトの境界線のスタイルを設定します。値の取得も可能です。Form オブジェクトおよびテキスト ボックス (TextBox) コントロールについては、実行時には値の取得のみ可能です。
プログラムするんならMSDNくらい目を通せよ
GetWindowLongとSetWindowLong使えば?
>>844 VBにはない。
VB.NETで装備された。
847 :
デフォルトの名無しさん :2005/05/16(月) 20:08:38
>>844 ありがとうございます。
ちなみに、VB.NETではどのようにするのでしょうか?
宜しくお願い致します。
if ( 評価式A ) || ( 評価式B ) { 真処理 } else { 偽処理 } をVBで忠実に再現するなら GoTo を使うしかない。 If ( 評価式A ) Then IF_0000_TRUE: 真処理 Else If ( 評価式B ) Then GoTo IF_0000_TRUE 偽処理 End If
ハァ? 入れ子にするだけで解決じゃん・・・
>>832 嘘つくな。
GDI+はWinXP限定ではない。
>>852 マジで?
OSでは2003Serverとかでは?
>>854 830の標準搭載なコンポーネントという条件に即してないけど?
856 :
840 :2005/05/16(月) 23:38:41
>>841 メソッド名だけじゃ使い方推測できませんorz
>>842 AcroExch.App が使えないから困ってるんです
やっぱり、知ってる人いなそうですね…
>>856 だから、Readerだけじゃ無理だって。
Readerだけで印字すると Dim AcroObj As New AcroPDFLib.AcroPDF Dim blnRet As Boolean blnRet = AcroObj.LoadFile("test.pdf") '環境によっては落ちる・・・ AcroObj.printAll とか AcroPDF1.LoadFile "test.pdf" AcroPDF1.gotoFirstPage AcroPDF1.printAll かな。 表示は分からんのでShellExecuteでもして ごめん。 ちゃんと理解しようと思うとSDKが欲しいところ
訂正
コンポーネントにAdobe Acrobat 7.0 Browser Control Type Library 1.0を追加して
フォームに配置して以下のコード実行
Dim a As AcroPDFLib.AcroPDF
Set a = Me.AcroPDF1
Dim b() As Byte
b() = Inet1.OpenURL("
http://hoge/hoge.pdf ", icByteArray)
Open "C:\down\hoge.pdf" For Binary Access Write As #1
Put #1, , b()
Close #1
If a.LoadFile "C:\down\test.pdf" Then
a.setZoom 100
MsgBox a.src
End If
862 :
847 :2005/05/17(火) 07:05:38
>>850 ありがとうございました。 OrElse で望んでいた動作が確認
できました。
863 :
デフォルトの名無しさん :2005/05/17(火) 08:26:43
>>857 Reader7からできるらしい。Adobeのページにかいてあった。
すくなくとも AcroPDFクラスはつかえるとのこと
865 :
デフォルトの名無しさん :2005/05/17(火) 10:55:41
お願いします. いまVB6.0 と SQLServer2000の課題に取組んでいるのですが、 担当テーブル 担当コード int 長さ 6 部署コード int 長さ 2 をVB6.0で帳票を作っているのですが帳票に出力すると 本来、担当コード 0001 と 4桁でなるものが1、 部署コード 02 2桁でなるものが2にとなります。 (下図参照) これをレイアウト通りにしたいのですが方法がわかりません。 力不足かも知れませんがなにとぞご教授おねがいします。 テーブルレイアウト _____________________________ │名称 │タイプ │長さ │ ============================= │担当コード│int │6 │ │部署コード│int │2 │  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 帳票レイアウト ________________________ │担当コード│部署コード│ │======================| │0001 │01 │ │0002 │02 │ │0003 │02 │  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 今 現在 ________________________ │担当コード│部署コード│ │======================| │ 1 │ 1│ │ 2 │ 2│ │ 3 │ 2│  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
タイプを文字型にしる
>>865 どうやって帳票を出しているのか知らないけど、
帳票側の書式設定が出来てないんじゃないの。
>>865 で、DB板の質問は締め切ってきたのか?
>865 つ[Format]
870 :
デフォルトの名無しさん :2005/05/17(火) 18:54:07
VB5で カッコイイ画面を作っています。 プログラスバーで グラフをカッコ良く繰り上げていくのですが 進捗時の数値を0−100%表示でバーの真ん中に表示したいと 思いまして、テキストコントローラーを使いました。 処理のMAX値を100で割って、進捗率を求め 1%あたりの処理とプログラスバーの繰り上げがうまく連動できたのでしが ふと気付いたのが、50%あたりのバーの繰り上げで ちょうど進捗率を示すテキストにカブリだすと、背景が青いバーに 灰色のテキストバックカラーなのでなんか変に感じます テキストコントロールの背景を透明に変更する方法が ないでしょうか?これではカッコよくありません。おねがいします。
Private Sub object_MouseDown(Button As Integer,Shift As Integer,X As Single, Y As Single ) lX = X lY = Y object.Drag End Sub -------------------------------------------------------------------- Private Sub object_MouseUp(Button As Integer,Shift As Integer,X As Single, Y As Single ) kX = X kY = Y object.Move lX + kX , lY + kY End Sub 絵をマウスでクリックして移動できるようにしたいのですが絵が移動しません 本を見ながらやっているのですがうまくできません 最近VBを始めた超初心者です、どうか力をかして下さい。
>>871 DragModeプロパティを自動にしてある?
>>870 PictureBox と Label で自作すれば良い。
そんなに難しくないよ。
>>871 Private Sub object_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
lX= X
lY= Y
End Sub
Private Sub object_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
object.Move object.Left - lX + X, object.Top - lY + Y
End Sub
こういう事?
「object」という名前を付けるのはやめた方が良い。
カッコイイプログラスバーなインターネットはここですか?
876 :
デフォルトの名無しさん :2005/05/18(水) 12:42:36
VB6でランタイムをEXEに内蔵する方法ってわかる人いる? わかる人いたら教えれ
金庫の中に金庫の鍵を入れて楽しいか?
インストーラーを作ってあげた方が幸せになれると思うよ。
ウィルスばらまく気か?
内蔵はないぞう。
VB6のランタイムは最初から入ってるし、.NET Frameworkに比べたら小さい。
最初から入ってるのは英語版のランタイムだが?すくなくとも2000の場合は。
>>882 OSには入ってないけど、大部分はメーカーPCユーザだし。
訂正:英語版のランタイムしか入ってないけど、
>>883 メーカーPCには日本語版ランタイム入ってるわけ?初耳だな
>>885 あれ? 記憶違いか。
知り合いが買ってすぐフリーソフト入れてただけか。 orz
いいかげんな情報まきちらすんじゃねえよカス
888 :
デフォルトの名無しさん :2005/05/18(水) 15:25:20
If Not rs![ポイント01] = vbNullString Then .Cells(cnt, 16) = "'" & rs![ポイント01] End If ポイントが100個ぐらいある場合、やっぱ300行書け! って話なのかな? なんか工夫の仕方がありそうなんだけど ヒントだけでもくだされ。
889 :
888 :2005/05/18(水) 15:28:54
補足 レコード内にデータがなければ"'"がいらない。 ポイント1、ポイント2・・・・てな感じです。 ちなみに、rs![ポイント01] はAccess→外のDBに接続されてるテーブル で型はすべてString、、、。
つ[For〜To〜Next] つ[For Each〜In〜Next] つ[Do While〜Loop] つ[以降略]
dllの関数を呼び出すときに配列全部を引数として渡すことってできますか? やるとコンパイルエラーがでて「型が一致しません」って怒られる・・・ 渡し方がいけないのかな??? dim A(10) for i=0 to 9 A(i)=i+1 next call B(A()) ↑ dllで呼び出す関数
Dllが受け取ることができるか? なら指定が悪いだけw
>>891 数値配列は、その配列の先頭の要素を参照渡しで渡すと、配列全体が渡されます。
これは、数値配列のデータが常にメモリ上で連続した領域に配置されるためです。DLL
プロシージャに、配列の先頭の要素が渡されると、DLL はその配列のすべての要素
にアクセスできるようになります。
ヘルプの「DLL プロシージャへの配列の引き渡し」より。
895 :
891 :2005/05/18(水) 19:00:26
>>892-894 申し訳ありません
DeclareではLongで定義してたのに
本文ではIntegerで定義してました・・・
あqwせdrftgyふじこlp
>>888 rs![ポイント01] → rs("ポイント01")
こういう書き方もできる。(バージョンによるかもしれんが)
あとはぐるぐる回せ。
898 :
デフォルトの名無しさん :2005/05/18(水) 22:04:48
ふざけんなよ!参加しろと働きかけて、皆様方の共通財産ですと謳っておきながら、
おいしい処を丸々と持っていかれて。だから、コミュニティーは共○主義者なんだよ。
本文だけ載せれば問題ないだろ。
おまえ等にも抗議してほしい。
-----------------------
これまで、メーリングリストの過去ログに関してコミュニティの資産という
ことで Web サイト上で提供をしてきましたが、メールの内容の削除依頼の
増加だけでなく、個人情報保護法を楯にしたコミュニケーションが発生して
しまい、運営をしていることが訴訟リスクにつながるような状況となって
しまいました。
http://www.users.gr.jp/forums/13552/ShowPost.aspx
899 :
デフォルトの名無しさん :2005/05/18(水) 22:27:22
さようなら
901 :
デフォルトの名無しさん :2005/05/18(水) 23:07:10
♪さよならは 別れの言葉じゃなくて♪ ふざけんなよ! おまえ等もコミュニティーには気をつけろよ
902 :
デフォルトの名無しさん :2005/05/18(水) 23:25:02
EXEの実行ファイルだけで動作できるプログラムは VBではどうやっても不可能なの?
EXEだけということはWin APIを使わないってことか?
>>903 いやそう言うわけではないです。。。
自作したプログラムをUSBメモリで持ち運んでいるのですが、
いちいちインストーラーを起動、また終了時に削除するのが面倒なのです・・・
(場所を転々とするような環境の為)
やっぱりランタイムを必要としないソフトを作ろうと思ったら
VBは捨てるしかないですかね?
だから、英語版のランタイムは入ってるだろ
アフォは帰れ
>>904 標準コントロールだけならコピーするだけでも動くけど。
文字化けしないように、メニューに日本語は使わない。
908 :
904 :2005/05/19(木) 00:02:27
>>907 凄くサンクスです。
もともと標準コントロールしか使用していませんので、
日本語を英語(というよりもローマ字表記)にしてみようと思います。
ああ今まで無駄にしてきた時間が・・・
>>908 .exeと同じフォルダにVB6JP.DLLを置くと日本語表示も無問題。
>904 非常にダサい方法だとは思うが、文字は全部画像にするってのはどうよ?
まあランタイムと言ってもただのDLLに過ぎないからな。 (注意 VB6JP.DLLはActiveXではない) インストーラーといってもVB6JP.DLL等の共有DLLを システムフォルダにコピーして必要ならレジストリに登録しているだけなんだし。 システムフォルダにコピーせずともEXEと同じフォルダに置いていれば動く。 side-by-sideが使えなくてレジストリに登録しなくちゃいけないのなら、 バッチファイルでアプリ起動前に登録して、起動後に消せば良いだけ。 必ずしもインストーラーは必要ない。
>>913 VBでもインストーラー形式とZIP形式の
全く同じソフトが作れるわけですね。
(´-`).。oO(side-by-side難しすぎて分からないのは俺だけ?)
VBってfor文を1行出かけないの?
For i = 0 To 100: [ここに処理を書く]: Next i
フォームを最小化しているときに、元のLeftとTopの位置を知るのにはどうしたらいいですか? 変数に記憶しておくのではなくて、Windowsが保持していると思うので取得したいのですが・・・
>>918 できない。
変数にでも記憶させておくしかない。
最小化中にサイズ知ってどうするの?
921 :
デフォルトの名無しさん :2005/05/19(木) 16:09:02
Set myIE = CreateObject("InternetExplorer.application") myIE.Visible = True myIE.Navigate2 myUrl, , , , "Authorization: Basic " & ここにBASE64で変換した文字列 これでBASIC認証のページを開けるのですが、その後にリンクをクリックすると またパスワードを聞いてきます・・・ myIEのオブジェクトに毎回ヘッダを送信する事は可能でしょうか? それか回避可能な代案とかあったらお願いします・・・
922 :
デフォルトの名無しさん :2005/05/19(木) 16:50:03
半角カナの小文字を大文字に変換する方法はありますか? ッやァをツやアに変換したいです。
Replace
>>923 Replaceを使って自分で実装しろってことですか? アンタばか?
927 :
デフォルトの名無しさん :2005/05/19(木) 21:35:59
っていうかカタカナに大文字小文字なんて概念はないわけで。 普通のセンスがあれば、そんな一般性のない俺様な需要を満たす 組み込みの関数はないだろうと考えると思うんだけど。
VBだけに、あると思った。
928のVBの印象は間違っていたようだ。
VBの壁
931 :
デフォルトの名無しさん :2005/05/20(金) 00:08:57
EXEを作れるEXEはどうやって作ればいいのですか?
>>931 PEフォーマットの形式で、ヘッダなどをつけて
機械語コードを埋め込んだバイナリファイルを
作成するEXEを作ればいいだけ。
具体的にはスレ違い。
>>931 コンパイラの勉強とかPEフォーマットやインテルの仕様書見ろ
934 :
921 :2005/05/20(金) 01:02:07
Private Sub WebBrowser1_BeforeNavigate2(ByVal pDisp As Object, URL As Variant, Flags As Variant, TargetFrameName As Variant, PostData As Variant, Headers As Variant, Cancel As Boolean) myIE.Navigate2 URL, , , , "Authorization: Basic " & strAccount & vbCrLf End Sub BASIC認証の件なんですが、このコードで毎回ヘッダを送信するようにしたところ Navigateする度に自身のイベント呼び出してしまう無限ループに陥りました・・・orz VBAでいうApplication.EnableEvents = False のようなイベントを無効にする事って出来ないんですかね?
>922 つ[RegExp]
>>936 おー、自分の求めていたものが出来ました!
ただこのままでは対象をファイルに保存するで、ダウンロードする時に
パスワードを要求されてしまう・・・orz
WebBrowser1_DownloadBegin()
これでは引数にURLがないし、どうしたらいいのでしょう?
APIでBASIC認証ダイアログのハンドルを取得して、SendMessageできたらなぁ・・・
>>937 ファイルをダウンロードするところを・・・Inetだっけ?
とかWinSockとかでやったら?
> APIでBASIC認証ダイアログのハンドルを取得して、SendMessageできたらなぁ・・・
それと同じようにWebBrowserでパスワードをSendMessageで・・・って
やったことあるけどねw
やばいサイト用ツールなのでソースを出すわけにはいかないがw
>>938 セキュリティの点で問題があるので、去年MSがIEのパッチで使えなくして、
サイト側も使えないところが多くなったような。
941 :
デフォルトの名無しさん :2005/05/20(金) 14:44:10
VB6.0上のMsgBox上の表現で右詰にする方法はありませんか???
942 :
891 :2005/05/20(金) 17:14:23
エラーはでなくなったんだけど 配列を渡す先のdllでめちゃめちゃな値が渡されてる・・・ VBでは配列の値が1で送ったはずなのにdll先(C++)では1242316って値になってるし??? どういうことなんでしょうか?
>>942 DLL(C++) で VB の配列を受け取る場合は VARIANT(C++)型を使え。
944 :
891 :2005/05/20(金) 17:48:18
>>943 C++でVariantって定義したらシンタックスエラーっていわれて怒られた(´・ω・`)
どういう風に宣言したらいいのでしょうか?
>>944 VARIANTだ。大文字小文字は区別される。それでもだめなら<OAIdl.h>をインクルードしろ。
でも1次元の配列ならVARIANTにしなくてもできるはず。
DLLとVB側でどんな宣言をした?
946 :
デフォルトの名無しさん :2005/05/20(金) 20:11:14
おしえてください。VBで通常参照設定をしているDLLを CreateObjectでセットする事ってできるのでしょうヵ?
できる。
948 :
891 :2005/05/20(金) 20:28:40
>>945 VB側
Dim a(10) as Long
For i = 0 to 9
a( i ) = i + 1
Next
kotae = siki ( a() , b , c)
Declare Function siki Lib "test.dll" ( x() As Long , ByVal y As Long , ByVal z As Long) As Double
C++側
TEST_API double __stdcall siki (int x[] , int y , int z )
こんな感じです
949 :
デフォルトの名無しさん :2005/05/20(金) 20:38:19
>>947 方法を教えていただきたいのですが、よろしくお願いします。
イメージとしては
dim aaa as object
set aaa = CreateObject("abc.dll")
を想定してたのですがコンパイルエラーになります。
DLLはクラス名じゃないから当然。 参照設定しているDLLに入っているクラスを指定しろ。
951 :
デフォルトの名無しさん :2005/05/20(金) 20:48:01
>>950 回答ありがとうございます。
クラスというとおそらくはDLLを構成しているクラスモジュールだとおもうのですが
あっていますか?
ActiveXコンポーネントはオブジェクトを作成できませんのエラーがでます。
revsvrは実行しています。
クリはクラスだろう。オレがよく使うのは CreateObject("Scripting.FileSystemObject") CreateObject("OracleInProcServer.XOraSession") ということは?
953 :
デフォルトの名無しさん :2005/05/20(金) 20:50:19
あっとわかりました。!! DLL名.クラス名 で正解ですね??
DLL名.じゃねーってw ActiveX DLLのオブジェクト名.クラス名だ。 ちょっと違った気もするがまあいいか。
abcというオブジェクト名の
dllというクラス名なら
>>949 で正解!
956 :
デフォルトの名無しさん :2005/05/20(金) 21:11:16
了解しました先生方!! うまくDLLの関数がよびだされました。 オブジェクト名が正だったんですね。 分かり易い説明ありがとうございました。
すみません。文字列の比較についてなんですが、 VBでは文字列の比較に「=」を使用してもいいんでしょうか? それとも必ずstrcompを使うわないといけないんでしょうか?
959 :
デフォルトの名無しさん :2005/05/20(金) 23:52:54
線分OAのOを中心に45度のところに線を描きたいのですが、 角度を用いて線を描くときはどうやって表せばいいのでしょうか?
>>959 線分を引くにはLineメソッド。(PictureBoxかFormっしょ?)
2点の座標がいる訳だが点Oの座標ともう一点は計算で楽勝でしょ。
(45度なら計算するまでもないが、
任意角度でもSin/Cos関数を使って中学生にでもできる)
962 :
959 :2005/05/21(土) 00:17:44
1つの枝から3本の枝が出て、それぞれからまた3本の枝が出て・・・ っと続いていく図形を作りたいのですが、それも計算で表すことでできるでしょうか?
>>957 完全一致の比較は「=」でいい。
TextCompareモードとかで比較する時にStrCompを使うと便利。
>>962 いつも45度ずつなら三角関数は必要ないなあ。
簡単な法則で次の座標値を計算できるし。
965 :
959 :2005/05/21(土) 00:33:58
簡単な法則とはどのようなものでしょうか。
966 :
デフォルトの名無しさん :2005/05/21(土) 00:35:30
本当にわかって言ってるのか
>>960 とか
>>964 は。
まあ確かに高校生レベルの数学(中学生はさすがに言いすぎ)だが、
そんなに簡単とも思えないが。
結構面倒くさいぞ。
967 :
966 :2005/05/21(土) 00:40:58
>>965 俺なら局座標でもユーグリッド座標でも定義できる
二次元ベクトルのクラスをつくるね。
局座標をxy座標に変換するのは出来るでしょ?
それが出来ればあとはベクトルの足し算すればいいと思う。
968 :
デフォルトの名無しさん :2005/05/21(土) 00:43:56
あ極座標ね
969 :
959 :2005/05/21(土) 00:46:56
>>966 なるほど。ありがとうございます。
ところで質問ばかりで申し訳ありませんが、
極座標はVisual Basicでどのようにあらわすのでしょうか?
>>967 お前は字も読めない小学生か?
ここは数学板ではないぞ。スレ名をよく見てみろ。
>>960 みたいにコードで答えなきゃ意味がない。
971 :
デフォルトの名無しさん :2005/05/21(土) 00:52:28
>>970 君は「サンプルコードがなければ何もできない、いつもサンプルをコピペして
コーディングしている自分」を他人に投影し過ぎです。
普通の知能レベルの人は「考え方」さえ聞けば必要十分なのだよボクちゃん。
972 :
デフォルトの名無しさん :2005/05/21(土) 01:01:39
>>969 Visual Basicの組み込みの機能としては、極座標というデータ型はない。
極座標って要xyの直交座標の代わりにはrとθで表現する座標系だってことは
わかるよね?
だったら、その通りコーディングするだけだと思うけど。。
973 :
デフォルトの名無しさん :2005/05/21(土) 01:20:10
荒らしは華麗にスルーしましょう。
974 :
957 :2005/05/21(土) 01:26:27
>>963 ありがとうございました。
Cだとかだと関数使わないといけなかったですよね?
演算子による比較だと同じメモリアドレスでないと真にならないとか。
それで気になって質問してみました。
w
977 :
891 :
2005/05/21(土) 02:46:12 >>958 サンクス
そのsiki(a(0))の方法で無事読み込めたよ!!!
そうか〜配列のしょっぱなのアドレスをC++へ渡せばいいだけだったんだね
本当に助かりますた(`・ω・´)シャキーン