为什么80%的码农都做不了架构师?>>>   

本例测试修改光标的形色, 效果图:



代码文件:


unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls, ExtCtrls;typeTForm1 = class(TForm)RadioGroup1: TRadioGroup;procedure FormCreate(Sender: TObject);procedure FormMouseUp(Sender: TObject; Button: TMouseButton;Shift: TShiftState; X, Y: Integer);procedure RadioGroup1Click(Sender: TObject);procedure FormDestroy(Sender: TObject);end;varForm1: TForm1;implementation{$R *.dfm}varbit: TBitmap;procedure TForm1.FormCreate(Sender: TObject);
constc = '★';
beginRadioGroup1.Caption := '光标形色';RadioGroup1.Items.CommaText := '黑色,灰度,自定义';RadioGroup1.ItemIndex := 0;bit := TBitmap.Create;bit.Canvas.Font.Size := 16;bit.Width := bit.Canvas.TextWidth(c);bit.Height := bit.Canvas.TextHeight(c);bit.Canvas.TextOut(0, 0, c);
end;procedure TForm1.FormDestroy(Sender: TObject);
beginSetCaretBlinkTime(530);bit.Free;
end;procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;Shift: TShiftState; X, Y: Integer);
varh: HBITMAP;
beginDestroyCaret;h := 0;case RadioGroup1.ItemIndex of1: h := 1;2: h := bit.Handle;end;CreateCaret(Handle, h, 4, 32);SetCaretPos(X,Y);ShowCaret(Handle);
end;procedure TForm1.RadioGroup1Click(Sender: TObject);
varh: HBITMAP;pt: TPoint;
beginGetCaretPos(pt);DestroyCaret;h := 0;case RadioGroup1.ItemIndex of1: h := 1;2: h := bit.Handle;end;CreateCaret(Handle, h, 4, 32);SetCaretPos(pt.X, pt.Y);ShowCaret(Handle);
end;end.

窗体文件:


object Form1: TForm1Left = 0Top = 0Caption = 'Form1'ClientHeight = 137ClientWidth = 228Color = clBtnFaceFont.Charset = DEFAULT_CHARSETFont.Color = clWindowTextFont.Height = -11Font.Name = 'Tahoma'Font.Style = []OldCreateOrder = FalseOnCreate = FormCreateOnDestroy = FormDestroyOnMouseUp = FormMouseUpPixelsPerInch = 96TextHeight = 13object RadioGroup1: TRadioGroupLeft = 137Top = 16Width = 80Height = 113Caption = 'RadioGroup1'TabOrder = 0OnClick = RadioGroup1Clickend
end

转载于:https://my.oschina.net/hermer/blog/319549

WinAPI: 输入光标相关的函数[3]相关推荐

  1. python光标变粗_解决IDEA中不能正常输入光标变粗的问题

    解决IDEA中不能正常输入光标变粗的问题 遇到的问题 解决方法 win7: insert键切回 win10: fn+insert切回 Mac: fn+i 切回 到此这篇关于解决IDEA中不能正常输入光 ...

  2. php键盘输入函数,php的常用输入语句以及常用函数

    这篇文章主要介绍了关于php的常用输入语句以及常用函数,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 一. echo语句 echo做php的人在熟悉不过了,在php文件中我们用他来输出 ...

  3. python输入不确定个数_将不确定数量的输入传递给一个函数的子函数

    对不起,如果我没有解释清楚. 我想创建一个包装器来调用具有不同数量输入的预定义函数.当然,我可以为每个函数创建单独的包装器,但我想知道是否有一种方法可以为所有情况创建通用包装器.在 应该调用的函数名为 ...

  4. autoHotkey---获取输入光标的位置,判断是否在文本输入状态

    autoHotkey-获取输入光标的位置,判断是否在文本输入状态 基本环境 autohotkey SciTE4AutoHotkey-Plus 编辑器, 非必须,打算长用ahk的可以考虑. autoho ...

  5. FreeRTOS学习笔记【六】——FreeRTOS 任务相关 API 函数

    上一章我们学习了 FreeRTOS 的任务基础知识,本章就正式学习如何使用 FreeRTOS 中有关任务的 API 函数.本来本章想讲解 FreeRTOS 的任务原理知识的,但是很多初学者还没使用过 ...

  6. uCOS-II消息邮箱的相关操作函数

    定位到uCOS-II/Source/os_mbox.c,该文件是消息邮箱管理的相关操作函数.   任务与任务之间需要数据传递,那么为了适应传递的数据的不同类型,可以建立一个缓冲区(void*类型可以接 ...

  7. js进阶 13-6 jquery动画效果相关常用函数有哪些

    js进阶 13-6 jquery动画效果相关常用函数有哪些 一.总结 一句话总结:animate(),stop(),finish(),delat()四个. 1.stop()方法的基本用法是什么(sto ...

  8. 在不同浏览器中,input里面的输入光标大小表现形式却大不相同

    问题:在不同浏览器中,input里面的输入光标大小表现形式却大不相同,具体的如下: IE:不管该行有没有文字,光标高度与font-size一致. FF:该行有文字时,光标高度与font-size一致. ...

  9. Java输入光标在printf前面_C++ 设置控制台(命令行)窗口 光标位置,及前背景颜色

    核心代码 #include "stdafx.h" #include #include /* #define FOREGROUND_BLUE 0x0001 // text color ...

最新文章

  1. 中国通货膨胀率2.8%,数据分析买房风险直线上升
  2. numpy.cov()和numpy.var()的用法
  3. python3爬虫(6)爬虫代理的使用
  4. 不要666升级版(数位DP,三次方和)
  5. 用history api偷换浏览器历史记录
  6. 银行业务队列简单模拟(队列queue)
  7. 开源 静态 文件 服务器,Node.js搭建静态服务器
  8. Start with - Connect by - level
  9. 一份来自滴滴运维工程师的监控系统建设心得
  10. ps4 优酷 html5,ps4-hen-vtx/index.html at master · xvortex/ps4-hen-vtx · GitHub
  11. 摘录整理:日本文化常识之历史篇
  12. 2021韩顺平图解linux
  13. range函数用法完全解读
  14. ol+天地图+geoserver_mapbox+GeoglobeJS天地图
  15. servlet cannot be resolved to a type的原因及解决方法
  16. 华为搜索引擎问世!互联网格局将改写?
  17. equal 和 ==
  18. 网易数帆深度参编中国信通院《低代码发展白皮书(2022年)》
  19. hp台式计算机生产日期,如何查询hp笔记本生产日期
  20. 电脑显示器花屏了该如何解决?光影使者 myblogfree

热门文章

  1. input反应慢 vue_Vue v-model实时更新带来的输入框卡顿问题
  2. 从oracle中读取图片,Pb从oracle中读取和保存图片
  3. mysql客户端指令_mysql command line client(mysql命令行客户端)
  4. 5如何将表格的一行数据清空_微信公众号推文中如何自定义添加表格?
  5. ajax post的回调函数另一个方法,jQueryajax–post()方法 - 米扑博客
  6. 第一篇博客,java学生管理系统(挑战全网最全)
  7. provide和inject,Vue父组件直接给孙子组件传值
  8. PHP SSL certificate: unable to get local issuer certificate的解决办法
  9. UICollectionView的基本使用(1)
  10. Algs4-1.1.13编写一段代码,打印出一个M行N列的二维数组的转置(交换行和列)