引言: //欲实现点击DBGrid的Title对查询结果排序,想作一个通用程序,不是一事一议,//例如不能在SQL语句中增加Order by ...,因为SQL可能原来已经包含Order by ...,//而且点击另一个Title时又要另外排序,目的是想作到象资源管理器那样随心所欲。
摘要:
unit imcode; // 简化版拼音反查单元
interface
{ imode 二进制功能位说明 x x x x x x x x x x x x x x x x 3 2 1 1: 0 - 只取各个汉字声母的第一个字母; 1 - 全取 2: 0 - 遇到不能翻译的字符不翻译; 1 - 翻译成 ? (本选项目针对全角字符) 3: 0 - 生成的串不包括非数字, 字母的其他字符; 1 ......
摘要:unit dbgrid2excel;
{
功能描述:把dbgrid输出到excel表格(支持多sheet)
调用格式:dbgridtoexcel([dbgrid1, dbgrid2]);
对于数字用asstring, 其它可能含有格式的文本用displaytext
长数字字符 的tag c_longnumber_fieldtag = 9; 避免科学计算格式,如身份证号的显示
自动采用对......
点击DBGrid的Title对查询结果排序
//欲实现点击dbgrid的title对查询结果排序,想作一个通用程序,不是一事一议,//例如不能在sql语句中增加order by ...,因为sql可能原来已经包含order by ..., 【程序编程相关:
Delphi编程实现Ping操作
】 【推荐阅读:
发现d2005的使用问题: d2005会】//而且点击另一个title时又要另外排序,目的是想作到象资源管理器那样随心所欲. 【扩展信息:
用Delphi2005和DUnit搭建敏】 procedure tfrmchild.dbgrid1titleclick(column: tcolumn); var sqlstr,myfieldname,tempstr: string; orderpos: integer; savedparams: tparams; begin if not (column.field.fieldkind in [fkdata,fklookup]) then exit; if column.field.fieldkind =fkdata then myfieldname := uppercase(column.field.fieldname) else myfieldname := uppercase(column.field.keyfields); while pos(myfieldname,;)<>0 do myfieldname := copy(myfieldname,1,pos(myfieldname,;)-1) ...
下一页 摘要:只针对2000以上系统,9x的就别问我了,4年没搞了:) 一般有4种方法: 1)dll挂靠方法 程序改写为dll结构,挂靠explorer.exe上运行 好处:没进程实体,普通进程查看无效 缺点:可以通过代码叫explorer.exe unload你的dll,呵呵,还有explorer出错时,会重新启用,那个时候需要重新挂靠你的dll 改进:用debug权限挂靠winlogon.exe,哈哈,安全......