按照企业信息系统的设计习惯,我们一般将信息以列表的方式在主窗口展现,同时设置需要展现的字段,一些系统会将这个窗口称为总表页、列表页等。而信息的编辑或完整信息的查询,一般通过一个弹窗来实现,一些系统会将这个窗口称为详情页、表单页等。

详情页有时候内容比较多,这个时候就需要借助滚动条的下拉。在windev官方文档中,没有查到详情页滚动条的实现方式,所以有一段时间都在找实现方案。上一篇博文中,有说到向内部窗口传参的方法,就是为了实现详情页滚动条。这几天玩layout时,发现这个控件也能实现滚动条,因为单个窗口就可以实现弹窗滚动条,所以现在都是用layout的方案来实现。以下划重点,方法其实也很简单:

1、在窗口中建一个layout

2、在layout中排组件,随排随拉长,先不管layout的长度会超过窗口

3、排完后,将layout的整体长度调整到适合窗口大小,这样内容区域长度超过layout的整体长度,滚动条就会自动出现。注意:layout的整体长度,在UI中设置

4、有可能,你关闭了layout的滚动条,可以到details中设置

使用layout实现滚动条,可以带来三个好处,(1)比内部窗口的方式少了一个窗口页面;(2)少一个窗口,也就不再需要向内部窗口传参了;(3)你还可以实现在窗口固定“确认/取消"按钮,排版会更灵活。

顺便说一下弹窗尺寸的规划,信息系统中的弹窗,我一般分为以下几类:

1、详情页弹窗,一般用于主信息的新建、修改和查看,我一般设置为(820-1020)*620,两栏显示

2、设置页弹窗,之前我们会把设置类信息专门放到一个设置类目中,但现在更多系统会将设置类按钮放在使用的地方,随时需要随时设置,这样的UI设置更加人性化。这类设置页弹窗在详情页和列表页都有可能出现,但主要是在详情页。这类弹窗,我一般准备两个规格,(650-750)*(450-600),两栏或列表显示;(450-550)*(350-550),单栏显示

3、伪组合框弹窗,有些填报组合框无法实现,我们一般会伪造一个组合框填报,基本原理就是点击图片弹窗,选择完后回传。这类弹窗的大小一般和填报字段编辑框的长度差不多,用openpopupposition函数实现弹窗。

2020-10-21补充:

最近发现,超级控件supercontrol也可以实现滚动条功能,和layou相比,在排版上会更简单,滚动条在设计阶段就可以使用。超级控件独立于当前窗口,相当于一个独立的窗口,可以定义自己的Local过程方法,也有自己的初始化事件。父窗口可以通过“超级控件名称.超级控件内部控件名称”的方式,获取内部控件,但是超级控件内部无法获取父窗口的控件,只能通过把值传给超级控件,再由父窗口读取超级控件值的方式来获取,还是比较麻烦!如果不涉及,由超级控制内部传值到外部的过程,有超级控件是比较好!

