delphi checkbox改变checked时不让触发click事件
2014-08-28 15:22
197 查看
因为checkbox的checked的改变有三种方式,
第一种是直接调用语句:checkbox.checked:=true/false;
第二种是直接点击这个控件,当然前题是要有checkboxClick事件.
第三种是state 表示复选框的当前状态.
cbchecked 表示选中,
cbunchecked表示未选中,
cbGrayed表示变灰状态.(allowgrayed 设置true时)
直接点击checkbox的时候要发生一组反应,比如界面上数据的显示变化.而当直接用第一种方法 (checkbox.checked:=true)时,要求没有什么变化,只要打个勾就行了.但这样的语句调用会激发checkbox的 onclick事件,而这是我不想看到的结果.
解决方法:使用焦点(Focused)来区别操作.
就是checkbox的焦点.如果是点击的话,则其焦点就应该为true,
而用语句改变时,checkbox的焦点不为true.这样就能区分两种情况了,
在checkbox的onclick事件中加入的焦点判断这一个条件.
if not chkRelation.Focused then Exit;
第一种是直接调用语句:checkbox.checked:=true/false;
第二种是直接点击这个控件,当然前题是要有checkboxClick事件.
第三种是state 表示复选框的当前状态.
cbchecked 表示选中,
cbunchecked表示未选中,
cbGrayed表示变灰状态.(allowgrayed 设置true时)
直接点击checkbox的时候要发生一组反应,比如界面上数据的显示变化.而当直接用第一种方法 (checkbox.checked:=true)时,要求没有什么变化,只要打个勾就行了.但这样的语句调用会激发checkbox的 onclick事件,而这是我不想看到的结果.
解决方法:使用焦点(Focused)来区别操作.
就是checkbox的焦点.如果是点击的话,则其焦点就应该为true,
而用语句改变时,checkbox的焦点不为true.这样就能区分两种情况了,
在checkbox的onclick事件中加入的焦点判断这一个条件.
if not chkRelation.Focused then Exit;
相关文章推荐
- delphi checkbox改变checked时不让触发click事件〖模拟radiobutton功能〗
- $('.goods_tag_ids_all')[0].checked = true;//~~~~~ 单条改变checkbox 属性样式
- 点击tr实现选择checkbox功能,点击checkobx的时候阻止冒泡事件, jquery给checkbox添加checked属性或去掉checked属性不能使checkobx改变状态
- 带CheckBoxs的ListView在双击时如何不改变Checked状态?
- 触发checkbox的click事件时遇到的问题
- jquery checkbox 复选框 选中 改变状态 change和click事件
- jquery checkbox选中、改变状态、change和click事件
- checkbox:click事件触发span元素内容改变的方法
- input圆形多选按钮状态改变(checked)与点击触发事件的优先顺序
- js checkbox的click事件,触发这个复选框的onchange事件的问题
- Ext 改变checkbox checked 的值
- jq attr()改变checkbox的checked无效!!!!
- jquery checkbox选中、改变状态、change和click事件
- 点击checkbox后,$(this).attr('checked')得到的值不会发生改变
- jquery设置checkbox为checked状态不改变的解决办法
- Gridview中CheckBox列:赋值、改变值触发事件
- 避免checkBox 的setCheced() 触发 onCheckedChangeListener()
- jq获取checkbox状态以及有关触发checkbox的方式的讨论
- input标签内容改变的触发事件介绍
- 解决checkbox的attr(checked)一直为undefined问题