shrimp32(一心) 我想要视图分页显示得源码,谢谢

salusun 2003-01-13 07:52:13
我给100分。谢谢你
...全文
75 9 打赏 收藏 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
discussant 2003-02-12
  • 打赏
  • 举报
回复
是不是有这个问题呀!关注
ny_he 2003-02-11
  • 打赏
  • 举报
回复
pqxy(BT皮球) :
可是@column的返回值是有大小限制的啊。要是不能全部返回的话,其后所有岂不是没意义了。
pqxy 2003-02-11
  • 打赏
  • 举报
回复
那有那么麻烦,代理来代理去的,服务器还不得拉崩了?~~嘿嘿
两个公式就搞定了~~:)

共几页:
Temp:=@DbColumn("":"NoCache";"":"oa_fileflow.nsf";"WatchFile";1);
recordcount:=@Elements(Temp);
pagecount:=10; (注:看你每页显示多少行,这就暂且显示10行吧)
@Integer((RecordCount-1)/PageCount)+1

第几页:
Temp:=@RightBack(QUERY_STRING; "&Start=");
Temp2:=@If(@LeftBack(Temp; "&")!="";@LeftBack(Temp; "&");Temp);
Temp1:=@If(Temp2="";Temp2;"1");
Tmp:=@Integer((@TextToNumber(Temp1)+PageCount-2)/PageCount)+1;
@If(Show_Num=1;1;Tmp)

你还可以把recordcount和pagecount做成域,让用户自己选每页显示多少行~~~
zhangluoH 2003-02-09
  • 打赏
  • 举报
回复
强烈关注!
kingwgh 2003-02-08
  • 打赏
  • 举报
回复
也给你一点思路:
可以直接用代理来操作视图中的文档然后再显示出来:
你写一个代理,然后在嵌入视图的表单的WEBQUERYOPEN中运行代理:
REM 实现视图显示分页
Dim s As New NotesSession
Dim doc As NotesDocument
Set doc=s.DocumentContext

Dim db As NotesDatabase
Set db=s.CurrentDatabase

Dim view As NotesView

Set view=db.GetView(doc.v_view(0))'视图名称
Dim ll_count As Long

If view Is Nothing Then
Msgbox "view is Nothing!"
Goto bz
End If

Dim viewdc As NotesViewEntryCollection

If doc.v_keysort(0)<>"" Then
Set viewdc=view.GetAllEntriesBykey(doc.v_keysort(0))
Else
Set viewdc=view.AllEntries
End If

Dim numdoc,rowsperpage As Integer

numdoc=viewdc.count'记录总数

rowsperpage=Val(doc.v_rowsperpage(0))

If (numdoc Mod rowsperpage)=0 Then
doc.v_pagenum=numdoc/rowsperpage
ll_count = numdoc/rowsperpage
Else
doc.v_pagenum=Int(numdoc/rowsperpage)+1
ll_count=Int(numdoc/rowsperpage)+1
End If

Dim start As Variant
start=Evaluate({@middle(query_string;"start=";"&")},doc)

If start(0)<>"" Then
doc.v_currentpage=Int(Val(start(0))/rowsperpage)+1
Else
doc.v_currentpage="1"
start(0)="1"
End If

Dim item As NotesItem
'Set item=doc.GetFirstItem("v_dispage")
Set a = New NotesRichTextItem(doc, "v_dispage")
If Cstr(doc.v_gopage(0))<>"" Then
start(0)=(doc.v_gopage(0)-1)*rowsperpage+1
End If
Call a.AppendText("[<table width = 100%>]")
Call a.AppendText("[<tr>]")
Call a.AppendText("[<td align = left>]")
Call a.AppendText("[<font size = 2>]")
Call a.AppendText("[<font size = 2 color = red>]记录总数:"+Cstr(numdoc)+"[</font>] 页数:")

