資料介紹
TextBox模擬拖曳選取文字
?我們知道Rich text或Word 或VB的程式撰寫環境,可以將Mouse移到Select起來的文字 按Mouse左鍵做拖曳移動的功能,後來想,TextBox能不能做呢?這可真的吃了不少苦頭
,這個程式模擬其做法,但主要的精神是在於對TextBox的了解。
?首先,TextBox中當選取一段文字之後,我們只要按Mosue,便使Select的區域失效,且 可能進入另外的一個Select域,故第一件事是如何在有Select的區域時,使這動作失效; 的作法是在MouseUp時Check一下有沒有選取文字,如果有,就使用SubClass的技術,攔截 Mouse的左鍵,所以當我們按左鍵時,不會再有選取文字又不見了的情況。
?第二,我們沒有按下Mouse,那如何得知Mouse所在的地方到底是TextBox的哪個字呢,所幸 有EM_CHARFROMPOS這個訊息可Send給textBox,其傳回值的HiWord 得該字元是在第幾行
?0為base,LowWord是該字元在TextBox中的位置(含換行與LineFeed),因而我們可以單
由MouseMove便得知何時Mouse要是箭號,何時是內定I形的Mouse。當然想得知Mouse所在
可以透過Mouse Event的X, Y座標,但是它們是以Twips為單位,而另外也可以用GetCursorPos() 來得知Mouse的位置,但這是相對於螢幕者,EMCHARFROMPOS的訊息需要的是相對於TextBox 的座標,有許多種方法可以完成這轉換,但我選ScreenToClient()這個API,比較直接。
?第叁,Caret如何隱藏呢?使用HideCaret可完成,但這個Function只能呼叫一次以便 下回 ShowCaret()時可以將Caret Show出來,這是因為呼叫2次的HideCaret時,也要呼
?叫2次的ShowCaret才能使Caret出現。另設定Caret的SetCaretPos() API只是令Caret出現在什麼地,但如果您KeyIn任何字時,仍出現在原來之地方,而不是方才設定之處,而
要用EM_SETSEL的Message才能設定KeyIn的位置是Caret的位置。
This file is generated with EtextWizard v1.0 ---written by Fengguohua? of NorthStar? 2000-2-25
?我們知道Rich text或Word 或VB的程式撰寫環境,可以將Mouse移到Select起來的文字 按Mouse左鍵做拖曳移動的功能,後來想,TextBox能不能做呢?這可真的吃了不少苦頭
,這個程式模擬其做法,但主要的精神是在於對TextBox的了解。
?首先,TextBox中當選取一段文字之後,我們只要按Mosue,便使Select的區域失效,且 可能進入另外的一個Select域,故第一件事是如何在有Select的區域時,使這動作失效; 的作法是在MouseUp時Check一下有沒有選取文字,如果有,就使用SubClass的技術,攔截 Mouse的左鍵,所以當我們按左鍵時,不會再有選取文字又不見了的情況。
?第二,我們沒有按下Mouse,那如何得知Mouse所在的地方到底是TextBox的哪個字呢,所幸 有EM_CHARFROMPOS這個訊息可Send給textBox,其傳回值的HiWord 得該字元是在第幾行
?0為base,LowWord是該字元在TextBox中的位置(含換行與LineFeed),因而我們可以單
由MouseMove便得知何時Mouse要是箭號,何時是內定I形的Mouse。當然想得知Mouse所在
可以透過Mouse Event的X, Y座標,但是它們是以Twips為單位,而另外也可以用GetCursorPos() 來得知Mouse的位置,但這是相對於螢幕者,EMCHARFROMPOS的訊息需要的是相對於TextBox 的座標,有許多種方法可以完成這轉換,但我選ScreenToClient()這個API,比較直接。
?第叁,Caret如何隱藏呢?使用HideCaret可完成,但這個Function只能呼叫一次以便 下回 ShowCaret()時可以將Caret Show出來,這是因為呼叫2次的HideCaret時,也要呼
?叫2次的ShowCaret才能使Caret出現。另設定Caret的SetCaretPos() API只是令Caret出現在什麼地,但如果您KeyIn任何字時,仍出現在原來之地方,而不是方才設定之處,而
要用EM_SETSEL的Message才能設定KeyIn的位置是Caret的位置。
This file is generated with EtextWizard v1.0 ---written by Fengguohua? of NorthStar? 2000-2-25
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- VB编程的串口调试助手和MSComm控件使用详解等资料合集39次下载
- vb数据库编程实例之在Visual C#中实现DB2数据库的编程的资料说明5次下载
- vb语言编程学习教程32次下载
- VB编程_拨号程序5次下载
- VB编程_闹钟程序12次下载
- VB编程_窗体热键6次下载
- VB编程_窗体控制7次下载
- VB编程_动画光标3次下载
- VB编程_画图工具4次下载
- VB编程_模拟雪花17次下载
- VB编程_累加求和7次下载
- sweepmine_VB编程好资料11次下载
- TwentyPoint_VB编程好资料10次下载
- Vb与LabVIEW混合编程的实现49次下载
- 基于VB和LabVIEW的自动化控制和编程设计36次下载
- 基于VB6.0 实现 CAN信号收发 Demo902次阅读
- 如何理解机器学习中的训练集、验证集和测试集4792次阅读
- vb语言和c++语言的区别2606次阅读
- PLC编程需要养成良好的编程习惯1020次阅读
- 单片机VB6对汉字的处理1292次阅读
- PLC编程必须具备的几个软实力!4059次阅读
- PLC编程入门基础技术知识(plc原理和指令集及编程规则)69083次阅读
- vb编程语言是做什么用的_VB编程语言有哪些83451次阅读
- vb语言程序简单设计实例(5款vb语言设计程序分享)111755次阅读
- vb语言跟java语言什么区别37042次阅读
- vb语言代码大全126474次阅读
- vb语言编程学习怎么入门71427次阅读
- vb语言为什么被淘汰245644次阅读
- vb语言有哪些优势38631次阅读
- vb语言知识点总结17615次阅读
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1490次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 92次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 10次下載 | 免費
- 6基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 7藍牙設備在嵌入式領域的廣泛應用
- 0.63 MB | 3次下載 | 免費
- 89天練會電子電路識圖
- 5.91 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論