dcsimg
Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX

By submitting your information, you agree that devx.com may send you DevX offers via email, phone and text message, as well as email offers about other products and services that DevX believes may be of interest to you. DevX will process your information in accordance with the Quinstreet Privacy Policy.


Tip of the Day
Language: VB
Expertise: Beginner
Jun 29, 2005

WEBINAR:

On-Demand

Building the Right Environment to Support AI, Machine Learning and Deep Learning


Limit the Focus of an MSFlexGrid to a Certain Range of Columns and Rows

This code limits the focus in a big MSFlexGrid to a certain range of columns and rows. It limits movement by using the entercell method. It controls the use of enterkey, arrowkey, or mouse clicking with simple, on-cell direct editing:

Const XTRA_COLS = 3     'including fixed column
Const XTRA_ROWS = 15    'including fixed row


Private Sub flxGrdDemo_EnterCell()

    With flxGrdDemo
        If .Col > .Cols - XTRA_COLS Then
            .Col = 1
            If .Row + 1 <= .Rows - XTRA_ROWS Then
                .Row = .Row + 1
            Else
                .Row = 1
                .Col = 1
            End If
        End If
    End With
End Sub

Private Sub FlxGrdDemo_KeyPress(KeyAscii As Integer)
Select Case KeyAscii
    Case vbKeyReturn
        ' When the user hits the return key
        ' this code'll move the next cell or row.
        With flxGrdDemo
            If .Col + 1 <= .Cols - XTRA_COLS Then
                .Col = .Col + 1
            ElseIf .Row + 1 <= .Rows - XTRA_ROWS Then
                .Row = .Row + 1
                .Col = 1
            Else
                .Row = 1
                .Col = 1
            End If
        End With
    Case vbKeyBack
        ' Delete the previous character when the
        ' backspace key is used.
        With flxGrdDemo
            If Trim(.Text) <> "" Then _
                .Text = Mid(.Text, 1, Len(.Text) - 1)
        End With
    Case Is < 32
        ' Avoid unprintable characters.
    Case Else 'Else print everything
        With flxGrdDemo
            .Text = .Text & Chr(KeyAscii)
        End With
End Select
End Sub

Private Sub FlxGrdDemo_KeyUp(KeyCode As _
Integer, Shift As Integer)
Select Case KeyCode
    ' Copy
    Case vbKeyC And Shift = 2 ' Control + C
        Clipboard.Clear
        Clipboard.SetText flxGrdDemo.Text
        KeyCode = 0
        ' Paste
    Case vbKeyV And Shift = 2 'Control + V
        flxGrdDemo.Text = Clipboard.GetText
        KeyCode = 0
        ' Cut
    Case vbKeyX And Shift = 2 'Control + X
        Clipboard.Clear
        Clipboard.SetText flxGrdDemo.Text
        flxGrdDemo.Text = ""
        KeyCode = 0
        ' Delete
    Case vbKeyDelete
        flxGrdDemo.Text = ""
End Select
End Sub
Shuhaimen Ismail
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date