用DBGRID来显示查询结果(其datasource.dataset为adoquery1),用户可以选择grid显示哪些字段(通过右键弹出菜单)。我不想每改变一次显示/输出字段(一次只能增加或减少一个输出字段)都重新执行一次SQL查询,该怎么做呢?我的想法是:adoquery1先把所有字段都select出来,用户改变显示字段时只改变dbgrid显示的column,怎么实现?如果没办法通过DBGRID来实现,一个adoquery如何从另一个adoquery的查询结果中抽取特定字段呢?谢谢大家!!!!!
解决方案 »
- Grid++report的GRDesigner怎么载入报表?
- 使用盗版delphi IDE会不会被查?
- string转换到char类型?
- 有個看似簡單,確難了我有一會的問題
- 回答问题送国际域名一个,加300分,ActiveForm超高手请进,绝世难题。回答正确后直接找QQ:82865领奖
- 问个DBGrid关于多行选择的问题
- 点击dbnavigator使dbgrid数据显示到dbedit
- 1stclass3000这个东东怎么用?我下载了,运行上面的demo,很多都说少什么类
- 我想在发布时将Bpl安装在指定目录如c:\comm,该如何处理,高手请进
- 我编写的程序都有登陆,怎样去除?
- 100分求Delphi8 for .NET下载地址,构架版,企业版都行。
- 如何动态创建TQRCHART并打印预览
DBGrid1.Columns.Delete(Index);
DBGrid1.Columns[2].FieldName := 'aaa';
DBGrid1.Columns[2].Title.Caption := 'AAAAA';
DBGrid1.Columns[2].Width := integer;
DBGrid1.Columns[I].Visible := True (Or False);
因为某个field的visible被置为false后,它就等于从DBGrid1.Fields数组中删除了
我本来还想在popupmenu1的菜单项的click事件中加入一句呢:
DBGrid1.Fields[i].visible:=popupmenu1.items[i].checked;
比较麻烦呀~~不知道chao_jian(猫)的方法会不会有同样问题
实现了。谢谢!谢谢大家!
dbgrid显示的column[i] visible