delphi中如何实现checkbox的多选
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi中如何实现checkbox的多选相关的知识,希望对你有一定的参考价值。
参考技术A CheckBox 是复选框组件,实现多选(即多个复选框),通常可采取如下办法:1、使用 CheckListBox 组件
2、建立一个 GroupBox,然后根据需要放入多个复选框
3、使用第三方组件,如 RzCheckGroup 参考技术B 遍历窗体上的控件,是Tcheckbox的就勾上。 procedure TForm1Button1Click(Sender: TObject); var i: Integer; begin for i := 0 to SelfControlCount - 1 do if SelfControls[i] is TCheckBox then TCheckBox(SelfControls[i])Checked := Tdelphi中如何实现checkbox的多选本回答被提问者采纳
下拉框效果的多选框
html:
1 <div id="selectBoard"> 2 <ul class="ul_sel" id="ul_input"> 3 <li><input type="checkbox" name="dep" id="" value="安监局" /> 安监局</li> 4 <li><input type="checkbox" name="dep" id="" value="卫计局" /> 卫计局</li> 5 <li><input type="checkbox" name="dep" id="" value="烟草专卖局" /> 烟草专卖局</li> 6 <li><input type="checkbox" name="dep" id="" value="档案局" /> 档案局</li> 7 <li><input type="checkbox" name="dep" id="" value="地税局" /> 地税局</li> 8 </ul> 9 <input type="text" id="span_dep" style="font-size:1.1em;border:none;color:white;width:97%;" onfocus="this.blur()" placeholder="请选择相关部门" /> 10 </div>
css:
#selectBoard{ width: 50%; height: 30px; border: 1px solid #7cf8ff; border-radius: 5px; position: relative; margin: 30px 50px; z-index:1000; } #selectBoard ul{ width: 100%; background: white; position: absolute; top: 10px; left: -25px; border: 1px solid #7cf8ff; border-radius: 5px; display: none; } #selectBoard ul li{ list-style: none; color:black; } #selectBoard ul li:hover{ background: dodgerblue; } .ul_sel { height:160px; overflow-y: auto; } .ul_sel::-webkit-scrollbar { width: 6px; height: 1px; } .ul_sel::-webkit-scrollbar-thumb { -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2); background: #7cf8ff; } .ul_sel::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2); background: #09abeb; }
js:
<script type="text/javascript">
var arr = []; //仿select的点击事件 $("#span_dep").click(function(event){ var ev = event || window.event; //阻止默认事件及封装 if (ev.stopPropagation) { ev.stopPropagation(); }else{ ev.cancelable = true; } $("#ul_input").css("display","block"); }); //监听checkbox的value值 改变则执行下列操作 $("#ul_input input").change(function(){ if ($(this).prop("checked")) { if($("#span_dep").val()==""){ arr.push($(this).val()); }else{ arr.push($(this).val()); } }else{ arr.splice(arr.indexOf($(this).val()), 1); } $("#span_dep").val(arr); }); $("#ul_input input").click(function(event){ var ev = event || window.event; //阻止默认事件及封装 if (ev.stopPropagation) { ev.stopPropagation(); }else{ ev.cancelable = true; } $("#ul_input").css("display","block"); }); $(document).click(function(){ $("#ul_input").css("display","none"); }); </script>
以上是关于delphi中如何实现checkbox的多选的主要内容,如果未能解决你的问题,请参考以下文章