各位大虾,请教一下:有什么好的方法或控件可以实现这样的问题

socoolin1982 2005-08-28 09:59:47
数据查询出来之后显示在类似DBGrid中,现在想实现,当点中某个列标题之后,可以实现根据该列升序或降序排列。
...全文
164 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
socoolin1982 2005-09-08
  • 打赏
  • 举报
回复
不错。学到了不少东西,马上试试!马上给分
lrj2005 2005-08-28
  • 打赏
  • 举报
回复
www.2ccc.com上面有楼上说的那个控件
cncharles 2005-08-28
  • 打赏
  • 举报
回复
用DevExpress CXGrid默认就有此功能.
Teng_s2000 2005-08-28
  • 打赏
  • 举报
回复
dbgrid的ontitleclick中
adoquery1.sort:=column.fieldname;
__Ray__ 2005-08-28
  • 打赏
  • 举报
回复
给你一个过程吧,可按字段排序的:

/* 翻页控制存储过程*/
/*------------------------------------------注释-----------------------------------------
{ @tableName 表名或视图名 }
{ @condiction 条件表达式 }
{ @CountPerPage 每页所要显示的记录条数 }
{ @current_page 当前要翻向的页码 }
{ @sort_field 排序字段 }
{ @sort_type 排序类型(0-升序;1-降序) }
{ @Count 返回值(记录总条数) }
{ 说明:用于翻页显示,可按表中任意字段进行排序(表中不能包含主键字段,如有请先转换成不包含主键字段的视图) }
{ 备注:QQ:22503075 }
*/--------------------------------------------------------------------------------------
CREATE PROCEDURE ChangePage
@tableName nvarChar(50),
@condiction nvarChar(1500),
@CountPerPage int,
@current_page int,
@sort_field nvarChar(50),
@sort_type Bit,
@count Int OUTPUT
AS
BEGIN
DECLARE
@sqlStr nvarchar(4000), --翻页SQL语句
@Id1 nvarchar(20),
@Id2 nvarchar(20)
SET @Id1=cast(@CountPerPage*(@current_page-1) AS nvarchar(20))
SET @Id2=cast(@CountPerPage*@current_page AS nvarchar(20))

/* 得到记录总条数@count */------
SET @sqlStr='SELECT @count=Count(*) FROM '+ @tableName +' WHERE ' + @condiction
EXEC sp_executesql @sqlStr,N'@count int OUTPUT',@count OUTPUT

/*设置翻页SQL语句*/-------
SET @sqlStr='SELECT Top '+ @Id2 +' *,Sn=identity(int,1,1) into #T FROM ' + @tableName + ' WHERE ' + @condiction +
' ORDER BY ' + @sort_field + dbo.fn_GetSortType(@sort_type) +
' SELECT * FROM #T where Sn>'+@Id1+
' DROP TABLE #T'

/*执行翻页*/-------
EXEC sp_executesql @sqlStr
END
GO



/*自定义函数*/
CREATE FUNCTION fn_GetSortType(@Flag Bit)
RETURNS nvarChar(20)
AS
BEGIN
DECLARE
@ST nvarChar(20)
IF @Flag=0
Set @ST=' ASC'
ELSE
Set @ST=' DESC'
RETURN(@ST)
END
flyany2000 2005-08-28
  • 打赏
  • 举报
回复
DBGridEh也可以

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