delphi---EHlib第三方插件----TDBGridEH,TDBNumberEditEh,TDBComboBoxEh
一、TDBGridEH
1、多选 行
options->dgMultiSelect
2、列字体改变颜色,OnDrawColumnCell写下方法。
if Column.FieldName='价格' then
begin
if ADOQuery1.FieldByName('价格').AsFloat< then
begin
DBGridEh1.Canvas.Font.Color := clRed;
DBGridEh1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
end;
//整个框颜色
DBGridEh1.Canvas.Brush.Color:=clMaroon;
DBGridEh1.Canvas.Font.Color:=clWhite;
DBGridEh1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
3、字段显示分层
如实现 这种效果
1、选择TDBGridEH,设置属性:UseMultiTitle:True.
2、右击TDBGridEH,选择Columns Editor,选择上分层的字段,如:caption:重量|生铁
二、TDBNumberEditEh:保能输入数字
1、Imemode属性:
imClose 表示输入法处于关闭状态;
ImOpen 表示输入法处于打开状态;
ImChinese 表示处于中文输入法状态;
ImDontCare 表示若输入法处于关闭状态则打开最近一次使用过的输入法;
ImSAlpha 表示输入处于半角状态;
ImAlpha 表示输入处于全角状态。
2、出现上下箭头
DBNumberEditEh1.EditButton.Visible:=true;
DBNumberEditEh1.EditButton.Style:=ebsDropDownEh;
问题:滑动鼠标会自动增加数字,因不需此功能,又无法去掉这个功能,后改用RzEdit里的控件。
三、TDBComboBoxEh
二、公用方法
function AddComboBoxEhList(TableName, KeyField, DisplayField: String;
CbB: TDbComboBoxEh; Condition: string = '';
bClear: Boolean = True): Boolean;
var DQ: TADOQuery;
begin
DQ := TADOQuery.Create(nil);
with DQ do
try
Result := False;
Connection := DMW_Public.DC_Pub;
Close;
SQL.Clear;
SQL.Add('select '+DisplayField);
if Trim(KeyField) <> '' then
SQL.Add(','+KeyField);
SQL.Add(' from '+ TableName);
if Condition <> '' then SQL.Add(Condition);
Open;
if bClear then
begin
CbB.KeyItems.Clear;
CbB.Items.Clear;
end;
while not Eof do
begin
if Trim(KeyField) <> '' then
CbB.KeyItems.Add(FieldByName(KeyField).AsString);
CbB.Items.Add(FieldByName(DisplayField).AsString);
Next;
end;
Result := True;
finally
Close;
Free;
end;
end;
直接 引用 : AddComboBoxEhList('pub_departments','id','name',cbb_department,' Order by id ');
添加/修改:cbb_department.KeyItems[cbb_department.ItemIndex]
修改加载:
1)已知item:cbb_department.Text:=FieldByName('syb').AsString;
2)只知keyItem: cbb_range.ItemIndex:= cbb_range.KeyItems.IndexOf(FieldByName('range').AsString);
根据条件加载:
AddComboBoxEhList('pub_branchs','id','name',cbb_FC,' Where pub_department_id='''+cbb_department.KeyItems[cbb_department.ItemIndex]+''' Order by id ');
清除内容:cbb_FC.Clear;
每次重新加载要清除KeyItems,Items
最新文章
- python 02
- ASP.NET MVC中的Razor语法
- python3学习问题汇总
- php验证是否是md5编码的代码
- 在Ubuntu 14.04 64bit上安装numpy和matplotlib库
- Maven 解决JAR包冲突
- CentOS6.5 PHP基础环境搭建 [个人整理-亲测可用]
- ListView实现上拉下拉刷新加载功能
- this的相关知识
- KindEditor文件上传成功前端显示上传失败
- RSA签名和验证数据
- Mysql和Hadoop+Hive有什么关系?
- 20145315何佳蕾《网络对抗》Web安全基础
- Laravel $request添加数据或数据修改
- cxgrid过滤使用心得
- Java设计模式学习记录-抽象工厂模式
- iOS自学-UILabel常见属性
- Linux通过FTP上传文件到服务器
- 2019 CCPC-Wannafly Winter Camp Day5(Div2, onsite)
- ACM java写法入门
热门文章
- myeclipse中配置schemaLocation路径,实现xml文件自动提示
- HDU 5303 Delicious Apples(思维题)
- 红茶一杯话Binder (ServiceManager篇)
- Android4.4的zygote进程(下)
- JS高程3:错误处理和调试
- InnoDB:文件
- django中使用POST方法 使用ajax后出现“CSRF token missing or incorrect”
- 使用uGUI系统玩转标准俄罗斯方块
- hive 字符集问题 报错 Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:For direct MetaStore DB connections,
- 常用的AJAX框架