今天在做DELPHI的时候,在第二个窗口中加了一个BitBtn按钮,为了减少枯燥的图标,就给它设置了Kind属性为bkOK,但在运行时这个窗口却在这个按钮点击时被关闭了,本还以为是代码的问题,
可前前后后的找了大半天也没有找到,郁闷啊,还以为自己编错了,就重新加个按钮把代码加上去,运行一下是对的,窗口不关了,想想真的不通啊,没错啊,粘贴复制也没什么啊。
做好之后,看看按钮还是丑的,于是还是给它设置了Kind属性为bkOK,这次一运行就出现了上次的那个错误,看来是这个按钮设置的问题了,就有心留意了一下这个BitBtn按钮,
从中看到一个modalresult的属性是mrOK的,看来就这个,于是看了它的其它选项,设了一个mrNone的,再运行就OK了。
看来半路出家不行啊,当初没有认真看看控件的参数,才有今天的错误。
俺是采鸟,有个疑惑那就是:BITBTN与 button 与speedbutton的区别,我觉得没什么分别啊?大家怎么认为的?
BitButton可以在按钮上面放图片,她是从Button继承的,她和Button都是有窗口局柄的,是独立的窗口,可以聚焦。
SPeedButton是从TGraphicControl继承的,没有窗口局柄,也就说她不是一个真正的窗口,不能被聚焦
BITBTN 可以方便的装载图表 SpeedButton 不能获得焦点 。。。。。
BITBTN与 button 基本上没有区别,只是前者可以显示图形,后者不可以;
而speedbutton主要使用在菜单栏下面的工具栏按钮。
BITBTN:可以加图,有焦点
button:有焦点。
speedbutton:可以加图,没有焦点。
TButton是普通标准按钮。
TBitBtn是可以显示位图的按钮,Delphi已经自带了几种常用的位图按钮了。TSpeedButton一般是在工具栏上的那些按钮。
大概是这样吧,我也是初学,说错了可别怪我。
以下是他们的继承关系
TControl-->TwinControl-->TbuttonControl-->Tbutton-->TBitBtn
TControl-->TGraphicContron-->TSpeedButton
怎么样,很明白了吧.
你可以这么理解。
TButton是普通标准按钮。他的功能你自己设定。
TBitBtn是可以在按钮上显示位图或者图标的按钮。他有自己的默认功能,你可以选,当然也可以自己写,就像设定TButton。
TSpeedButton是菜单上的快捷按钮,主要用来对应下拉菜单上的功能。
呵呵,俺也来说几句吧:
一、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,主要区别就是考虑按钮的附加行为、焦点有无、按钮外观。
2013.05.21-----我总结切图:(这样窗口就不会自动关闭了)
==================================2015-08-03补充说明,没有上面的方法好,尽量用上面的方法=======================
看下上面的ModalResult,然后再FormCloseQuery事件中判断下,由于这种方案需要通过代码来实现,没有上面的方案好,但是理解下原理吧:
本文来自博客园,作者:del88,转载请注明原文链接:https://www.cnblogs.com/del88/archive/2013/05/21/3091290.html
分类:
TBitBtn
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人