普通用户
4.7.3编译卡住不动,4.7.2可以正常编译运行 [复制链接]
大罗神仙 发表于 2025-03-28 100 1

如题:

' ****************************************************************************
' 版权说明:Copyright(C) All Rights Reserved VcnStudio
' 程序版本:V1.0
' 程序作者:
' 联系信息:
' 窗口描述:默认启动窗口。
' ****************************************************************************

' 窗口域变量、该变量可在窗口中任意位置使用
变量 窗口变量  文本型
变量 ujweb  UJ网络操作
变量 user1  文本型
变量 password1  文本型
变量 json  JSON对象
变量 weburl  文本型
变量 token  文本型
变量 单选  单选控制器

'获取屏幕大小 引用及变量
引用 javafx.application.Application;
引用 javafx.stage.Stage;
引用 javafx.scene.Scene;
引用 javafx.geometry.Rectangle2D;
引用 javafx.stage.Screen;
变量 width,height  双精度小数

'文件选择器引用及变量
引用 javafx.stage.FileChooser;
引用 java.io.File;
变量 路径  文本型


'excel解析引用库
引用 org.apache.poi.ooxml.*
引用 org.apache.poi.openxml4j.*
引用 org.apache.poi.poifs.crypt.*
引用 org.apache.poi.xddf.usermodel.*
引用 org.apache.poi.xdgf.*
引用 org.apache.poi.xslf.*
引用 org.apache.poi.xssf.*
引用 org.apache.poi.xwpf.*
引用 cn.hutool.http.*
引用 cn.hutool.core.io.*
引用 cn.hutool.poi.excel.*
引用 cn.hutool.poi.exceptions.*
引用 cn.hutool.poi.ofd.*
引用 cn.hutool.poi.word.*
引用 java.util.*
变量 表格数据  文本型
变量 macname  文本型[]
变量 macname_mac  文本型[]
变量 macname_name  文本型[]
变量 macname_temp  文本型[]

事件 窗口创建完毕()
    取用户区宽度和高度()
    '本对象.最大化=真
    本对象.宽度=到整数( width)
    本对象.高度= 到整数( height)
    本对象.标题="墨水屏刷新"
    垂直滚动框3.宽度=本对象.宽度-200
    垂直滚动框3.高度=(本对象.高度-90)/2
    垂直滚动框3.添加组件(流式布局3)
    
    垂直滚动框1.顶边=垂直滚动框3.高度+60
    垂直滚动框1.宽度=(本对象.宽度-200)/2
    垂直滚动框1.高度=(本对象.高度-90)/2
    垂直滚动框1.添加组件(流式布局1)
    
    垂直滚动框2.顶边=垂直滚动框3.高度+60
    垂直滚动框2.左边=190+垂直滚动框1.宽度
    垂直滚动框2.宽度=(本对象.宽度-200)/2
    垂直滚动框2.高度=(本对象.高度-90)/2
    垂直滚动框2.添加组件(流式布局2)
    
    流式布局3.宽度=垂直滚动框3.宽度
    流式布局3.子项水平间距 = 10
    流式布局3.子项垂直间距 = 10
    流式布局3.置内容缩进整体(10)   
    
    流式布局1.宽度=垂直滚动框1.宽度
    流式布局1.子项水平间距 = 10
    流式布局1.子项垂直间距 = 10
    流式布局1.置内容缩进整体(10)
    
    流式布局2.宽度=垂直滚动框2.宽度    
    流式布局2.子项水平间距 = 10
    流式布局2.子项垂直间距 = 10
    流式布局2.置内容缩进整体(10)
    
    
    user1=单行编辑框1.内容
    password1 =单行编辑框2.内容
    json=创建 JSON对象()
    ujweb=创建 UJ网络操作()
    调试输出(user1+password1)
    单选=创建 单选控制器()
    单选框1.置控制器(单选)
    单选框2.置控制器(单选)
    
    
结束 事件



事件 按钮1.被单击(来源对象  对象,事件对象  鼠标事件)
    '异步执行首
    user1=单行编辑框1.内容
    password1 =单行编辑框2.内容
    json.添加成员("username",user1)
    json.添加成员("password",password1)
    
    weburl="http://192.168.1.247:8080/prod-api/api/v1/user/login"
    变量 a  文本型= json.到文本()
    调试输出(a)
    ujweb.置请求头("Content-Type","application/json")
    ujweb.发送POST请求By异步("login",weburl,a,"UTF-8")
    '异步执行尾
    
结束 事件

事件 ujweb.请求发送完毕(源对象  UJ网络操作,任务ID  文本型,数据值  文本型)
    如果(任务ID=="login")
        编辑框1.追加文本行(数据值)
        json.解析(数据值)
        token=json.取文本值("data")
        调试输出(token)
        
        按钮1.标题="登录成功"
        按钮1.禁用=
        单行编辑框1.禁用=
        单行编辑框2.禁用=
        否则
        编辑框1.内容="未登录,请先登录"
    结束 如果
    
