Scintilla GETTEXTRANGE 获取中文字符

Private Type CHARRANGE 'cr
    cpMin As Long
    cpMax As Long
End Type
Private Type TEXTRANGE
    chrg As CHARRANGE
    lpstrText As Long '这里一定要定义为Long不要定义为String
End Type
'拦截窗口的消息
Public Function WindowProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
    If uMsg = WM_NOTIFY Then
        Dim ns As NMHDR
        CopyMemory ns, ByVal lParam, Len(ns) '目标,源,大小-字节
        If ns.hwndFrom = SciLexerHwnd Then
            If ns.code = SCN_CHARADDED Then
                Dim dqpoint As Long
                Dim startint As Long
                Dim endint As Long
                Dim tr As TEXTRANGE
                Dim B() As Byte  'tr结构最后一个用这个方法引用一个数组的开头位置
                dqpoint = SendMessage(SciLexerHwnd, SCI_GETCURRENTPOS, 0, 0) '取得当前位置
                startint = SendMessage(SciLexerHwnd, SCI_WORDSTARTPOSITION, dqpoint - 1, False) '//当前单词起始位置
                endint = SendMessage(SciLexerHwnd, SCI_WORDENDPOSITION, dqpoint - 1, 0) '//当前单词终止位置
                tr.chrg.cpMax = endint
                tr.chrg.cpMin = startint
                ReDim Preserve B(0 To (endint - startint + 1)) As Byte
                tr.lpstrText = VarPtr(B(0))
                lR = SendMessagesc(SciLexerHwnd, SCI_GETTEXTRANGE, 0, tr) '获取
                If (lR > 0) Then
                    Debug.Print UTF8ToUTF16(B)
                End If
            End If
        End If
    End If
    WindowProc = CallWindowProc(PrevProc, hwnd, uMsg, wParam, lParam)
End Function

CSS 小记

样式表的结构:
选择符{标记属性:属性值;标记属性:属性值;标记属性:属性值;标记属性:属性值;......}

例如:

H1{font-size:12pt;} 

引用:

这里会更改字号


还有一种定义方法:

.H1{font-size:12pt;} 

这种方法是定义的话,引用就不能用上面的标记了。

需要以class 去引用

这里是内容

另外一种方法

#H1{font-size:12pt;} 

这种方法是以ID形式引用,如下方法:


还有一种css有很多的属性例如:

a:link {color: #FF0000}     /* 未访问的链接 */
a:visited {color: #00FF00}  /* 已访问的链接 */
a:hover {color: #FF00FF}    /* 当有鼠标悬停在链接上 */
a:active {color: #0000FF}   /* 被选择的链接 */

这里的a是什么? 看下面的代码:

上、下 博客

其中的a就是超链接的意思。而后面的link visited hover 等 我们可以看成是一种对象属性。而a就是超链接对象。

看下面的代码:

a.01:link {color: #FF0000}     /* 未访问的链接 */
a.01:visited {color: #00FF00}  /* 已访问的链接 */
a.02:hover {color: #FF00FF}    /* 当有鼠标悬停在链接上 */
a.03:active {color: #0000FF}   /* 被选择的链接 */

引用的时候可以直接按class引用例如 class="01",这种定义方法实际就是分开定义超链接的属性值。