For i=Int(Val(start(0))/rowsperpage)-4 To Int(Val(start(0))/rowsperpage)+4
If i>=0 Then
If i>=doc.v_pagenum(0) Then
Exit For
End If
If i=Int(Val(start(0))/rowsperpage) Then
Call a.AppendText("[[<font size = 3 color=red>]"+Cstr(i+1)+"[</font>]]")
Else
Call a.AppendText("[[<a href="+doc.form(0)+"?openform&start="+Cstr((i)*rowsperpage+1)+"&count="+Cstr(rowsperpage)+">"+Cstr(i+1)+"</a>]]")
End If
End If
Next
Call a.AppendText("[</font>]")
Call a.AppendText("[</td>]")
Call a.AppendText("[</tr>]")
Call a.AppendText("[</table>]")
bz:
Print {<body onload=window.navigate("}+doc.form(0)+{?openform&start=}+start(0)+{&count=}+Cstr(rowsperpage)+{")>}
Print {</body>}

在表单位中放一些域:

视图名称:v_view
分类列:v_keysort,也可以不用
每页显示记录:v_rowsperpage
总页数:v_pagenum
当前页:v_currentpage
跳转到 v_gopage 页,该域也没有用到
表单位名称:form
RTF域:v_dispage ,计算.

cai_yb 2003-02-08
  • 打赏
  • 举报
回复
up
shuiye 2003-01-14
  • 打赏
  • 举报
回复
拷过来给你们做个参考

类似本坛视图分页的实现原理(附公式和代理)

表单要“产生所有域的HTML”,因为有隐藏域值要用;两个可编辑隐藏域totalpages,query_string(前者代理中要进行存取,后者保存url参数)两个计算域total,dpage(总页数,第几页);一个可编辑域gopage(到第几页);
两个代理,gotopage和viewpage,前者直接实现转到第几页;后者实现共几页,第几页;翻页操作时向url传递start=?参数,代理来计算是第几页。

几个操作公式
下一页 s:=@If(@Trim(@Right(query_string;"start="))="";"1";@Trim(@Right(query_str ing;"start=")));
p:=@TextToNumber(s);
start:=@If((p+20)>(@TextToNumber(totalpages)*20);s;@Text(p+20));
url:= @Subset(@DbName;-1)+"/$$viewtemplate+for+($inbox)?openform&start="+start;
@URLOpen(url)
上一页 s:=@If(@Trim(@Right(query_string;"start="))="";"1";@Trim(@Right(query_str ing;"start=")));
p:=@TextToNumber(s);
s2:=@If(p<=20;1;p-20);
start:=@Text(s2);
url:= @Subset(@DbName;-1)+"/$$viewtemplate+for+($inbox)?openform&start="+start;
@URLOpen(url)
首页 REM "@Command([OpenView];@ViewTitle)";
@URLOpen("$$viewtemplate+for+($inbox)?openform&start=1") < /TR>
末页 end:=@Text((@TextToNumber(totalpages)-1)*20+1);
url:= @Subset(@DbName;-1)+"/$$viewtemplate+for+($inbox)?openform&start="+end;
@URLOpen(url)

gotopage代理如下:

Sub Initialize
On Error Goto errorhandler

Dim session As New notessession
Set db=session.currentdatabase
Set doc=session.documentcontext
'///////////////////////////////////
&nb sp;If doc.gopage(0)="0" Then

Print "<script language=javascript> window.alert('请输入正确的页码!') </script>"
Print "<script language=javascript> window.history.back()</script>"
Exit Sub
End If
'//////////////////////////////////
If Cint(doc.gopage(0))>Cint(doc.totalpages(0)) Then

Print "<script language=javascript> window.alert('输入超过最大页码!')</script>"
Print "<script language=javascript> window.history.back()</script>"
Exit Sub
End If

'///////////////////////////////////
path=db.file path
dp=Cint(doc.gopage(0))
dp=Cstr((dp-1)*20+1)
Prin t "["+path+"/$$viewtemplate+for+($inbox)?openform&start="+dp+"]"

Exit Sub

errorhandler:

Messagebox "代理运行发生错误!!" &Str(Err)&":"&Error$
Exit Sub



viewpage代理用来计算总页数,第几页
zhangrui007008 2003-01-13
  • 打赏
  • 举报
回复
偶也想要一份分页显示源码,请顺便给我发一份吧,谢谢,我的信箱是zhang_rui_007@sina.com
salusun 2003-01-13
  • 打赏
  • 举报
