C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

全過去ログを検索

<< 0 >>
■39122  VisualC# テキストボックスの選択範囲指定について。
□投稿者/ y2 -(2009/07/30(Thu) 14:42:38)

    分類:[C#] 

    こんにちは。
    どなたか回答お願いします。

    環境、VisualStudio2008 C#、OS XPです。

    初歩的な質問かもしれませんが…

    テキストボックスに入力された文字を判断してDBから検索してくるプログラムを書いています。

    ある一つのテキストボックスには4桁の数値を入力させるようにしています。
    なので、文字列が入力された場合や4桁を満たしていない場合には、エラーメッセージを出しています。

    このメッセージ後の処理として、テキストボックスの入力内容のすべてを選択範囲に指定したいのですが、出来るのでしょうか?

    理由としては、全選択された状態で表示さしておけば、BackSpaceで消すことも出来ますし、単なる入力ミスなら一から入力しなくて済むようにです。


    分かりづらい質問で申し訳ありませんが、お願いします。
親記事 /過去ログ67より / 関連記事表示
削除チェック/

■53262  Re[4]: VB2008でスロットゲームを作っていますが
□投稿者/ shu -(2010/09/08(Wed) 16:55:59)
    No53261 (VB初心者 さん) に返信
    ドラムパターンはそれぞれのドラムで配列かListを使えばいいかと思います。ドラムの場所を保持する変数を用意する必要があります。

    Timerは1個でいいです。というか複数持つと変な動きをすることがあるのでやめた方がいいと思います。
    ドラムの停止制御はprivate変数をドラム単位で用意してその値をTimerイベント内で判断してTimerの停止を行い、ボタンのクリックではこの変数の値の変更だけ行います。
記事No.53149 のレス /過去ログ89より / 関連記事表示
削除チェック/

■70109  Re[2]: UDPを使用して3台での通信について
□投稿者/ にこにこ -(2014/02/25(Tue) 00:30:29)
    甕星 さん

    解決しました。
    ありがとございました。


    No70068 (甕星 さん) に返信
    > ■No70064 (にこにこ さん) に返信
    >> objSck.Connect("192.168.1.100", 60000)
    >
    > ここで相手先IPアドレスをしていすのでは無く・・・
    >
    >> Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    >> ' ソケット送信
    >> Dim dat As Byte() = _
    >> System.Text.Encoding.GetEncoding("SHIFT-JIS").GetBytes("abc123")
    >> objSck.Send(dat, dat.GetLength(0))
    >>
    >> End Sub
    >
    > 送信するときにSendtoメソッドを使って、相手先IPアドレスを指定します。
    >
    > またUDPの場合は、通信相手が2台以上でも同じソケットを使用します。
    > *1の部分は不要です。
記事No.70064 のレス / END /過去ログ119より / 関連記事表示
削除チェック/

■70110  Re[4]: 起動元アプリをアクティブにする。
□投稿者/ tocs -(2014/02/25(Tue) 00:31:29)
>
    No70106 (Azulean さん) に返信
    >「アクティブであることと」、「前面にあること」は、実際には違います。
    > 前面にあるけど入力フォーカスがないということがあり得るためです。

    おっしゃるとおりですね。すみません、考慮不足でした。
記事No.70089 のレス /過去ログ120より / 関連記事表示
削除チェック/

■93255  ビットからバイトを簡単に得る方法
□投稿者/ ブラック -(2019/11/30(Sat) 17:29:24)

    分類:[.NET 全般] 

    あるバイト変数があり、
    それのnビット目が立っているかどうかを調べたいのですが、
    普通に書くと以下のようになると思います。


    Dim bbb As Byte = 0

    Dim n As Integer = 4

    If bbb = (bbb Or CByte(2 ^ (n - 1))) Then

    End If

    もっとエレガントに、00010000のような数列から
    ビット演算をすることはできないでしょうか?

    あるいは
    以下のページに書かれてあるように
    https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1472855599
    Enumで宣言しておくのが通常なのでしょうか?

親記事 /過去ログ161より / 関連記事表示
削除チェック/

■93257  Re[1]: ビットからバイトを簡単に得る方法
□投稿者/ 魔界の仮面弁士 -(2019/11/30(Sat) 19:23:46)
    No93255 (ブラック さん) に返信
    > あるバイト変数があり、
    > それのnビット目が立っているかどうかを調べたいのですが、
    > 普通に書くと以下のようになると思います。
    > If bbb = (bbb Or CByte(2 ^ (n - 1))) Then

    Visual Basic のバージョンは何でしょうか?

    2003 以降ならビットシフト演算子を使えるので、n が 1〜8 の範囲であるのなら、
    「CByte(2 ^ (n - 1))」よりも「CByte(1) << (n - 1)」の方が良いと思います。

    ^ 演算子って、結局のところ Math.Pow メソッドの呼び出しに過ぎないので、
    前者だと、CByte 前に Double 型で処理されてしまうのが無駄に思えます。


    > もっとエレガントに、00010000のような数列から
    > ビット演算をすることはできないでしょうか?

    2017 以降なら、2 進数リテラル表現を使って数値を表現できます。
    Dim bin As Byte = &B1100_1001
記事No.93255 のレス /過去ログ161より / 関連記事表示
削除チェック/

■93256  Re[1]: ビットからバイトを簡単に得る方法
□投稿者/ キングダム -(2019/11/30(Sat) 18:59:02)
    No93255 (ブラック さん) に返信

    標準ライブラリにはないっぽいです
    フラグに名前があるならEnumを定義するとわかりやすいですけど
    ちょっと計算したいだけなんだってときはこんな関数こしらえます私なら

    If IsFlag(bbb, 1 << 4) Then

    End If

    Function IsFlag(ByVal num As Byte, ByVal flag As Byte) As Boolean
    Return (num And flag) = flag
    End Function
記事No.93255 のレス /過去ログ161より / 関連記事表示
削除チェック/

■93259  Re[2]: ビットからバイトを簡単に得る方法
□投稿者/ ブラック -(2019/11/30(Sat) 21:46:02)
    納得しました
    どうもありがとうございます。
記事No.93255 のレス / END /過去ログ161より / 関連記事表示
削除チェック/

■93260  Re[3]: ビットからバイトを簡単に得る方法
□投稿者/ ブラック -(2019/11/30(Sat) 21:49:11)
    すいません、
    一つお聞きするのを忘れていました。
    調べていて、
    https://riptutorial.com/ja/vb-net/example/5910/flags%E5%B1%9E%E6%80%A7

    <Flags>属性というものがあることを知りました
    検索すると情報ページはたくさん見つかるのですが、
    一体、これがどういう役目をしているのか分かりません。
    通常のEnumと何が違うのでしょうか?

    上のページでは
    複数の値をenum変数に割り当てることができます。
    と書かれていますが、
    <Flags>属性を付けなくとも
    複数の値を付けられると思います

    何が違うのでしょうか?
記事No.93255 のレス /過去ログ161より / 関連記事表示
削除チェック/

■93261  Re[4]: ビットからバイトを簡単に得る方法
□投稿者/ KOZ -(2019/11/30(Sat) 22:06:03)
    No93260 (ブラック さん) に返信
    > <Flags>属性を付けなくとも
    > 複数の値を付けられると思います
    > 何が違うのでしょうか?
    
    ToString() すると違いが分かります。
    
    <Flags>
    Enum TestEnum
        A = 1
        B = 2
    End Enum
    
    Dim t As TestEnum = TestEnum.A Or TestEnum.B
    Debug.Print(t.ToString())
    
    <Flags> をつけないと 3、つけると"A, B" になります。
    
    
記事No.93255 のレス /過去ログ161より / 関連記事表示
削除チェック/

■93263  Re[4]: ビットからバイトを簡単に得る方法
□投稿者/ キングダム -(2019/11/30(Sat) 22:20:08)
    No93260 (ブラック さん) に返信

    Flagsは他の開発者やプログラムに対してこのEnumはフラグとして使用できるよ
    ビット演算が可能だよってことを示すためのもののようです

    Flagsがある⇒ビット演算はできる
    Flagsがない⇒ビット演算はできるかもしれないし、できないかもしれない

    って感じなのでEnumをフラグとして使用するならFlags使った方が良さげです
記事No.93255 のレス /過去ログ161より / 関連記事表示
削除チェック/

■93266  Re[5]: ビットからバイトを簡単に得る方法
□投稿者/ ブラック -(2019/12/01(Sun) 14:08:33)
    皆様、どうもありがとうございました。
記事No.93255 のレス / END /過去ログ161より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -