- PR -

OnTextChangeのオーバーライド

投稿者投稿内容
Kazuki
ぬし
会議室デビュー日: 2004/10/13
投稿数: 298
投稿日時: 2004-11-25 18:00
二重投稿になっちゃったorz

ついでに,オーバーライドは継承先で親クラスのメソッドの動作を上書きするためのものなので継承せずにオーバーライドはできません。

[ メッセージ編集済み 編集者: Kazuki 編集日時 2004-11-25 18:04 ]
めだか
大ベテラン
会議室デビュー日: 2004/11/11
投稿数: 109
投稿日時: 2004-11-25 18:10
はい、どうしても無理そうならそうするしかないのですが、
TextChangedイベントでは一瞬表示されますよね?
市販のInputManではそういう事もありませんので同じように
できないかなと思った次第です。
InputManを使いたいのですがクライアントがWin95も存在してますので
却下となってしまいました。
Hasumi
ベテラン
会議室デビュー日: 2002/07/23
投稿数: 78
お住まい・勤務地: 神奈川・東京
投稿日時: 2004-11-25 18:49
引用:

InputManを使いたいのですがクライアントがWin95も存在してますので


というか.NET FrameworkがWindows 95には対応していないかと。
.NET Framework 1.1 必要システム
めだか
大ベテラン
会議室デビュー日: 2004/11/11
投稿数: 109
投稿日時: 2004-11-25 18:54
すいません、Win98の間違いでした
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2004-11-26 02:06
めだかさん、こんばんは。

んー、ひょっとしてこういう事↓だったりします?

コード:
'---------------------------------------
'チェック機能を実装するクラス
'---------------------------------------
Public Class TextChecker

    Public Sub New(ByVal Parent As Form)
        Dim Ctrl As Control

        For Each Ctrl In Parent.Controls
            If (TypeOf Ctrl Is TextBox) Then
                AddHandler CType(Ctrl, TextBox).TextChanged, _
                    AddressOf Me.TextChanged
            End If
        Next
    End Sub

    Public Sub TextChanged(ByVal sender As Object, _
        ByVal e As EventArgs)

        If CType(sender, TextBox).Text = "a" Then
            CType(sender, TextBox).Text = "bb"
        End If
    End Sub

End Class

'---------------------------------------
'TextBoxを幾つか配置したフォーム
'---------------------------------------
Public Class Form1
    Inherits System.Windows.Forms.Form

#Region " Windows フォーム デザイナで生成されたコード "
    '省略
#End Region

    Private TextChecker1 As TextChecker

    Private Sub Form1_Load(ByVal sender As Object, _
        ByVal e As System.EventArgs) Handles MyBase.Load

        TextChecker1 = New TextChecker(Me)
    End Sub

End Class



あるいは、System.ComponentModel.IExtenderProvider インターフェイスあたりを実装するクラスを使うと、出来そうな気も…(未確認)。
めだか
大ベテラン
会議室デビュー日: 2004/11/11
投稿数: 109
投稿日時: 2004-11-26 09:04
はい、まさにそんな感じです
あとはTextChangedの替わりにOnTextChangeなら完璧で・・・

きくちゃんさんのような感じにするならOnTextChangeは諦める
OnTextChange使うなら継承したカスタムコントロールを使うしかない
の2択って事になるのかな?

System.ComponentModel.IExtenderProvider インターフェイスもおもしろそうですね
存在すら知りませんでした
ありがとうございました

スキルアップ/キャリアアップ(JOB@IT)