回复
我的信箱是suntyneu@263.net
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)内容概要:本文介绍了基于神经网络的数据驱动迭代学习控制(ILC)算法,旨在解决具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统中无人车的路径跟踪问题。该方法结合神经网络的学习能力与ILC的迭代优化机制,在无需精确系统模型的前提下,通过多次任务执行不断修正控制输入,以实现对期望轨迹的高精度跟踪。文章详细阐述了算法的设计原理、稳定性分析以及在无人车路径跟踪中的具体实现与仿真验证,展示了其在处理模型不确定性与提升跟踪精度方面的有效性。; 适合人群:具备自动控制、机器人或人工智能基础知识,从事无人车、自动化控制、智能系统研发的研究人员及工程师。; 使用场景及目标:①解决无人车在复杂环境下因系统模型未知或不精确导致的路径跟踪难题;②提升重复性作业中控制系统对理想轨迹的跟踪精度与鲁棒性;③为非线性、不确定性系统的先进控制策略设计提供理论参考与实践案例。; 阅读建议:建议读者结合Matlab代码实现进行学习,重点关注神经网络与ILC的融合机制、控制律的设计过程以及仿真结果的分析,以深入理解数据驱动方法在解决模型未知问题上的优势。
内容概要:本资源聚焦于分数阶系统(FOS)的Lyapunov指数谱计算,涵盖分数阶Lorenz系统、4D分数阶Chen系统和分数阶Duffing振荡器三种典型非线性动力学模型。通过提供完整的Matlab代码实现,系统介绍了分数阶微分方程的数值求解方法、李雅普诺夫指数谱的计算原理与算法流程,旨在帮助研究人员定量分析分数阶系统的混沌特性与动力学行为,为复杂系统的稳定性判定、分岔分析及混沌控制研究提供技术支撑。; 适合人群:具备一定动力系统与数值计算基础,从事非线性科学、混沌理论、分数阶微积分等相关领域研究的硕士、博士研究生及科研人员。; 使用场景及目标:① 学习和掌握分数阶微分方程的数值积分方法(如Adams-Bashforth-Moulton算法);② 深入理解Lyapunov指数谱的物理意义及其在判定系统混沌、稳定与周期运动中的应用;③ 利用提供的Matlab代码对特定分数阶系统进行动力学仿真与分析,复现经典结果或拓展至新的研究对象。; 阅读建议:此资源以Matlab代码为核心,强调理论与实践的紧密结合。使用者应在理解分数阶微积分基本理论和Lyapunov指数计算原理的基础上,仔细研读并调试所提供的代码,通过修改系统参数、初始条件等方式进行探究式学习,从而深化对分数阶系统复杂动力学行为的理解。
代码转载自:https://pan.quark.cn/s/447eda883a93 在本文中,我们将详细研究利用微控制器MSP430F5529来操控MPU6050传感器,并从其输出数据中推算出欧拉角。让我们来熟悉相关的主要构成部分。MSP430F5529是由德州仪器(TI)研发的一款16位超低功耗微控制器,它具备丰富的外部设备接口和强大的处理性能,非常适合多样化的嵌入式系统应用,尤其是传感器监控领域。MPU6050则是InvenSense公司推出的一款六轴惯性测量装置(IMU),该设备集成了三轴陀螺仪和三轴加速度计,能够检测设备的旋转状态和线性运动情况。 **一、MSP430F5529与MPU6050的连接** 1. **I2C通信协议**:MSP430F5529借助I2C总线与MPU6050进行数据交换。在I2C协议框架内,MSP430担任主设备角色,而MPU6050则扮演从设备角色。主设备负责控制数据传输过程,从设备则响应请求并传输数据。 2. **配置MPU6050**:在启动通信流程之前,必须设定MPU6050的工作模式、采样频率、满量程范围等参数。这一过程通常通过发送特定的I2C指令来完成。 3. **数据获取**:MPU6050的陀螺仪和加速度计数据通过I2C接口持续不断地或按需提供。微控制器周期性地读取这些数据,用以监控设备的动态变化情况。 **二、陀螺仪和加速度计原始数据解读** 1. **陀螺仪数据**:陀螺仪测量的是角速度,其单位通常是dps(度/秒)。该数据反映了设备围绕三个正交轴的旋转速度。 2. **加速度计数据**:加速度计测量的是线性加速度,其单位通常是g(重力加速度的倍数)。它能够感知设备在三个正交轴上的静态和动态加速度变化。...

536

社区成员

发帖
与我相关
我的任务
社区描述
企业开发 Exchange Server
社区管理员
  • 消息协作社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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