前スレ
VB.NET質問スレ(Part40)
http://toro.2ch.net/test/read.cgi/tech/1365857015/
VB.NET質問スレ(Part41)
http://peace.2ch.net/test/read.cgi/tech/1391334405/
VB.NET質問スレ(Part42)
http://echo.2ch.net/test/read.cgi/tech/1419148239/
探検
VB.NET質問スレ(Part43) [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2016/06/15(水) 11:41:09.50ID:bPj3FmGk367デフォルトの名無しさん
2016/10/26(水) 19:56:05.00ID:Kd62j3g9 >>366
お前さんのやってることは変換を評価と言い換えただけ。
そういうのを言葉遊びという。馬鹿じゃないの。
(1) ポインタ変換
(2) double→intの変換
(3) 文字列→intの変換
(1)と(2)の間の差異は(2)と(3)の間の差異より大きい。
(1)は呼び名こそ「変換」となっているが、実際は単にコンパイル時にどの型として扱うかを変更しているだけで
実行時のメモリー上のデータは何も変わってないからだ。
本来のキャストとはこの(1)だけを指す。
お前さんのやってることは変換を評価と言い換えただけ。
そういうのを言葉遊びという。馬鹿じゃないの。
(1) ポインタ変換
(2) double→intの変換
(3) 文字列→intの変換
(1)と(2)の間の差異は(2)と(3)の間の差異より大きい。
(1)は呼び名こそ「変換」となっているが、実際は単にコンパイル時にどの型として扱うかを変更しているだけで
実行時のメモリー上のデータは何も変わってないからだ。
本来のキャストとはこの(1)だけを指す。
368デフォルトの名無しさん
2016/10/26(水) 20:07:53.96ID:LebVIXiL369デフォルトの名無しさん
2016/10/26(水) 21:02:06.42ID:X0t3H/iP おまいら根拠にしてるソースURLなり書籍名なりplz
出せずに慣例だの常識だので曖昧に誤魔化して逃げる俺様定義絶対合ってる匿名マンなんてただの荒らしでしかない。
スルーして過疎スレに戻ろうず
出せずに慣例だの常識だので曖昧に誤魔化して逃げる俺様定義絶対合ってる匿名マンなんてただの荒らしでしかない。
スルーして過疎スレに戻ろうず
370デフォルトの名無しさん
2016/10/26(水) 21:59:35.35ID:QysY5RXf >>367
クソワロタwww
クソワロタwww
371デフォルトの名無しさん
2016/10/26(水) 23:28:49.10ID:KQmoHA4r ポインタ変換って何なんだ?
ググっても全くヒットしないんだがコンパイラ業界では隠れた隠語なのか?
ググっても全くヒットしないんだがコンパイラ業界では隠れた隠語なのか?
372デフォルトの名無しさん
2016/10/27(木) 00:26:42.82ID:i508Z9Hm しつこいな
373デフォルトの名無しさん
2016/10/28(金) 00:19:57.23ID:8f+wXH5p マジレスすると
キャスト(cast)は変換や型変換のことじゃないよ
英単語としてのcastの意味のそのまんまの「配役、役の割り当て」って意味だよ
キャスト(cast)は変換や型変換のことじゃないよ
英単語としてのcastの意味のそのまんまの「配役、役の割り当て」って意味だよ
374デフォルトの名無しさん
2016/10/28(金) 00:30:05.75ID:5ko2vSX6375デフォルトの名無しさん
2016/10/28(金) 12:39:29.03ID:4C9WQUMb なんでVBの拡張メソッドはModuleなんだ
グローバルメソッドとしても使えちゃって気持ち悪いんだが
グローバルメソッドとしても使えちゃって気持ち悪いんだが
376デフォルトの名無しさん
2016/10/28(金) 12:51:16.32ID:GTOY14JQ VBはそういうの気にしない人向けの言語なので
377デフォルトの名無しさん
2016/10/28(金) 20:11:10.63ID:wjrX//6G たかだか記法の問題をいちいち気にする方がどうかしてる
378デフォルトの名無しさん
2016/10/28(金) 20:42:45.43ID:ch5b/kiY379デフォルトの名無しさん
2016/10/28(金) 21:17:37.68ID:wjrX//6G >>378
グローバルな識別子=汚染
ではないのだよ
「汚染」てのはライブラリが定義する意図しないグローバルな識別子が問題になるから
悪意を込めて使う言葉で自分で定義したりそれを望む場合には汚染て言葉は使わんよw
字面だけでなくちゃんと言葉の意味を覚えてから使おうね
グローバルな識別子=汚染
ではないのだよ
「汚染」てのはライブラリが定義する意図しないグローバルな識別子が問題になるから
悪意を込めて使う言葉で自分で定義したりそれを望む場合には汚染て言葉は使わんよw
字面だけでなくちゃんと言葉の意味を覚えてから使おうね
380デフォルトの名無しさん
2016/10/28(金) 21:24:21.37ID:1gzGBtQ8 >>379
プログラム作ってるのがお前だけならな…
プログラム作ってるのがお前だけならな…
381デフォルトの名無しさん
2016/10/28(金) 21:34:22.91ID:8wjGwqyI >>379
同意ですね
同意ですね
382デフォルトの名無しさん
2016/10/28(金) 22:00:09.91ID:684gpVHK VBerって言いたいだけやろ
383デフォルトの名無しさん
2016/10/28(金) 22:55:03.12ID:ch5b/kiY384デフォルトの名無しさん
2016/10/29(土) 00:37:53.79ID:vKDUHJSk 汚染の定義と使用法はどうでもいいんだが
グローバルメソッドの定義を教えてくれ
拡張メソッドが通常のメソッドとして呼び出せることが問題だっていうならわかるが
C#の拡張メソッドだって、利用可能な名前空間内に存在する必要があるわけで
モジュールうんぬんは意味がわからん
グローバルメソッドの定義を教えてくれ
拡張メソッドが通常のメソッドとして呼び出せることが問題だっていうならわかるが
C#の拡張メソッドだって、利用可能な名前空間内に存在する必要があるわけで
モジュールうんぬんは意味がわからん
385デフォルトの名無しさん
2016/10/29(土) 00:57:42.29ID:9Fs7N4rN VBのモジュル内のメソッドはグローバル
クラス内の静的メソッドみたいにクラス内の名前空間内に存在しているわけではない。
まあ、ラムダ式といい、もう2008以降はVB使わない方がいいよっていうメッセージでしょ。
少なくとも俺はそう受け取って2005まででVBは見限った
クラス内の静的メソッドみたいにクラス内の名前空間内に存在しているわけではない。
まあ、ラムダ式といい、もう2008以降はVB使わない方がいいよっていうメッセージでしょ。
少なくとも俺はそう受け取って2005まででVBは見限った
386デフォルトの名無しさん
2016/10/29(土) 01:22:39.12ID:vKDUHJSk >VBのモジュル内のメソッドはグローバル
そのグローバルの意味が分からんのだが?
VBだとデフォルトでプロジェクト名の名前空間内に属してるはずだが
その名前空間を超えると?
そのグローバルの意味が分からんのだが?
VBだとデフォルトでプロジェクト名の名前空間内に属してるはずだが
その名前空間を超えると?
387デフォルトの名無しさん
2016/10/29(土) 02:08:01.24ID:9Fs7N4rN 正直長年VB使ってた中で一度もモジュールなんて使ったことなかったけど、
一応モジュールも名前空間の中(ルート名前空間に限らず)に定義できるんだな。
それはいいけど、モジュール自身が名前空間を構成しないから、
そのメンバーはモジュールが存在する名前空間を参照しただけで丸見えになっちゃうわけで
普通に考えれば拡張メソッドはC#と同様に静的クラス(VBにはないけど)に定義する方がよかったね
一応モジュールも名前空間の中(ルート名前空間に限らず)に定義できるんだな。
それはいいけど、モジュール自身が名前空間を構成しないから、
そのメンバーはモジュールが存在する名前空間を参照しただけで丸見えになっちゃうわけで
普通に考えれば拡張メソッドはC#と同様に静的クラス(VBにはないけど)に定義する方がよかったね
388デフォルトの名無しさん
2016/10/29(土) 07:10:41.84ID:ddj4bzvw >>384
モジュールはそれを含む名前空間をImportしただけ(or 同じ名前空間にあるだけ)で
モジュールのメンバが全てトップレベルのスコープにインポートされるだろ
拡張メソッドは オブジェクト.メソッド名 の形式でしか呼び出せないから、
トップレベルで参照可能な名前が増えるわけではなく影響は小さい
C#は最近のバージョンで using static が入ってクラスのstaticメンバをトップレベルにインポートできるようになったが
名前空間単位ではなく対象のクラス名を直接指定しなきゃいけないからやはりモジュールに比べれば影響は小さい
モジュールはそれを含む名前空間をImportしただけ(or 同じ名前空間にあるだけ)で
モジュールのメンバが全てトップレベルのスコープにインポートされるだろ
拡張メソッドは オブジェクト.メソッド名 の形式でしか呼び出せないから、
トップレベルで参照可能な名前が増えるわけではなく影響は小さい
C#は最近のバージョンで using static が入ってクラスのstaticメンバをトップレベルにインポートできるようになったが
名前空間単位ではなく対象のクラス名を直接指定しなきゃいけないからやはりモジュールに比べれば影響は小さい
389デフォルトの名無しさん
2016/10/29(土) 08:03:59.22ID:UEy06zu0 先頭にusingが列挙してあるC#のソースの見づらさと言ったら
しかも書いた人によってか、usingの羅列が違うという
しかも書いた人によってか、usingの羅列が違うという
390デフォルトの名無しさん
2016/10/29(土) 08:14:31.49ID:ddj4bzvw VC#には 未使用のusingの削除・整理 という機能があってだな
それでも見づらいようなロクに責務分割できてない長大なコードなら
usingが無かろうが見づらいから安心しろ
それでも見づらいようなロクに責務分割できてない長大なコードなら
usingが無かろうが見づらいから安心しろ
391デフォルトの名無しさん
2016/10/29(土) 09:08:07.61ID:ov/h/7tc そういや参照の自動削除機能がなくなったな
あれ便利だったのに
あれ便利だったのに
392デフォルトの名無しさん
2016/10/29(土) 10:30:39.20ID:dpmyBZLi Moduleがないとリプレースしたときにお客様がModuleがClassに変わってるんですけど使いにくいんですけどってご立腹なさるのでModuleは必要
393デフォルトの名無しさん
2016/10/29(土) 11:44:59.26ID:cpi9mNqo394デフォルトの名無しさん
2016/10/29(土) 19:48:16.97ID:wsj9Hrl0 >>389
羅列が違うって何?
羅列が違うって何?
395デフォルトの名無しさん
2016/10/29(土) 20:01:25.49ID:3eGSrWP/ >>394
using の順番
using の順番
396デフォルトの名無しさん
2016/10/29(土) 20:16:52.74ID:ddj4bzvw >>393
ところがVBには、プロジェクトの設定で指定した名前空間を全てのソースで暗黙的にImportするというゴミのような機能がある
ところがVBには、プロジェクトの設定で指定した名前空間を全てのソースで暗黙的にImportするというゴミのような機能がある
397デフォルトの名無しさん
2016/10/29(土) 21:11:12.71ID:wsj9Hrl0 >>395
そんなもん自動で揃えられるだろ
そんなもん自動で揃えられるだろ
398デフォルトの名無しさん
2016/10/29(土) 22:52:27.70ID:UEy06zu0399デフォルトの名無しさん
2016/10/29(土) 22:59:38.63ID:wsj9Hrl0 >>398
ゴミキタ━━━━(゚∀゚)━━━━!!
ゴミキタ━━━━(゚∀゚)━━━━!!
400デフォルトの名無しさん
2016/10/29(土) 23:03:06.39ID:i+DlxK4w コードをプロジェクトの外に持ち出したら何が書いてあったかわからなくなるというほかは
デメリットが思いつかない
デメリットが思いつかない
401デフォルトの名無しさん
2016/10/30(日) 00:15:39.58ID:oo8ByUW6402デフォルトの名無しさん
2016/10/30(日) 00:21:18.07ID:payAbzEM403デフォルトの名無しさん
2016/10/30(日) 00:27:55.69ID:ALtsNIP3 >>396
ああ、そういやそんな機能あったね
BCLのほとんど必須の名前空間だけならありかなとも思うけど、
コード上に明示されないのはやっぱり気持ち悪いな
VBはあの有難迷惑のルート名前空間も鬱陶しいね
ああ、そういやそんな機能あったね
BCLのほとんど必須の名前空間だけならありかなとも思うけど、
コード上に明示されないのはやっぱり気持ち悪いな
VBはあの有難迷惑のルート名前空間も鬱陶しいね
404デフォルトの名無しさん
2016/10/31(月) 16:51:00.87ID:jCI7ny/t ディクショナリーのキー取得時に dicHoge.Keys(intIndex) の様に書くと
VisualStudioでは問題無いのに、ideone上でエラーになってしまいます。
何か他に書き方があるのでしょうか?
VisualStudioでは問題無いのに、ideone上でエラーになってしまいます。
何か他に書き方があるのでしょうか?
405デフォルトの名無しさん
2016/10/31(月) 17:17:30.13ID:OqD2s4Cc うわ何これキモい
暗黙にElementAtOrDefaultに変換するのか
教科書的には
Dictionaryは順番を持たないコレクションだからインデックスでアクセスするのは変
暗黙にElementAtOrDefaultに変換するのか
教科書的には
Dictionaryは順番を持たないコレクションだからインデックスでアクセスするのは変
406デフォルトの名無しさん
2016/10/31(月) 17:35:37.71ID:SAEZOlIl 別にキーで要素を検索できることと要素が順序を持つことは何も矛盾しないと思うけどねw
407デフォルトの名無しさん
2016/10/31(月) 17:40:32.47ID:OqD2s4Cc うん、確かにそれはなにも矛盾してないね
408デフォルトの名無しさん
2016/11/02(水) 06:49:35.74ID:/u8gEGW5 DelegateなメソッドをInvokeで呼ぶときに引数って渡せないのでしょうか?
409デフォルトの名無しさん
2016/11/02(水) 06:57:27.71ID:2fBE4wO9 渡せる
410デフォルトの名無しさん
2016/11/02(水) 06:58:55.82ID:/u8gEGW5 >>409
助かりました。
助かりました。
411デフォルトの名無しさん
2016/11/02(水) 08:50:07.47ID:t5KdzDu6 VB久しぶりに触る機会があったけどc#よりちょびっとインテリセンスが馬鹿じゃないか?って感じた
412デフォルトの名無しさん
2016/11/03(木) 14:55:47.96ID:8QV9xAcD413デフォルトの名無しさん
2016/11/03(木) 15:08:37.98ID:I4v6hDq5 すぐ上の話題で答え出てるじゃん
ソースのトップレベルに出現する可能性のある識別子の数がC#に比べて遥かに多いからだよ
モジュールと既定のインポートのせい
ソースのトップレベルに出現する可能性のある識別子の数がC#に比べて遥かに多いからだよ
モジュールと既定のインポートのせい
414デフォルトの名無しさん
2016/11/07(月) 19:08:16.41ID:CxfskhGH 誰かいる? 質問良いですか?
今RichTextBox派生のカスタムコントロール作ってて、
ちょっと詰まってる所があるから詳しい人教えてほしい
今RichTextBox派生のカスタムコントロール作ってて、
ちょっと詰まってる所があるから詳しい人教えてほしい
415デフォルトの名無しさん
2016/11/08(火) 00:51:44.51ID:ysYQgtdr 質問いいですか?と聞いておきながら質問しないアホ発見
416デフォルトの名無しさん
2016/11/08(火) 01:46:02.67ID:/yxQhcwh すごいこと質問していい?
417デフォルトの名無しさん
2016/11/08(火) 02:11:19.46ID:crOcTVn5 誰も居ないのかと思った。質問して良いなら質問させてもらいます
当方、数か月前からVB.NETを始めた初心者なので、
コードが意味不明とか手法が悪いとかあれば、それも含めて指摘頂けるとありがたいです
RichTextBoxにOnPaintで文字を描写しようとして試行錯誤してるんですが、
WndProcでIMEを監視して、変換が確定するまでの間OnPaintが動作しないようにする事で、
都度TextChangedで日本語の文字入力の確定はされないようにできたんだけど、
今度はIMEに入力中の文字が真っ白で表示されない
なので、入力中の文字を表示するのに、
ImmGetCompositionStringで取得した文字をDrawStringで書いてみようかなと思っているのですが
取得が上手くできません
当方、数か月前からVB.NETを始めた初心者なので、
コードが意味不明とか手法が悪いとかあれば、それも含めて指摘頂けるとありがたいです
RichTextBoxにOnPaintで文字を描写しようとして試行錯誤してるんですが、
WndProcでIMEを監視して、変換が確定するまでの間OnPaintが動作しないようにする事で、
都度TextChangedで日本語の文字入力の確定はされないようにできたんだけど、
今度はIMEに入力中の文字が真っ白で表示されない
なので、入力中の文字を表示するのに、
ImmGetCompositionStringで取得した文字をDrawStringで書いてみようかなと思っているのですが
取得が上手くできません
418デフォルトの名無しさん
2016/11/08(火) 02:13:54.72ID:crOcTVn5 WndProc内で、
Select Case m.Msg
Case WM_IME_STARTCOMPOSITION
ForIME = True
Case WM_IME_ENDCOMPOSITION
ForIME = False
Case WM_IME_COMPOSITION
If (CUInt(m.LParam) And CUInt(GCS_COMPSTR)) > 0 Then
Dim intLength As Integer
Dim Imc As IntPtr = ImmGetContext(Handle)
intLength = ImmGetCompositionString(Imc, GCS_COMPSTR, Nothing, 0)
Dim IMEstr As StringBuilder = New StringBuilder(intLength)
ImmGetCompositionString(Imc, GCS_COMPSTR, IMEstr, IMEstr.Capacity)
ImmReleaseContext(Handle, Imc)
End If
End Select
こんなかんじで書いてみているのですが、
intLength = ImmGetCompositionString(Imc, GCS_COMPSTR, Nothing, 0)
↑この部分でDLL 'imm32.dll' の 'ImmGetCompositionString' というエントリ ポイントが見つかりません。というエラーが出てしまいます。
Select Case m.Msg
Case WM_IME_STARTCOMPOSITION
ForIME = True
Case WM_IME_ENDCOMPOSITION
ForIME = False
Case WM_IME_COMPOSITION
If (CUInt(m.LParam) And CUInt(GCS_COMPSTR)) > 0 Then
Dim intLength As Integer
Dim Imc As IntPtr = ImmGetContext(Handle)
intLength = ImmGetCompositionString(Imc, GCS_COMPSTR, Nothing, 0)
Dim IMEstr As StringBuilder = New StringBuilder(intLength)
ImmGetCompositionString(Imc, GCS_COMPSTR, IMEstr, IMEstr.Capacity)
ImmReleaseContext(Handle, Imc)
End If
End Select
こんなかんじで書いてみているのですが、
intLength = ImmGetCompositionString(Imc, GCS_COMPSTR, Nothing, 0)
↑この部分でDLL 'imm32.dll' の 'ImmGetCompositionString' というエントリ ポイントが見つかりません。というエラーが出てしまいます。
419デフォルトの名無しさん
2016/11/08(火) 02:15:58.84ID:crOcTVn5 ImmGetCompositionStringは、
Private Declare Function ImmGetCompositionString Lib "imm32.dll" (ByVal hIMC As Integer, ByVal dwIndex As Integer, ByVal lpBuf As StringBuilder, ByVal dwBufLen As Integer) As Integer
と宣言しています。
Private Declare Function ImmGetCompositionString Lib "imm32.dll" (ByVal hIMC As Integer, ByVal dwIndex As Integer, ByVal lpBuf As StringBuilder, ByVal dwBufLen As Integer) As Integer
と宣言しています。
420デフォルトの名無しさん
2016/11/08(火) 02:21:59.90ID:KFsAZFmi >>419
テキトーに答えるけどとりあえずハンドルはIntPtrでないとダメでしょう
テキトーに答えるけどとりあえずハンドルはIntPtrでないとダメでしょう
421デフォルトの名無しさん
2016/11/08(火) 02:35:47.42ID:crOcTVn5 他の、ImmGetContext等のhWndが入る部分はIntPtrにしているのですが……(+_+)
Private Declare Function ImmGetCompositionString Lib "imm32.dll" (ByVal hIMC As IntPtr, ByVal dwIndex As Integer, ByVal lpBuf As StringBuilder, ByVal dwBufLen As Integer) As Integer
これでもエラーが出るみたいです
Private Declare Function ImmGetCompositionString Lib "imm32.dll" (ByVal hIMC As IntPtr, ByVal dwIndex As Integer, ByVal lpBuf As StringBuilder, ByVal dwBufLen As Integer) As Integer
これでもエラーが出るみたいです
422デフォルトの名無しさん
2016/11/08(火) 03:01:24.83ID:crOcTVn5 やばい寝落ちそう……
質問板は出した質問は絶対閉めろというルールがある場所多いですがここはどうなんですかね?
1時間くらいは粘りたかったけど、眠いのでいったん引き上げます
もう一回試行錯誤して、どうしても駄目ならまた改めて来ます
>>420さん答えてくれてありがとう
質問板は出した質問は絶対閉めろというルールがある場所多いですがここはどうなんですかね?
1時間くらいは粘りたかったけど、眠いのでいったん引き上げます
もう一回試行錯誤して、どうしても駄目ならまた改めて来ます
>>420さん答えてくれてありがとう
423デフォルトの名無しさん
2016/11/08(火) 07:24:04.77ID:Tr1jXB8d Windows NT/2000 は Unicode 版と ANSI 版を実装
424デフォルトの名無しさん
2016/11/08(火) 07:25:30.64ID:Tr1jXB8d そもそも「エントリ ポイントが見つかりません」の意味分かってる?
425デフォルトの名無しさん
2016/11/08(火) 07:35:37.22ID:ic1oOtKi そもそもRichTextBoxにOnPaintで文字を描写って意味がわからん
それRichTextBox使う意味あるのか?
それRichTextBox使う意味あるのか?
426デフォルトの名無しさん
2016/11/08(火) 07:49:06.42ID:Iqb/ffmt 近年、若者のエラーメッセージ離れが深刻な問題になっています
427デフォルトの名無しさん
2016/11/08(火) 09:05:00.96ID:crOcTVn5 おはよう
うーん、わかるかどうかと言われれば微妙なので調べながらやってんですが、
スペルミスかなと思ったけど違うみたいで
関数の大文字小文字の違いって可能性もあるんですね。
後で時間できたら見てみよう……
>>425
ルーラや行番号や空白や改行等の特殊文字が表示されて、
かつ文字色も変えられるようなテキストエディタが作りたくて
普通は違うのでやるんですかね? 例えばPictureBoxに描くとかですか?
もっと効率良い方法とかってあります?
うーん、わかるかどうかと言われれば微妙なので調べながらやってんですが、
スペルミスかなと思ったけど違うみたいで
関数の大文字小文字の違いって可能性もあるんですね。
後で時間できたら見てみよう……
>>425
ルーラや行番号や空白や改行等の特殊文字が表示されて、
かつ文字色も変えられるようなテキストエディタが作りたくて
普通は違うのでやるんですかね? 例えばPictureBoxに描くとかですか?
もっと効率良い方法とかってあります?
428デフォルトの名無しさん
2016/11/08(火) 09:38:24.41ID:+DS6ozoh オープンソースのエディタのソース読んだ?
話はそれからだ
話はそれからだ
429デフォルトの名無しさん
2016/11/08(火) 10:18:57.02ID:Tr1jXB8d >>427
imm32.dllの中にImmGetCompositionStringが無いよって言ってるんだから
ImmGetCompositionStringAかImmGetCompositionStringW探せって言ってるんだけど…
imm32.dllの中にImmGetCompositionStringが無いよって言ってるんだから
ImmGetCompositionStringAかImmGetCompositionStringW探せって言ってるんだけど…
430デフォルトの名無しさん
2016/11/08(火) 11:11:17.92ID:crOcTVn5 Declare Function ImmGetCompositionString Lib "IMM32" Alias "ImmGetCompositionStringA" (ByVal hIMC As Integer, ByVal dwIndex As Integer, ByVal lpBuf As StringBuilder, ByVal dwBufLen As Integer) As Integer
に変えたら解決しました。ありがとうございます(*^-^*)
>>428
なるほど、確かにそうやって勉強できますね!
探してみます。ありがとう
に変えたら解決しました。ありがとうございます(*^-^*)
>>428
なるほど、確かにそうやって勉強できますね!
探してみます。ありがとう
431デフォルトの名無しさん
2016/11/08(火) 11:49:04.58ID:h2p8PH96 ん?
いちいちAとかWとかつけなくても自動的にUnicodeバージョンが選択されるように
なってるはずだと思ったけど、VBは違うのか?
いちいちAとかWとかつけなくても自動的にUnicodeバージョンが選択されるように
なってるはずだと思ったけど、VBは違うのか?
432デフォルトの名無しさん
2016/11/08(火) 12:11:48.40ID:h2p8PH96 DllImport使わずにDeclareなんてVBのレガシー機能使ってるからかな。
ちなみに、デフォではANSIバージョンが選択されるんだな記憶違いだった
ちなみに、デフォではANSIバージョンが選択されるんだな記憶違いだった
433デフォルトの名無しさん
2016/11/08(火) 13:57:55.49ID:VtVauF4w わざわざAliasなんて付けるから自動選択が働かない
なんでか知らんけどDeclareのサンプルはほとんどAlias付けてるんだよな
VB6だと必須だったのかね?
なんでか知らんけどDeclareのサンプルはほとんどAlias付けてるんだよな
VB6だと必須だったのかね?
434デフォルトの名無しさん
2016/11/08(火) 15:14:26.16ID:Tr1jXB8d >>433
付けないとエラーになるっつってんだろ
付けないとエラーになるっつってんだろ
435デフォルトの名無しさん
2016/11/08(火) 15:23:43.48ID:VtVauF4w あ、ごめん
Declare Autoにした場合のみだったのね
Declare Autoにした場合のみだったのね
436デフォルトの名無しさん
2016/11/08(火) 20:21:53.56ID:t3tssHtU デフォはどっちかすぐ忘れるから明示する
437デフォルトの名無しさん
2016/11/09(水) 00:41:48.78ID:NSJDTbF5 >>416
駄目です。
駄目です。
438デフォルトの名無しさん
2016/12/06(火) 23:28:37.80ID:qDbNXMxz テキストボックスとかコントロールをコピーしたいんだけど、簡単にできませんかね?
439デフォルトの名無しさん
2016/12/07(水) 00:48:28.39ID:wAmrJ/1m ctrl-c、ctrl-v じゃあかんの?
440デフォルトの名無しさん
2016/12/07(水) 00:59:33.95ID:SEeb/ONi すいません、インスタンスをコピーです
441デフォルトの名無しさん
2016/12/07(水) 02:09:55.02ID:fOypxOSG442デフォルトの名無しさん
2016/12/20(火) 21:56:31.88ID:f9HTxJj+ データベースから大量のデータを取得するときってDataTableとDataReaderどっちがいいの?
443デフォルトの名無しさん
2016/12/20(火) 22:13:21.49ID:wmh5vlKz DataTableはオンメモリだから処理できるデータ量には限界があるし、
DataTable.Loadだと全部のロードが終わるまで処理を始められないので
ロード中のIO待ちの時間が無駄になる。
もし大量データ処理時のメモリ使用量やスループットが問題になっているなら
DataReaderでストリーミング処理することで性能を大幅に改善できるはず。
DataTable.Loadだと全部のロードが終わるまで処理を始められないので
ロード中のIO待ちの時間が無駄になる。
もし大量データ処理時のメモリ使用量やスループットが問題になっているなら
DataReaderでストリーミング処理することで性能を大幅に改善できるはず。
444デフォルトの名無しさん
2016/12/20(火) 22:40:05.78ID:gUOuUtAj youtubeを開くと
一番上の検索ボックスがさ
入力無しだとグレイ文字で検索って表示されてて
(この検索文字にカーソルは移動しない)
何かを入力するとグレイ文字が消える
これってどうやって実装するんすかね?
パッと思いつかんのだが。。。
一番上の検索ボックスがさ
入力無しだとグレイ文字で検索って表示されてて
(この検索文字にカーソルは移動しない)
何かを入力するとグレイ文字が消える
これってどうやって実装するんすかね?
パッと思いつかんのだが。。。
445デフォルトの名無しさん
2016/12/20(火) 22:43:07.08ID:TSG9jdVQ パッと思いつかん時はジックリ考えろ
それでも思いつかんかったらソープ行け
それでも思いつかんかったらソープ行け
446デフォルトの名無しさん
2016/12/20(火) 23:12:04.98ID:wmh5vlKz >>444
HTMLのplaceholderだよ
HTMLのplaceholderだよ
447デフォルトの名無しさん
2016/12/20(火) 23:16:47.98ID:gUOuUtAj448デフォルトの名無しさん
2016/12/23(金) 17:17:30.06ID:89cvwMZr 時々テキストボックスを監視して、空の時だけ重ねた別のテキストプレーンにSearchとか表示させるとか…
他にも色々方法はあるやろ
他にも色々方法はあるやろ
449デフォルトの名無しさん
2016/12/23(金) 17:58:29.05ID:89cvwMZr 言った手前
Private Sub TextBox1_TextChanged(sender As System.Object, e As System.EventArgs) Handles TextBox1.TextChanged
If textBox1.Text = "" Then
textBlock1.Text = "Search"
Else
textBlock1.Text = ""
End If
End Sub
Private Sub TextBox1_TextChanged(sender As System.Object, e As System.EventArgs) Handles TextBox1.TextChanged
If textBox1.Text = "" Then
textBlock1.Text = "Search"
Else
textBlock1.Text = ""
End If
End Sub
450デフォルトの名無しさん
2016/12/23(金) 18:19:03.14ID:jhZLEzKr カレットが入るまでは淡色の文字表示しとってカレットが入ったら背景画像に差し替える
文字が入ったら白背景とかw
文字が入ったら白背景とかw
451デフォルトの名無しさん
2016/12/29(木) 07:29:02.60ID:qvNXwZDz データベースをアクセスするプログラムってACCESS以外は、埋め込みSQLとC言語を使ってUNIX上でしかやったこと無いロートルですが、
VB.NETでDBアクセスって今は何が主流なん?
ADO.NET関係の書籍って、アマゾンでも結構古いのが多いんだけど、ADO.NETって過去の遺物なん?
VB.NETでDBアクセスって今は何が主流なん?
ADO.NET関係の書籍って、アマゾンでも結構古いのが多いんだけど、ADO.NETって過去の遺物なん?
452デフォルトの名無しさん
2016/12/29(木) 07:50:42.07ID:HW4fqFSE SQLServerならばADO.NET
OracleならODP.NETだな
OracleならODP.NETだな
453デフォルトの名無しさん
2016/12/29(木) 11:13:15.20ID:BD9K+jOv ADO.NETは過去の遺物だけど現役だよ
新機能の拡張が期待できないってだけ
Entity FrameworkやサードのフレームワークもADO.NETに依存してる
ADO.NETは抽象的なフレームワークで実装はプロバイダごとに異なる
MSならSqlClient、OracleならODP.NET、ポスグレならNpgsql
ODBCドライバやOleDbドライバ用の実装もある
新機能の拡張が期待できないってだけ
Entity FrameworkやサードのフレームワークもADO.NETに依存してる
ADO.NETは抽象的なフレームワークで実装はプロバイダごとに異なる
MSならSqlClient、OracleならODP.NET、ポスグレならNpgsql
ODBCドライバやOleDbドライバ用の実装もある
454デフォルトの名無しさん
2016/12/29(木) 11:15:53.14ID:KEC+z4ay455デフォルトの名無しさん
2016/12/29(木) 11:42:16.70ID:/FtNyMoj 俺はSQLite使ってる
456デフォルトの名無しさん
2016/12/29(木) 17:42:29.56ID:qvNXwZDz457デフォルトの名無しさん
2016/12/29(木) 18:11:55.59ID:ICm4kcbN 今時ADO.NETなんて括りに意味はないぞ
Entity FrameworkとかもADO.NETに含まれているらしく、
もはや「.NETのデータベース関連の機能」というだけのふわっとした総称でしかない
単純に低レベルAPI使って普通にSQL投げたいだけならDbConnectionのあたりを適当にググれば十分
Entity FrameworkとかもADO.NETに含まれているらしく、
もはや「.NETのデータベース関連の機能」というだけのふわっとした総称でしかない
単純に低レベルAPI使って普通にSQL投げたいだけならDbConnectionのあたりを適当にググれば十分
458デフォルトの名無しさん
2016/12/29(木) 19:04:08.62ID:qvNXwZDz459デフォルトの名無しさん
2016/12/29(木) 20:37:49.89ID:KEC+z4ay ストアドパッケージ使ってるとEntity Frameworkを使う気になれない
460デフォルトの名無しさん
2017/01/02(月) 12:24:29.63ID:sj4687w4 VBに限らずだけど、ORMっていうの?オブジェクトに対してSQL生成してくれる
機能あるけど、SQL書かないってそんなにメリットあるんですかね?
複雑なSELECT文ならORMでは対応しずらいので結局SQL書くだろうし、その他の
INSERT・UPDATE・DELETE・MERGEなんてバリエーションが限られるだろうから、
テーブル名と列名さえあれば、ExcelVBAとかVBSとか自作VBツールとかで自動生成可能なはず。
「SQL書いてないけど、Insertできたよ!」っていうコーディングの感覚は
実際にやってみて新鮮だったけど、Insert文ぐらい書けよ、とも思う。
機能あるけど、SQL書かないってそんなにメリットあるんですかね?
複雑なSELECT文ならORMでは対応しずらいので結局SQL書くだろうし、その他の
INSERT・UPDATE・DELETE・MERGEなんてバリエーションが限られるだろうから、
テーブル名と列名さえあれば、ExcelVBAとかVBSとか自作VBツールとかで自動生成可能なはず。
「SQL書いてないけど、Insertできたよ!」っていうコーディングの感覚は
実際にやってみて新鮮だったけど、Insert文ぐらい書けよ、とも思う。
461デフォルトの名無しさん
2017/01/02(月) 12:28:47.75ID:ukc00ODR 中途半端なORMはいらんよね。
462デフォルトの名無しさん
2017/01/02(月) 14:08:47.76ID:CPceoiNS >>460
DRY
ツールで自動生成するんならORMでもいい、生成されたSQLを管理しなくて済む、と考えることもできる
自動生成は生成物を直接弄らないことを徹底できるならいいけど、大抵は自動生成コードが独り歩きして破綻する
そうして変更時の修正箇所がどんどん増えてくんだよ
DRY
ツールで自動生成するんならORMでもいい、生成されたSQLを管理しなくて済む、と考えることもできる
自動生成は生成物を直接弄らないことを徹底できるならいいけど、大抵は自動生成コードが独り歩きして破綻する
そうして変更時の修正箇所がどんどん増えてくんだよ
463デフォルトの名無しさん
2017/01/02(月) 16:02:44.86ID:CCmbcSgt 460です。
>>462
すみません、「自作ツールで自動生成」って紛らわしいこと書いちゃったけど、
VB側にSQLを記述する(=SQLを構築するのSharedなFunctionをたくさん作る)ってのが
前提にあって、INSERTとかは手打ちするのもアレだから自作ツールにSQL生成させて
それをVBなりPHPなりJavaなりで使えるようにテキストエディタのキーマクロでも使って編集し、
そいつをコピペする、ってことです。
なので、「SQLを管理しなくて済む」というより「しっかり管理したい」
ということなんですね。
で、この手順なら(Select以外の)SQLをPG言語側のソースに落とし込むのに
少なくとも手打ちよりかはスムーズにできるので、今更言語側でブラックボックス化
してもらう必要ないのに、と思うわけであります。
まぁうちの案件規模が小さいからそう思えるのかも。
>>462
すみません、「自作ツールで自動生成」って紛らわしいこと書いちゃったけど、
VB側にSQLを記述する(=SQLを構築するのSharedなFunctionをたくさん作る)ってのが
前提にあって、INSERTとかは手打ちするのもアレだから自作ツールにSQL生成させて
それをVBなりPHPなりJavaなりで使えるようにテキストエディタのキーマクロでも使って編集し、
そいつをコピペする、ってことです。
なので、「SQLを管理しなくて済む」というより「しっかり管理したい」
ということなんですね。
で、この手順なら(Select以外の)SQLをPG言語側のソースに落とし込むのに
少なくとも手打ちよりかはスムーズにできるので、今更言語側でブラックボックス化
してもらう必要ないのに、と思うわけであります。
まぁうちの案件規模が小さいからそう思えるのかも。
464デフォルトの名無しさん
2017/01/02(月) 16:07:50.85ID:CPceoiNS465デフォルトの名無しさん
2017/01/02(月) 16:17:05.07ID:icN3LuLp 最初のだけ自動生成すればええんやで
修正時は全部手で作ればええんや
修正時は全部手で作ればええんや
466デフォルトの名無しさん
2017/01/02(月) 16:30:50.83ID:CPceoiNS ORMの意義はSQLコマンドを生成することよりもむしろ
テーブルの行とオブジェクトをマッピングすることにある
いちいちカラムとプロパティの対応付けを猿のように手書きしなくても
自動でやってくれるツールだと割り切って使えば悪いもんじゃない
テーブルの行とオブジェクトをマッピングすることにある
いちいちカラムとプロパティの対応付けを猿のように手書きしなくても
自動でやってくれるツールだと割り切って使えば悪いもんじゃない
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「厚かましい挑発的発言だ」中国国連大使が高市首相発言に強く反発 日本の常任理事国入りに明確に反対 [ぐれ★]
- 中国側が首相答弁の撤回要求、日本側拒否★6 [夜のけいちゃん★]
- 解体ごみ約2.3トンを山に不法投棄か トルコ国籍解体工を逮捕 埼玉 [どどん★]
- 債券・円・株「トリプル安」に…長期金利1.755%まで上昇、円は対ユーロで史上最安値 ★3 [蚤の市★]
- 自民、経済対策で子ども1人に2万円給付へ 児童手当に上乗せ 所要額は約4000億円 [ぐれ★]
- 【漫画】『週刊少年サンデー』連載中の漫画家、前編集者に怒り! 入稿遅れ、無断のセリフ変更など暴露 「心の糸が切れて」 [冬月記者★]
- 愛国者「高市総理が威勢よく吠えてなければこんな事態にはなってないって話に変わってるけど、元はといえばこいつがきっかけだからね?」 [856698234]
- 【悲報】高市早苗さん、たった一人で日本を崩壊へ導く [714769305]
- 【悲報】「やったー!こだわりまくった洋館仕立ての家を建てたぞ!」➡「「離婚したんで住まずに売ります……」 [158478931]
- 安倍祖父(東大)安倍父(東大)、安倍晋三(成蹊大)→なぜなのか? [832215575]
- 精神する時の🏡
- 【悲報】数年後ジャップ「足らぬ足らぬは工夫が足らぬ😤」 [616817505]
