Ignore:
Timestamp:
Jul 13, 2008, 2:29:17 AM (16 years ago)
Author:
イグトランス (egtra)
Message:

Controlをデリゲートベースにした。DictionaryのContainsKeyとTryGetValueを実装。デリゲートの追加・削除の右辺にNothingを指定可能にした。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ab5.0/ablib/src/Classes/ActiveBasic/Windows/UI/Forms/EventArgs.ab

    r473 r542  
    1111TypeDef EventArgs = System.EventArgs
    1212TypeDef EventHandler = System.EventHandler
     13
     14Class MessageEventArgs
     15    Inherits EventArgs
     16Public
     17    Sub MessageEventArgs(hwndSrc As HWND, message As DWord, wParam As WPARAM, lParam As LPARAM)
     18        msg = message
     19'       hwnd = hwndSrc
     20        wp = wParam
     21        lp = lParam
     22        lr = 0
     23    End Sub
     24
     25    Function Msg() As DWord
     26        Msg = msg
     27    End Function
     28
     29'   Function HWnd() As HWND
     30'       HWnd = hwnd
     31'   End Function
     32
     33    Function WParam() As WPARAM
     34        WParam = wp
     35    End Function
     36
     37    Function LParam() As LPARAM
     38        LParam = lp
     39    End Function
     40
     41    Function LResult() As LRESULT
     42        LResult = lr
     43    End Function
     44
     45    Sub LResult(lResult As LRESULT)
     46        lr = lResult
     47    End Sub
     48Private
     49    msg As DWord
     50'   hwnd As HWND
     51    wp As WPARAM
     52    lp As LPARAM
     53    lr As LRESULT
     54End Class
     55
     56Delegate Sub MessageEventHandler(sender As Object, e As MessageEventArgs)
    1357
    1458Class PaintDCEventArgs
     
    63107    XButton1 = MK_XBUTTON1
    64108    XButton2 = MK_XBUTTON2
     109
     110    Shift = MK_SHIFT
     111    Control = MK_CONTROL
    65112End Enum
    66113
     
    352399
    353400    Function KeyCode() As Keys
    354         KeyCode = key And Keys.KeyCode
     401        Dim k = key As DWord
     402        Dim mask = Keys.KeyCode As DWord
     403        KeyCode = (k And mask) As Keys
    355404    End Function
    356405
     
    360409
    361410    Function Modifiers() As Keys
    362         Modifiers = key And Keys.Modifiers
     411        Dim k = key As DWord
     412        Dim mask = Keys.Modifiers As DWord
     413        Modifiers = (k And mask) As Keys
    363414    End Function
    364415
     
    381432
    382433Delegate Sub KeyEventHandler(sender As Object, e As KeyEventArgs)
     434
     435Class CreateEventArgs
     436    Inherits EventArgs
     437Public
     438    Sub CreateEventArgs(pCreateStruct As *CREATESTRUCT)
     439        pcs = pCreateStruct
     440    End Sub
     441
     442    Const Function HInstance() As HINSTANCE
     443        HInstance = pcs->hInstance
     444    End Function
     445
     446    'Menu: pcs->hMenu
     447
     448    Const Function Parent() As Control
     449        'Parent = Control.FromHandle(pcs->hwndParent)
     450    End Function
     451
     452    Const Function Height() As Long
     453        Height = pcs->cy
     454    End Function
     455
     456    Const Function Width() As Long
     457        Width = pcs->cx
     458    End Function
     459
     460    Const Function Y() As Long
     461        Y = pcs->cy
     462    End Function
     463
     464    Const Function X() As Long
     465        X = pcs->cx
     466    End Function
     467
     468    Const Function Style() As DWord
     469        Style = pcs->style As DWord
     470    End Function
     471
     472    Const Function Caption() As String
     473        Caption = New String(pcs->lpszName)
     474    End Function
     475
     476    Const Function ClassName() As String
     477        ClassName = New String(pcs->lpszClass)
     478    End Function
     479
     480    Const Function ExStyle() As DWord
     481        ExStyle = pcs->dwExStyle
     482    End Function
     483
     484    Const Function CreateStruct() As *CREATESTRUCT
     485        CreateStruct = pcs
     486    End Function
     487Private
     488    pcs As *CREATESTRUCT
     489End Class
     490
     491Delegate Sub CreateEventHandler(sender As Object, e As CreateEventArgs)
    383492
    384493End Namespace 'Forms
Note: See TracChangeset for help on using the changeset viewer.