SOURCE
Počet zobrazení stránky
2011-04-23
2011-04-22
Form fade in and out
This code will make fading in and out effect to your form
Public Class Form1 Private Sub Form1_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing Do Until Me.Opacity = 0.0 Me.Opacity -= 0.01 Me.Refresh() System.Threading.Thread.Sleep(10) Loop End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.Opacity = 0 Do Until Me.Opacity = 1 Me.Opacity += 0.01 Me.Refresh() System.Threading.Thread.Sleep(10) Loop End Sub End Classthe values could be changed to make the effect slower or faster
GetBetween function
Public Function getbetween(ByVal input As String, ByVal str1 As String, _
ByVal str2 As String, ByVal index As Integer) As String
If str1 <> str2 Then
Dim tempdata As String = input.Replace(str1, "Ş")
Dim data As String = tempdata.Replace(str2, "®")
Dim tempvalue() As String = data.Split("Ş")
Return tempvalue(index + 1).Split("®")(0)
ElseIf str1 = str2 Then
Dim data As String = input.Replace(str1, "?")
Return Data.Split(str1)(index + 1)
End If
End Function
Usage:
getbetween("the text we want to get the value from","the first string the text is located between", "the second string the text is located between", "which value to return if there are more matches")
Example:
getbetween("Some testing string <|?TROLOL?|> blah blah <|?some shit?|> blah blah blAH", "<|?", "?|>", 0)
'returns "TROLOL"
getbetween("Some testing string <|?TROLOL?|> blah blah <|?some shit?|> blah blah blAH", "<|?", "?|>", 1)
'returns "some shit"
Move and Resize without formborder
Public Class Form1 Private Const HTCAPTION As Integer = 2 Private Const HTLEFT As Integer = 10 Private Const HTRIGHT As Integer = 11 Private Const HTTOP As Integer = 12 Private Const HTTOPLEFT As Integer = 13 Private Const HTTOPRIGHT As Integer = 14 Private Const HTBOTTOM As Integer = 15 Private Const HTBOTTOMLEFT As Integer = 16 Private Const HTBOTTOMRIGHT As Integer = 17 Private Const WM_NCHITTEST As Integer = &H84 Private Const WM_NCLBUTTONDOWN As Integer = &HA1 Private Const resizeBorder As Integer = 5 Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message) If m.Msg = WM_NCHITTEST Then Dim pt As New Point(m.LParam.ToInt32) pt = Me.PointToClient(pt) If pt.X < resizeBorder AndAlso pt.Y < resizeBorder Then m.Result = New IntPtr(HTTOPLEFT) ElseIf pt.X > (Me.Width - resizeBorder) AndAlso pt.Y < resizeBorder Then m.Result = New IntPtr(HTTOPRIGHT) ElseIf pt.Y < resizeBorder Then m.Result = New IntPtr(HTTOP) ElseIf pt.X < resizeBorder AndAlso pt.Y > (Me.Height - resizeBorder) Then m.Result = New IntPtr(HTBOTTOMLEFT) ElseIf pt.X > (Me.Width - resizeBorder) AndAlso pt.Y > (Me.Height - resizeBorder) Then m.Result = New IntPtr(HTBOTTOMRIGHT) ElseIf pt.Y > (Me.Height - resizeBorder) Then m.Result = New IntPtr(HTBOTTOM) ElseIf pt.X < resizeBorder Then m.Result = New IntPtr(HTLEFT) ElseIf pt.X > (Me.Width - resizeBorder) Then m.Result = New IntPtr(HTRIGHT) Else MyBase.WndProc(m) End If Else MyBase.WndProc(m) End If End Sub Private Sub Form1_MouseDown(ByVal sender As Object, ByVal e As MouseEventArgs) Handles Me.MouseDown If e.Y <= 32 Then Me.Capture = False WndProc(Message.Create(Me.Handle, WM_NCLBUTTONDOWN, IntPtr.op_Explicit(HTCAPTION), IntPtr.Zero)) End If End Sub Private Sub Form1_Paint(ByVal sender As Object, ByVal e As PaintEventArgs) Handles Me.Paint e.Graphics.FillRectangle(Brushes.Black, 0, 0, Me.Width, 32) End Sub End Class
Keyboard hook class
Keyboard.vb
Usage:
Public Class Keyboard
Private Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" (ByVal Hook As Integer, ByVal KeyDelegate As KDel, ByVal HMod As Integer, ByVal ThreadId As Integer) As Integer
Private Declare Function CallNextHookEx Lib "user32" (ByVal Hook As Integer, ByVal nCode As Integer, ByVal wParam As Integer, ByRef lParam As KeyStructure) As Integer
Private Declare Function UnhookWindowsHookEx Lib "user32" Alias "UnhookWindowsHookEx" (ByVal Hook As Integer) As Integer
Private Delegate Function KDel(ByVal nCode As Integer, ByVal wParam As Integer, ByRef lParam As KeyStructure) As Integer
Public Shared Event Down(ByVal Key As String)
Public Shared Event Up(ByVal Key As String)
Private Shared Key As Integer
Private Shared KHD As KDel
Private Structure KeyStructure : Public Code As Integer : Public ScanCode As Integer : Public Flags As Integer : Public Time As Integer : Public ExtraInfo As Integer : End Structure
Public Sub CreateHook()
KHD = New KDel(AddressOf Proc)
Key = SetWindowsHookEx(13, KHD, System.Runtime.InteropServices.Marshal.GetHINSTANCE(System.Reflection.Assembly.GetExecutingAssembly.GetModules()(0)).ToInt32, 0)
End Sub
Private Function Proc(ByVal Code As Integer, ByVal wParam As Integer, ByRef lParam As KeyStructure) As Integer
If (Code = 0) Then
Select Case wParam
Case &H100, &H104 : RaiseEvent Down(Feed(CType(lParam.Code, Keys)))
Case &H101, &H105 : RaiseEvent Up(Feed(CType(lParam.Code, Keys)))
End Select
End If
Return CallNextHookEx(Key, Code, wParam, lParam)
End Function
Public Sub DiposeHook()
UnhookWindowsHookEx(Key)
MyBase.Finalize()
End Sub
Private Function Feed(ByVal e As Keys) As String
Select Case e
Case 65 To 90
If Control.IsKeyLocked(Keys.CapsLock) Or (Control.ModifierKeys And Keys.Shift) <> 0 Then
Return e.ToString
Else
Return e.ToString.ToLower
End If
Case 48 To 57
If (Control.ModifierKeys And Keys.Shift) <> 0 Then
Select Case e.ToString
Case "D1" : Return "!"
Case "D2" : Return "@"
Case "D3" : Return "#"
Case "D4" : Return "$"
Case "D5" : Return "%"
Case "D6" : Return "^"
Case "D7" : Return "&"
Case "D8" : Return "*"
Case "D9" : Return "("
Case "D0" : Return ")"
End Select
Else
Return e.ToString.Replace("D", Nothing)
End If
Case 96 To 105
Return e.ToString.Replace("NumPad", Nothing)
Case 106 To 111
Select Case e.ToString
Case "Divide" : Return "/"
Case "Multiply" : Return "*"
Case "Subtract" : Return "-"
Case "Add" : Return "+"
Case "Decimal" : Return "."
End Select
Case 32
Return " "
Case 186 To 222
If (Control.ModifierKeys And Keys.Shift) <> 0 Then
Select Case e.ToString
Case "OemMinus" : Return "_"
Case "Oemplus" : Return "+"
Case "OemOpenBrackets" : Return "{"
Case "Oem6" : Return "}"
Case "Oem5" : Return "|"
Case "Oem1" : Return ":"
Case "Oem7" : Return """"
Case "Oemcomma" : Return "<"
Case "OemPeriod" : Return ">"
Case "OemQuestion" : Return "?"
Case "Oemtilde" : Return "~"
End Select
Else
Select Case e.ToString
Case "OemMinus" : Return "-"
Case "Oemplus" : Return "="
Case "OemOpenBrackets" : Return "["
Case "Oem6" : Return "]"
Case "Oem5" : Return "\"
Case "Oem1" : Return ";"
Case "Oem7" : Return "'"
Case "Oemcomma" : Return ","
Case "OemPeriod" : Return "."
Case "OemQuestion" : Return "/"
Case "Oemtilde" : Return "`"
End Select
End If
Case Keys.Return
Return Environment.NewLine
Case Else
Return "<" + e.ToString + ">"
End Select
Return Nothing
End Function
End Class Usage:
Dim WithEvents K As New Keyboard Private Sub K_Down(ByVal Key As String) Handles K.Down Textbox1.text &= key End Sub
Přihlásit se k odběru:
Příspěvky (Atom)