windev的弹窗详情页滚动条实现方法以及弹窗尺寸规划的更多相关文章

  1. iOS开发——UI进阶篇(十)导航控制器、微博详情页、控制器的View的生命周期

    一.导航控制器出栈 1.initWithRootViewController本质 UIViewController *vc = [[OneViewController alloc] init]; // ...

  2. 通过日志过滤的方法,统计每天内容详情页面的PV数

    1.目的: 每天凌晨0点1分统计用户点击进入内容详情页的次数,对内容点击量形成榜单. 2.分析: A./data/log/epg.access.log日志实时打印用户访问页面的日志,并且每天凌晨0点会 ...

  3. React-Native 之 GD (十一)加载更多功能完善 及 跳转详情页

    1.加载更多功能完善 GDHome.js /** * 首页 */ import React, { Component } from 'react'; import { StyleSheet, Text ...

  4. 从零开始,搭建博客系统MVC5+EF6搭建框架(5),博客详情页、留言、轮播图管理、右侧统计博文

    一.博客系统进度回顾 上一遍博客介绍到,系统已经实现到了发布以及前台布局展示,接下来就是实现一些,详情页,留言.轮播图管理.右侧博文统计信息实现. 二.博客系统详情页实现 2.1先来看看详情页展示的效 ...

  5. 这交互炸了:饿了么是怎么让Image变成详情页的

    这交互炸了:饿了么是怎么让Image变成详情页的 晚上叫外卖,打开饿了么,发现推了一个版本,更新以后,点开了个鸡腿,哇,交互炫炸了. 本文同步自wing的地方酒馆 不过还是有槽点.我是无意中才发现可以 ...

  6. Ecshop商品详情页显示当前会员等级价格

    会员登录状态下,在ECSHOP商品详情页的本店售价中显示当前登录会员对应的等级价格,在未登录状态下,则还默认显示原来的本店售价. 解决方法: 这个需要修改ECSHOP程序代码来实现. 打开文件 /in ...

  7. iOS之UI--微博个人详情页

    前言:微博个人详情页,和我常用的的QQ空间的详情页是同样的.要求能够融会贯通,做这一类的界面能够快速上手实现. 动态图效果展示: 直接使用UINavigationBar->UITableView ...

  8. ecshop 商品详情页显示同类别下的推荐商品

    1.打开goods.php文件找到下面代码 $smarty->assign('goods_rank', get_goods_rank($goods_id)); // 商品的销售排名 在上面的代码 ...

  9. ecshop 优化_将商品详情页goods.php重命名为shangpin.php

    有人说,将商品详情页的文件名 goods.php 改一个名字,对百度收录会有帮助,也许吧,这里不讨论是否有帮助,这里只讲解如何重命名. 例如:我们将 goods.php 改为 shangpin.php ...

随机推荐

  1. conda : 无法将“conda”项识别为 cmdlet、函数、脚本文件或可运行程序的名称

    conda : 无法将"conda"项识别为 cmdlet.函数.脚本文件或可运行程序的名称.请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次. 解决办法: 没有添加系 ...

  2. 【源码阅读】VictoriaMetrics中理解vm-backup中设置origin地址的用途

    lib/backup/actions/backup.go: // 118 行 partsToCopy := common.PartsDifference(srcParts, dstParts) //要 ...

  3. Go 常用函数

    #### Go 常用函数,错误处理这一节我们来学习一下Go 常用的函数,这些函数有些是内置的,有些是官方标准库内的, 熟悉这些函数对程序开发来讲还是很重要的; 1. len("abc&quo ...

  4. plsql 数据库事件触发器

    --4.数据库事件触发器 需要超管的权限 /* 数据库事件触发器有数据库级和模式级两种. 前者定义在整个数据库上,触发事件是数据库事件,如数据库的启动.关闭,对数据库的登录或退出. 后者定义在模式上, ...

  5. 蓝桥杯试题 基础练习 2n皇后问题以及n皇后问题

    在学习2n皇后之前,我们应该认识一下n皇后问题: 在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上.你的任务是,对于 ...

  6. Android 12(S) 图形显示系统 - createSurface的流程(五)

    题外话 刚刚开始着笔写作这篇文章时,正好看电视在采访一位92岁的考古学家,在他的日记中有这样一句话,写在这里与君共勉"不要等待幸运的降临,要去努力的掌握知识".如此朴实的一句话,此 ...

  7. 「ZJOI2014」璀灿光华

    「ZJOI2014」璀灿光华 实际上,可以不用建水晶立方体... 因为,发光水晶的方向都要枚举一遍. 只需知道发光水晶每个方向有哪些水晶就可以了. 对于一个发光水晶,将它连接的水晶标号. 从该水晶bf ...

  8. 「IOI2009」旅行商

    题目传送门 首先,看到这道题感觉就像dp(然鹅没什么用). 一个美好的设想 假如没有两个展销会在同一天开展:前途光明 暴力dp,复杂度o(\(n^2\)). 没有同一天的展销会 暴力dp慢,是因为本质 ...

  9. JQuery扩展方法实现Form表单与Json互相转换

    1.把表单转换出json对象 //把表单转换出json对象 $.fn.toJson = function () { var self = this, json = {}, push_counters ...

  10. HTML Flex 布局

    感谢原文作者:在路上de 小白 原文链接:https://www.cnblogs.com/likun123/p/9518466.html#commentform 目录 一.Flex 布局是什么? 二. ...