SpeedButton是一个图形控件,本身没有句柄。因此它不能具有焦点。你可以使用TBitBtn,调整一些属性,可以使他们的外形很接近。

只有从TWinControl派生的控件,才具有Handle。你可以看一下他们的继承图。
当然,你也可以通过TSpeedButton的父窗口的焦点,来设置子窗口,不过可能比较麻烦。

SpeedButton继承的是TGraphicsControl类,不具有输入焦点。
如果你想实现,可以用bitbtn或者自己继承TWinControl。

一、TBitBtn是TButton的派生类。增加的属性有Glyph、Kind、Layout、Margin、NumGlyphs、Spacing、Style。这些属性都影响按钮中的图象显示。其中,Kind属性还影响按钮的行为。例如,当Form1中的BitBtn1的Kind设置为bkClose时,按下该按钮将自动调用Form1.Close。因此,除了增加图象显示的特性之外,增加按钮行为也是TBitBtn于TButton的重要区别。
  二、TSpeedButton是TGraphicControl的派生类,不具有TWinControl的重要特性:控制焦点。也就是说,你无法通过Tab键将焦点移动到一个TSpeedButton上,更不能试图按下空格键或者回车键来利用Windows标准输入方式“按”此类按钮。这就是TSpeedButton与TButton(包括TBitBtn)的重要区别。另外,利用TSpeedButton可以轻松制作透明按钮(Flat属性配合Transparent属性),这对实现比较酷的另类应用来说很有意义。因此,用TBitBtn要优于用TButton。而用TBitBtn还是用TSpeedButton,主要区别就是考虑按钮的附加行为、焦点有无、按钮外观。

SpeedButton的更多相关文章

  1. XE8 FMX SpeedButton 大图标(改 Style)

    自从 XE8 提供 ImageList 带来了很多便利,但 SpeedButton 的图标太小(不够大气),还好 FMX 提供了 Style 可供使用者自订图标大小及显示位置,请自行按图索骥,做一遍: ...

  2. 关于SpeedButton中使用下划线快捷键不响应的问题

    在Windows应用程序,很多都有快捷键功能,这个Delphi也有,就是一个按钮上面有一个比如剪切(&X),这个时候剪切的快捷键就是Alt+X,这个功能有时候还是挺好用的,最近,公司中有同事, ...

  3. delphi bitbutton和speedbutton.button有什么区别

    http://zhidao.baidu.com/link?url=LT9_iwv47GfSp3m0MmUSablZrPOxzjKtqWW1yVMTbHnIs2DdCE-0qX2bwXZ2020x_Jl ...

  4. 将speedbutton放在toolbar上,flat设为true,并将speedbutton的width和height设得比较大,在speedbutton中间会出现一条竖线,如何消去?

    把toolbar的flat设为false就没有竖线了

  5. [修正] Firemonkey SpeedButton 鼠标移开按钮后 IsPressed 为 False 的问题

    未修正: 修正代码: 请将 FMX.StdCtrls.pas 复制到自己的工程目录下,再修改如下代码: procedure TCustomButton.RestoreButtonState; begi ...

  6. speedbutton用法

  7. Delphi SpeedButton组件

  8. 自定义组件-支持PNG图片的多态GraphicButton

    按钮功能使用TButton也可以解决, 但是TButton是会获得焦点的, 很多时候我们要求按钮不获得焦点, 而Speedbutton又不支持PNG图片 所以按照TSpeedbutton的代码, 重新 ...

  9. delphi控件属性大全-详解-简介

    http://blog.csdn.net/u011096030/article/details/18716713 button 组件: CAPTION 属性 :用于在按钮上显示文本内容 Cancel ...

随机推荐

  1. MS15-034漏洞复现、HTTP.SYS远程代码执行漏洞

    #每次命令都百度去找命令,直接弄到博客方便些: 漏洞描述: 在2015年4月安全补丁日,微软发布的众多安全更新中,修复了HTTP.sys中一处允许远程执行代码漏洞,编号为:CVE-2015-1635( ...

  2. zabbix笔记_002

    监控登录用户 监控图形配置 创建图形: 配置完成后查看图形: 创建触发器配置 创建完成后可以查看 监控磁盘IO I/O查看工具: istat 安装[需要epel源]: yum install -y s ...

  3. 渗透测试-http协议简介

    HTTP协议 超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议.所有的WWW文件都 必须遵守这个标准.设计HTTP最初的目的是为了 ...

  4. beautifulsoup实现文章截取和脚本攻击

    引子:现在我们所写的所有高大上,炫酷的网页,在数据库中是如何存储的呢?其实数据库中存储的所有高大上的文章都是存的html,然后我们平时看的写的都是由于编辑器的原因,在编辑器内部做了转换,所以我们可以直 ...

  5. [Docker02]Docker_registry

    部署Docker仓库 Docker registry #检查端口5000是否被占用 netstat -tunlp | grep 5000 # the local host ip is 172.17.0 ...

  6. In Triangle Test / To Left Test

    2020-01-09 14:51:29 如何高效的判断一个点是否是包含在一个三角形的内部是计算几何里的一个基础问题. In Triangle Test问题也可以用来解决计算几何里的一个基础问题就是 凸 ...

  7. Selenium系列(十一) - 针对两种上传文件方式的实现方案

    如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识, ...

  8. stm32CubeMx+TrueSTUDIO+uc/os-III移植开发(二)

    (三)复制相关文件 (1)继上次的代码生成后会显示如下的图 点击第一个,打开文件夹如下 (2)新建文件夹UCOSIII 在UCOSIII文件夹下,新建如下的文件夹 (3)将uc/os源文件中 Micr ...

  9. 4 Values whose Sum is 0 POJ - 2785(二分应用)

    题意:输入一个数字n,代表有n行a,b,c,d,求a+b+c+d=0有多少组情况. 思路:先求出前两个数字的所有情况,装在一个数组里面,再去求后两个数字的时候二分查找第一个大于等于这个数的位置和第一个 ...

  10. coding++ :javascript Date format (js日期格式化)

    方式一: // 对Date的扩展,将 Date 转化为指定格式的String // 月(M).日(d).小时(h).分(m).秒(s).季度(q) 可以用 1-2 个占位符, // 年(y)可以用 1 ...