结束 事件

函数 选择文件 ()
    
    @{
    FileChooser fileChooser = new FileChooser();
    fileChooser.setTitle("选择Excel文件");
    
    // 设置文件过滤器,只显示Excel文件
    FileChooser.ExtensionFilter extFilter = new FileChooser.ExtensionFilter(
    "Excel files (*.xls, *.xlsx)", "*.xls", "*.xlsx");
    fileChooser.getExtensionFilters().add(extFilter);
    
    // 显示文件选择对话框
    File selectedFile = fileChooser.showOpenDialog(null);
    
    // 返回选择的文件路径或null
    路径=(selectedFile != null)?selectedFile.getAbsolutePath():null;
    
    }
    
    
结束 函数

事件 按钮2.被单击(来源对象  对象,事件对象  鼠标事件)
    选择文件()
    
    单行编辑框3.内容=路径
    '调试输出( 取指定文本右边(单行编辑框3.内容,))
    如果(单行编辑框3.内容 != )
        excel(单行编辑框3.内容,"sheet1")
        解析文本数据(表格数据)
    结束 如果
    
结束 事件



函数 excel(文件地址  文本型,工作表名称  文本型)
    
    @{
    //从文件中读取Excel为ExcelReader
    //cn.hutool.poi.excel.ExcelUtil.getReader(FileUtil.file("test.xlsx"));
    //读如文件。并获取sheet1的数据
    //读取Excel中所有行和列,都用列表表示
    ExcelReader reader = ExcelUtil.getReader(FileUtil.file(文件地址), 工作表名称);
    List<List<Object>> readAll = reader.read();
    for(List<Object> line : readAll){
    String lineStr = "";
    for(Object value : line){
    lineStr = lineStr + "," + value;
    }
    lineStr = lineStr;
    表格数据 =表格数据+ lineStr+"\r";
    // 输出一行
    //系统类.调试输出(lineStr);
    }
    }
    
结束 函数


函数 解析文本数据(文本数据  文本型)
    '调试输出(文本数据)
    macname= 分割文本(文本数据,"\r")
    
    变量循环(i=0,取数组成员数(macname),1)
        变量 b  文本型="未使用"
        变量 tmp  文本型[]
        
        tmp= 分割文本(到文本( 取数组成员(macname,i)),",")
        
        
        
        如果(i!=0)
            变量 局_按钮 = 创建 按钮()
            '局_按钮.标题 = 到文本(取数组成员(tmp,1)) +"\r"+ 到文本(取数组成员(tmp,2))
            
            b=到文本(取数组成员(tmp,2))
            如果 (b==)
                b="未使用"+到文本(i)
                
            结束 如果
            局_按钮.标题 = b
            局_按钮.标记=到文本(取数组成员(tmp,1))
            ' 使用一个子程序函数监听我们动态创建的这些按钮的点击事件
            局_按钮.置被单击回调(&监听流式布局中按钮被点击)
            
            如果(寻找文本(b,"-M",1)==-1)
            
            流式布局1.添加组件(局_按钮)
            否则 
            流式布局2.添加组件(局_按钮)
            
            结束 如果
            
            
            
        结束 如果
        调试输出("mac:"+到文本( 取数组成员(tmp,0)))
        调试输出("mac1:"+到文本(取数组成员(tmp,1)))
        调试输出("name:"+ b)
        
        
        
    结束循环
    
    
    
    
结束 函数

函数 监听流式布局中按钮被点击(源对象  对象,事件对象  鼠标事件)
    ' 这里返回的源对象即为:用户点击的按钮对象
    ' 由于返回的源对象为基础对象类型、因此我们需要将其转成 按钮 类型
    ' 
    ' 
    ' 
    如果(token!=)
    变量 用户点击的按钮 = (按钮)源对象
    信息框("你点击了流式布局中的按钮:" + 用户点击的按钮.标题+"|"+用户点击的按钮.标记)
    否则 
         信息框("请先登录后操作","提示")   
    结束 如果
    
    
结束 函数


函数  取用户区宽度和高度()
    
    @{
    double userAreaWidth = Screen.getPrimary().getBounds().getWidth();
    double userAreaHeight = Screen.getPrimary().getVisualBounds().getHeight();
    width=userAreaWidth;
    height=userAreaHeight;
    }
    
结束 函数







老大帮忙看下是啥问题

管理员 2025-03-28

已经修复,到群里下载修复文件替换一下就可以了。

另:发帖时如果上传了项目源代码附加压缩包,帖子里面就无需再粘贴代码了。帖子只需要将问题描述清楚即可。

回复
 作者信息
大罗神仙
USB专业用户 云验证
专业开发指导服务

响应时间:5分钟

服务方式:官方1对1服务

工作时间:工作日 9:00 - 18:30

专业团队 · 开发指导 · 极速响应


官网 | 基础视频教程 | 在线文档 下载 VcnStudio IDE

© VcnStudio Inc All Rights Reserved

蜀ICP备17024229号