⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 100.txt

📁 VB文章集(含API、窗口、数据库、多媒体、系统、文件、等等)
💻 TXT
字号:
使 用SendMessage 函 数 滚 动 文 本 框 控 件 中 的 内 容 

在Visual Basic 中, 可 以 通 过 程 序 使 文 本 框 控 件 中 的 内 容 进 行 滚 动, 而 不 用 等 待 用 户 单 击 滚 动 条 控 件, 可 以 通 过 使 用Windows API 的SendMessage 函 数 将 一 个 或 多 个 滚 动 消 息 发 送 到 系 统 来 实 现 上 述 功 能。 

在 文 本 框 控 件 中 滚 动 
---- 在 下 面 的 样 例 程 序 中, 连 接 到Left 命 令 按 钮 上 的 代 码 将 文 本 框 中 的 内 容 向 左 移 动 一 个 字 符 的 位 置。 当 用 户 单 击 了 文 本 框 控 件 上 的 水 平 滚 动 条 时, 该 消 息 被 发 送 到 窗 口。 然 而, 在 这 个 程 序 中, 是 在 用 户 单 击 命 令 按 钮 时 发 送 该 消 息。 
---- 要 控 制 滚 动 行 为 的 方 向, 必 须 告 诉SendMessage 函 数 将 一 个WM_HSCROLL 消 息 发 送 到 文 本 框 控 件 中, 并 在wParam 参 数 中 指 定 方 向 参 数。 下 面 是 可 以 在wParam 参 数 中 指 定 的 有 效 设 置。 

---- SB_LEFT 往 左 边 移 动 较 多 部 分 
---- SB_RIGHT 往 右 边 移 动 较 多 部 分 
---- SB_LINELEFT 往 左 边 移 动 一 个 单 元 
---- SB_LINERIGHT 往 右 边 移 动 一 个 单 元 

---- 可 见, 要 将 文 本 框 中 的 文 本 向 左 移 动 一 个 字 符, 可 以 将wParam 参 数 设 置 为SB_LINELEFT; 要 将 文 本 框 中 的 内 容 向 右 移 动 一 个 字 符, 则 将wParam 参 数 设 置 为SB_LINERIGHT, 等 等。 

样 例 程 序 
---- 该 程 序 显 示 了 如 何 使 用SendMessage 函 数 来 滚 动 文 本 框 控 件 中 的 内 容。 
---- 1. 在Visual Basic 中 开 始 一 个 新 的 工 程, 采 用 缺 省 的 方 法 建 立Form1。 
---- 2. 将 如 下 常 量 和 声 明 语 句 添 加 到Form1 的 通 用 声 明 部 分 中( 注 意 该 声 明 语 句 需 要 书 写 在 一 行 内): 
---- Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Integer, ByVal lParam As Long) As Long 
---- Const SB_LINERIGHT = 1 
---- Const SB_LINELEFT = 0 
---- Const WM_HSCROLL = &H114 

---- 3. 在Form1 上 添 加 一 个 文 本 框 控 件, 采 用 缺 省 的 方 法 建 立Text1。 将 其MultiLine 属 性 设 置 为True,ScroolBars 属 性 设 置 为3-Both。 

---- 4. 在Form1 上 添 加 一 个 命 令 按 钮 控 件, 采 用 缺 省 的 方 法 建 立Command1。 
---- 将 其Caption 属 性 设 置 为“ 左”。 

---- 5. 将 如 下 代 码 添 加 到Command1 的 单 击 事 件 中: 

Private Sub Command1_Click()
Dim X As Long
X = SendMessage(Text1.hwnd, WM_HSCROLL, 
SB_LINELEFT, ByVal 0&)
End Sub

---- 6. 在Form1 上 添 加 第 二 个 命 令 按 钮 控 件, 采 用 缺 省 的 方 法 建 立Command2。 
---- 将 其Caption 属 性 设 置 为“ 右”。 
---- 7. 将 如 下 代 码 添 加 到Command2 的 单 击 事 件 中: 

Private Sub Command2_Click()
Dim X As Long
X = SendMessage(Text1.hwnd, WM_HSCROLL, 
SB_LINERIGHT, ByVal 0&)
End Sub

---- 按 下F5 键 来 执 行 该 程 序。

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -