
UniGui
文章平均质量分 52
一个网页形式,前端展示仍然是html/css/js这些东西,基于业内大名鼎鼎的Extjs做为前端核心。
开发方式符合delphi的使用习惯,可以拖放控件,双击事件写入delphi代码来实现业务和数据存储。unigui会自动将delphi业务代码转换成网页形式展现给用户端
蝈蝈(GuoGuo)
这个作者很懒,什么都没留下…
展开
-
unigui资源整合
UniGUI集合说明--追月无名_文档之家 (doczj.com)原创 2023-10-18 07:50:35 · 278 阅读 · 0 评论 -
TMS FlexCel VCL & FMX v7.8学习汇总
https://www.cnblogs.com/txgh/category/2172481.html?page=105]ApiMateRadStudio.exe上传xls,自动生成pacsal代码04]FlexCel之预览Excel03]FlexCel将DBGrid1导出为Excel02]FlexCel的Demo和帮助CHM01]TMS FlexCel VCL & FMX v7.8的下载和安装原创 2024-04-01 07:16:14 · 466 阅读 · 0 评论 -
uniGUI之主窗口折叠UI之UniTreeMenu(32-2)
目前发现菜单太多时右侧不能自动出现垂直滚动条,即太多的子菜单将超出屏幕范围,鼠标滚轮不能翻动菜单项,不太方便。在UniTreeMenu的clientEvents属性里的UniEvents里,左侧顶部选择Ext.list.Tree,然后在treeMenu.afterCreate里面添加代码如下,即可解决,效果还不错。[info]和[search],[home],[download],[trash],[refresh],[reply],[star],[user]有用,不是所有的都会显示出来。原创 2024-04-01 07:14:11 · 946 阅读 · 0 评论 -
UniGUI中-UniTreeMenu1常见技巧
目前发现菜单太多时右侧不能自动出现滚动条,即太多的子菜单将超出屏幕范围,鼠标滚轮不能翻动菜单项,不太方便。在UniTreeMenu的clientEvents属性里的UniEvents里,左侧顶部选择Ext.list.Tree,然后在treeMenu.afterCreate里面添加代码如下,即可解决,效果还不错。[info]和[search],[home],[download],[trash],[refresh],[reply],[star],[user]有用,不是所有的都会显示出来。原创 2023-12-17 17:34:56 · 1500 阅读 · 0 评论 -
TUniGUISession属性及方法
这些方法允许开发人员管理会话的生命周期,存储和检索与会话相关的数据,并执行其他与会话相关的操作。请注意,具体的属性和方法可能会因UniGUI的不同版本而有所变化。为了获得最准确的信息,建议查阅适用于你所使用的UniGUI版本的官方文档或源代码。TUniGUISession类是UniGUI框架中用于管理用户会话的类,主要用于存储和管理用户的会话信息。以上是TUniGUISession类常用的方法和属性,通过这些方法和属性可以实现对用户会话的管理和控制。的属性,具体可能会因版本和框架的具体实现而有所不同。原创 2023-12-17 08:28:44 · 1377 阅读 · 0 评论 -
在unigui中为组件添加hint
'closable:false,draggable:false,target:"' + jsname + '_id",html:"'+hint+'",title:"提示"});//改变hint的样式。原创 2023-12-17 10:28:46 · 531 阅读 · 0 评论 -
UniGuiApplication的客户端信息包括以下内容:
这些信息可以帮助开发人员根据客户端的特性来进行相应的适配和处理。原创 2023-12-17 08:57:46 · 689 阅读 · 0 评论 -
解决UniDBTreeGrid在数据更新后自动折叠的问题
UniDBTreeGrid控件在数据更新之后,总是会自动折叠,我想要让它既更新了数据,又不自动折叠。通过以上三个步骤即可解决问题。原创 2023-12-16 10:58:05 · 489 阅读 · 0 评论 -
uniGUI 应用捕获按键
存在的问题,当显示一个urlFrame,焦点在他上面时,不会触发OnKeyDown事件,从而定义的按键无法捕获到了!MainForm有个属性MonitoredKeys,用来处理捕获用户在浏览器中的按键。原创 2023-12-16 09:38:27 · 431 阅读 · 0 评论 -
为uniDBGrid设置文字操作栏
对于Web应用界面,这是最常见的方式,那对于我等Delphi开发者来说,基于uniGUI该怎么实现呢?1]首先,为uniDBGrid准备“操作”这一栏的显示内容,具体说,在数据集中准备好显示的数据。我是为数据集加了一列,叫operation。把记录的id传过来了。原创 2023-12-16 09:37:52 · 821 阅读 · 0 评论 -
uniGUI学习之UniHTMLMemo1富文本编辑器
也许是uniHTMLMemo的BUG,uniMemo在不断增加新的消息时会自动滚屏,但是UniHTMOMemo不会,可在发完消息后和收到消息后添加调用javaScript函数解决。解决系统自带的不能插入图片,字体少等问题 https://www.lanrenzhijia.com/comm/4520.html。在这里你会发现我在发送文字处增加了“”,那是因为如果不增加这个,接收窗口显示时会把多次信息链接到一起,没有换行。5、显示 并 编辑 HTML源代码(主要是图片处理)4、输入长度限制问题。原创 2023-12-16 09:18:45 · 810 阅读 · 0 评论 -
uniGUI学习之随机验证码生成及判断
【代码】uniGUI学习之随机验证码生成及判断。原创 2023-12-16 09:16:25 · 536 阅读 · 0 评论 -
UniGUI之提示信息MessageDlg及获得信息Prompt
UniSession.AddJS('Ext.get("messagebox-1001_header-title-textEl").setText("确认")');UniSession.AddJS('Ext.get("messagebox-1001_header-title-textEl").setText("信息")');UniSession.AddJS('Ext.get("messagebox-1001_header-title-textEl").setText("警告")');原创 2023-12-16 09:15:03 · 869 阅读 · 0 评论 -
uniGUI学习之UniTreeview
UniTreeview中能改变一级目录的字体和颜色。原创 2023-12-16 09:09:40 · 584 阅读 · 0 评论 -
UniGUI学习之UniImage
ui.Picture.Bitmap.Canvas.TextOut(10, 10, '图片填上文字');UniImage图片填上文字。原创 2023-12-16 09:07:06 · 660 阅读 · 0 评论 -
uniGUI之上传文件UniFileUploadButton
/要在与exe同下新建一个UploadFolder文件夹。//将 文件 保存到UploadFolder文件夹,先要创建这个UploadFolder文件夹。: 文件类型过滤,有图片image/* audio/* video/*三种过滤。//将 文件 加载到 UniImage1里。标题以及消息文本,可翻译成中文。原创 2023-12-16 09:06:24 · 1775 阅读 · 0 评论 -
uniGUI学习之Cookie
UniApplication.Cookies.SetCookie(const ACookieName: string,const AValue: string,AExpires: TDateTime = 0,ASecure: Boolean = False,AHTTPOnly: Boolean = False,const APath: string = '/')原创 2023-12-16 09:02:47 · 602 阅读 · 0 评论 -
uniGUI之MASK遮罩
在页面进行后台数据库操作的时候,不想 用户再进行 页面上的 其他操作,这时候就要 将页面 遮罩。// 是否显示信息。//很简单,本例子就是告诉大家如何在程序忙碌时弹出一个“请等待。ScreenMask.Message:='后台处理中,请稍候';原创 2023-12-16 09:00:00 · 603 阅读 · 0 评论 -
uniGUI之uniEdit
主要新加属性;其他有焦点的控件也有效。原创 2023-12-16 08:56:48 · 1028 阅读 · 0 评论 -
uniGUI之换肤
1]RecallLastTheme 设为True。在MainModule里 Design 模式。2]Theme选一个皮肤。原创 2023-12-16 08:47:12 · 519 阅读 · 0 评论 -
UniGUI 之UniDBGrid
/DisplayValues存储显示文字 ,不设置 则 显示 True/False;.GridLotacao .x-grid-column {/*带元素id的属性(设置栏),在unidbgrid中的layoutconfig属性中的cls子属性中加入GridLotacao名称*/.GridLotacao .x-grid-cell {/*带元素id的属性(设置单元格),在unidbgrid中的layoutconfig属性中的cls子属性中加入GridLotacao名称*/// 一定为True;原创 2023-12-16 08:16:36 · 2757 阅读 · 0 评论 -
uniGUI for Delphi UniSweetAlert控件详解
1、AlertType:提示类型,分为atError、atSuccess、atInfo、atQuestion、atWarning五种类型,主要控制提示界面顶部的图标样式;2、AllowEscapeKey:是否允许Esc键关闭提示界面;3、AllowOutsideClick:是否允许点击提示框外部区域关闭提示界面;4、Animation:动画;5、CancellButtonText:取消按钮中文内容;6、ConfirmButtonText:确认按钮中文内容;原创 2023-12-16 08:10:52 · 904 阅读 · 0 评论 -
unigui分bpl如何访问mainmodule的变量
使用接口的好处是可以更好地封装和保护数据,并且可以实现更灵活的数据共享方式。你可以根据需要定义任意数量的接口,每个接口可以包含不同的方法和属性。此外,接口还支持跨进程和跨线程的访问。因此,使用接口是在UniGUI中实现BPL与MainModule之间数据共享的一种常见和推荐的方法。要在UniGUI中的BPL访问MainModule中的变量,可以使用全局变量或接口来实现数据共享。请注意,在使用全局变量时,要确保MainModule和BPL在相同的进程中运行,以便它们可以共享内存空间。方法一:使用全局变量。原创 2023-12-15 14:47:57 · 496 阅读 · 0 评论 -
UniGui日常技巧:解决在苹果手机ios系统中UnimNumberEdit无法输入小数
那么如何在unigui种修改呢,uninumberedit->clientevents->unievents->aftercreate,添加如下代码sender.inputElement.set({inputmode: "decimal"})在unigui的手机端中使用unimnumberedit的时候,苹果手机只能输入0-9整数数字,安卓手机没有问题。,苹果手机numeric就是0-9,如果要输入小数需要使用。不使用虚拟键盘,这个时候页面需要使用自定义的键盘代替。默认值,会显示标准输入键盘。原创 2023-12-09 09:07:03 · 1087 阅读 · 0 评论 -
UniGui使用CSSUniTreeMenu滚动条
老规矩,unitreemeu的layout的componentcls里添加bbtreemenu,然后在css里添加。有些人反应UniTreeMenu当菜单项目比较多的时候会超出但是没有出滚动条,只需要添加如下CSS。然后当内容超出后就会自动出现滚动条。原创 2023-12-09 09:06:15 · 662 阅读 · 0 评论 -
UniGui使用CSS移动端按钮标题垂直
然后添加css,老规矩,添加css的方法有两种一种在servermodule的customcss里添加,一种是使用自定义css文件添加,此处以第一种方法演示。unigui移动端中按钮拉窄以后,标题无法垂直居中,是因为标题有一个padding属性,在四周撑开一段距离。解决方法,用css修改padding,具体做法如下。首先给button的cls创建一个cls,例如。把按钮设高一些,btn的height设置成60。原创 2023-12-09 09:03:38 · 765 阅读 · 0 评论 -
UniDBGrid序号列添加标题
UniSession.AddJS('MainForm.UniDBGrid1.columnManager.columns[0].setText("序号")');有人想要在UniDBGrid的序号列加上标题,就是这里。原创 2023-12-09 09:01:55 · 438 阅读 · 0 评论 -
UniGui禁用缓存
exe模式下所有的请求,无论是数据还是文件,都是由unigui服务器进行处理,而isapi模式下,文件请求都是由iis进行处理,所以没有执行到此代码,也就不会生效(iis可以设置自定义header来禁用缓存),同理HyperServer下也不生效,因为hy下文件处理由hy完成,同样没有执行到此代码。只要地址不变,就会使用缓存。,不缓存,那么所有文件在每次刷新的时候都会重新加载,就会增加服务器压力。今天有人问到如何禁用缓存,原因是引用了第三方js,css等文件,但是因为缓存的原因,修改后没有及时生效。原创 2023-12-09 08:54:37 · 895 阅读 · 0 评论 -
UniGui使用CSS优化PageControl
把此图片另存到tab-default-close.gif 然后运行库里覆盖掉原来的图片。最后提示,此css是在默认的皮肤也就是classic下修改,其他皮肤未测试。以上代码贴到ServerModule的CustomCSS里。关闭按钮是图片,重新制作一个合适的图片替换掉即可,比如。如果有其他喜欢的样式自己做图片替换掉即可。原创 2023-12-09 08:49:41 · 831 阅读 · 0 评论 -
去掉手机端顶部间隙
在ServerModule的customcss里添加以下代码。Unigui手机端打开时,在顶部有一条白色间隙。使用以下方法可以去除间隙。原创 2023-12-09 08:46:55 · 421 阅读 · 0 评论 -
UniGUI Session管理說明
UniGUI Session管理說明每一個Session對應一個UniMainModule,一個MainForm因此Session+UniMainModule就可以得到所有Session+使用者的資料以做管理之用 [UniServerModule] Public區定義 UserList:TList; //登入Session List //事件 procedure TUniServerModule.UniGUIServerModuleCreate(Sender: TObj原创 2023-12-03 11:12:13 · 1004 阅读 · 0 评论 -
uniGUI试用笔记(十五)通过URL控制参数
在代码中可以通过:原创 2023-12-03 09:54:21 · 659 阅读 · 0 评论 -
UniGui应用自适应PC和Mobile
先按常规方式创建UniGui PC端应用,然后按下图添加Mobile MainForm和Mobile Login Form(需要时),添加后打开网址时UNIGUI应用会根据客户端类型自动调用PC或移动端模式。原创 2023-12-01 11:34:52 · 736 阅读 · 0 评论 -
UniGUI官方Demo打开慢的问题
C:\Program Files (x86)\FMSoft\Framework\uniGUI\Demos\Desktop\AllFeaturesDemo\mdemo.dproj 运行时浏览器加载慢由于Demo中访问了Google服务器,导致了浏览器加载慢,将Demo中Google服务器地址删除即可https://maps.googleapis.com/maps/api/js?sensor=false&key=AIzaSyD51syplucTDbub0ZcsZSJT8IixGAnkuxM原创 2023-12-01 08:00:58 · 535 阅读 · 0 评论 -
让uniGUI支持https
找到ssl两个dll文件,复制到uniGUI应用所在的目录,跟证书一样。这两个文件uniGUI带了,在uniGUI的安装目录可以找到,如:C:\Program Files (x86)\FMSoft\Framework\uniGUI\SSL\dll。在服务端找到hyperServer所在目录,会找到hyper_server_ssl.cfg文件,打开他,参考上面的代码,设置即可。首先,去申请个**的证书。我同事去阿里申请的,申请回是一个zip文件,里面有两个文件,一个扩展是per,一个key。原创 2023-10-20 08:03:32 · 929 阅读 · 0 评论 -
Unigui可以使用WebSocket进行客户端之间的实时互相发消息
3. 在客户端中使用JavaScript代码创建WebSocket对象,建立连接并发送消息。使用UniSession.SendToAll方法可以将消息发送给所有客户端。Unigui可以使用WebSocket进行客户端之间的实时互相发消息。WebSocket是一种支持双向通信的网络协议,可以使客户端和服务器之间实时地进行数据交换。2. 在WebModule的OnCreate事件中开启WebSocket服务。1. 在Unigui项目中添加WebSocket组件。//创建并启动WebSocket服务。原创 2023-10-20 08:01:19 · 842 阅读 · 0 评论 -
Unigui中获取手机特征码
这段JavaScript代码可以读取iOS设备的UUID或者Android设备的Serial Number,并将其中一个作为设备的唯一标识符返回。在Delphi Unigui中,您可以使用TUniDeviceInfo类来读取设备的一些基本信息,例如设备的操作系统版本、设备名称和分辨率等。在上面的代码中,`uniGUIApplication.ClientInfo.DeviceID` 可以**到当前客户端设备的特征码。如果您想要获取设备的特征码信息,您可以使用JavaScript来实现。原创 2023-10-20 07:59:54 · 749 阅读 · 0 评论 -
uniGUI文件操作
/要在与exe同下新建一个UploadFolder文件夹。//将 文件 保存到UploadFolder文件夹,先要创建这个UploadFolder文件夹。: 文件类型过滤,有图片image/* audio/* video/*三种过滤。//将 文件 加载到 UniImage1里。标题以及消息文本,可翻译成中文。原创 2023-10-20 07:54:58 · 542 阅读 · 0 评论 -
uniGUI中Cookies使用中文汉字的方法
使用UniApplication.Cookies.SetCookie来设置一个中文的Cookies时,然后用UniApplication.Cookies.Values来读取Coolies值时,中文会变成乱码。UniApplication.Cookies.SetCookie('name',EncodeString('中文汉字'));//使用 EncodeString函数编码。原创 2023-10-20 07:37:46 · 204 阅读 · 0 评论 -
UniGUI 登录全屏 退出全屏(使浏览器全屏)
如何使浏览器全局及退出全屏原创 2023-10-20 07:36:17 · 286 阅读 · 0 评论