SecondPage master

本文介绍如何使用Ext.js库构建一个用于创建应用的启动窗口,包括窗口的基本配置、布局设计以及关键组件的实现。
 Ext.define('app.view.AppNewStartWindow',{
    extend : 'Ext.window.Window',
    alias  : 'widget.appNewStartWindow',
    title  : '创建应用',
    height : 450,
    width: 430,
    autoShow : false,
    layout : 'fit',
    
    initComponent : function(){
         this.items=[{
            xtype : 'panel',
            layout : 'border',
            items : [{
                xtype : 'form',
                region: 'north',
                layout : 'hbox',
                items :[{
                    xtype : 'textfield',
                    fieldLabel: 'bindmiddleware'
                },{
                    xtype : 'textfield'
                }]
                
        },{
                    xtype : 'form',
                    region : 'center',
                    height : 200,
                    items :[{
                        xtype :'textfield'
                    },{
                        xtype : 'grid',
                        title: 'Simpsons',
                        store: {
                             fields:['name', 'email'],
                                data:[
                                { 'name': 'Lisa',  "email":"lisa@simpsons.com"},
                                { 'name': 'Bart',  "email":"bart@simpsons.com"},
                                { 'name': 'Homer', "email":"home@simpsons.com"},
                                { 'name': 'Marge', "email":"marge@simpsons.com", }
                            ]
                        },
                        columns: [
                            { header: 'Name',  dataIndex: 'name' },
                            { header: 'Email', dataIndex: 'email', flex: 1 }
                        ],
                        height: 340
                    }]
                },{
                    xtype :'toolbar',
                    region : 'south',
                    items : [{
                        xtype : 'button',
                        text : 'next',
                        action : 'next'
                    }]
                    }]
         }];
        
        this.callParent(arguments);
    }
 })
【SCI级别】多策略改进鲸鱼优化算法(HHWOA)和鲸鱼优化算法(WOA)在CEC2017测试集函数F1-F30寻优对比内容概要:本文档主要介绍了一项关于多策略改进鲸鱼优化算法(HHWOA)与标准鲸鱼优化算法(WOA)在CEC2017测试集函数F1-F30上进行寻优性能对比的研究,属于智能优化算法领域的高水平科研工作。文中通过Matlab代码实现算法仿真,重点展示了HHWOA在收敛速度、寻优精度和稳定性方面的优势,体现了多策略改进的有效性。该研究适用于复杂优化问题求解,尤其在工程优化、参数辨识、机器学习超参数调优等领域具有应用潜力。; 适合人群:具备一定算法基础和Matlab编程能力的研究生、科研人员及从事智能优化算法开发与应用的工程技术人员,尤其适合致力于SCI论文写作与算法创新的研究者。; 使用场景及目标:①用于理解鲸鱼优化算法的基本原理及多策略改进思路(如种群初始化、非线性收敛因子、精英反向学习等);②为智能优化算法的性能测试与对比实验提供CEC2017标准测试平台的实现参考;③支撑学术研究中的算法创新与论文复现工作。; 阅读建议:建议结合提供的Matlab代码进行实践操作,重点关注HHWOA的改进策略模块与WOA的差异,通过重复实验验证算法性能,并可将其思想迁移至其他优化算法的改进中,提升科研创新能力。
本资源库提供了赛灵思Zynq-7000系列全系可编程系统芯片的电子设计封装文件。文件格式为Altium Designer专用的集成库(IntLib),内含三维模型视图,并可解构为独立的原理图符号库(SchLib)与印制电路板封装库(PcbLib)。该库旨在为硬件工程师提供精确、完整的物理封装与逻辑符号参考,以加速基于此系列芯片的电路板设计流程。 库中包含的元器件总数为45个,涵盖了该系列多种关键型号。每个型号均详细定义了其核心规格,包括工作频率、处理系统与可编程逻辑单元的输入/输出引脚数量、球栅阵列封装类型、速度等级以及适用的温度范围(商业级、工业级或扩展级)。所有封装均符合无铅环保标准。 具体封装型号示例如下: - XC7Z010-1CLG400C:运行频率667兆赫兹,配备130个处理系统I/O与100个可编程逻辑I/O,采用400球BGA封装,属速度等级1的商业级产品。 - XC7Z010-1CLG400I:规格同上,但适用于工业级温度环境。 - XC7Z010-2CLG400E:频率提升至733兆赫兹,速度等级2,适用于扩展级温度范围。 - XC7Z010-2CLG400I:733兆赫兹频率,速度等级2的工业级型号。 - XC7Z010-3CLG400E:最高频率达800兆赫兹,速度等级3,适用于扩展级环境。 - XC7Z020-1CLG400C:667兆赫兹频率,提供130个PS I/O与125个FPGA I/O的400球BGA封装,商业级。 - XC7Z020-1CLG400I:上述规格的工业级版本。 - XC7Z020-1CLG484C:667兆赫兹频率,I/O配置为130个PS与200个FPGA,采用484球BGA封装,商业级。 - XC7Z020-1CLG484I:同上规格的工业级型号。 - XC7Z020-2CLG400E:频率733兆赫兹,速度等级2,I/O配置为130/125,400球BGA,扩展级。 - XC7Z020-2CLG400I:733兆赫兹的工业级版本。 - XC7Z020-2CLG484E:频率733兆赫兹,配备130个PS I/O与200个FPGA I/O的484球BGA封装,扩展级。 - XC7Z020-2CLG484I:同上规格的工业级型号。 - XC7Z020-3CLG400E:频率800兆赫兹,速度等级3,I/O配置为130/125,400球BGA封装,扩展级。 此封装库经过系统化整理,确保了型号参数描述的严谨性与一致性,为电路设计中的元器件选型与布局布线提供了可靠的底层数据支持。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
在 ArkTS 中,类的定义和实例化需要遵循特定的语法规范。根据类的定义,类名本身是一个类型标识符,不能直接作为变量进行赋值或重新分配[^3]。如果在实例化 `PushUrlUtils` 类时遇到报错 `Cannot assign to 'PushUrlUtils' because it is a class`,则说明代码中存在将类名作为变量进行赋值的操作。 以下是一个典型的错误写法: ```typescript let PushUrlUtils = new PushUrlUtils(); // 错误:Cannot assign to 'PushUrlUtils' because it is a class ``` 在上述代码中,`PushUrlUtils` 是一个类名,属于类型标识符。将类实例赋值给同名变量会导致语法错误,因为类名和变量名冲突,违反了 ArkTS 的命名规则[^3]。 ### 正确的实例化方式 在 ArkTS 中,类的实例化应使用 `new` 关键字,并将实例赋值给一个新的变量名,而不是类名本身。正确的写法如下: ```typescript class PushUrlUtils { // 类的字段和方法定义 public static buildUrl(base: string, params: Record<string, any>): string { const queryString = Object.entries(params) .map(([key, value]) => `${encodeURIComponent(key)}=${encodeURIComponent(value)}`) .join('&'); return `${base}?${queryString}`; } } // 正确的实例化方式 const pushUrlInstance = new PushUrlUtils(); ``` 如果 `PushUrlUtils` 是一个工具类,并且所有方法都声明为 `static`(如引用[2]中所述的 `MathUtils` 类),则不需要实例化,可以直接通过类名调用静态方法[^2]。例如: ```typescript console.log(PushUrlUtils.buildUrl("https://example.com", { id: 123 })); ``` ### 静态类与实例类的区别 如果 `PushUrlUtils` 中的方法不需要访问实例状态,建议将方法声明为 `static`,这样可以直接通过类名调用,而无需创建实例。静态方法适用于工具类、常量类等场景[^2]。例如: ```typescript class PushUrlUtils { public static buildUrl(base: string, params: Record<string, any>): string { const queryString = Object.entries(params) .map(([key, value]) => `${encodeURIComponent(key)}=${encodeURIComponent(value)}`) .join('&'); return `${base}?${queryString}`; } } ``` 在这种情况下,不需要实例化类,直接调用 `PushUrlUtils.buildUrl(...)` 即可。 ### 避免类名与变量名冲突 确保类名和变量名不冲突是避免此类错误的关键。类名通常采用大驼峰命名法(如 `PushUrlUtils`),而变量名则使用小驼峰命名法(如 `pushUrlUtils`)。这种命名方式不仅有助于区分类型和实例,还能提高代码的可读性。 ### 示例代码 以下是一个完整的示例,展示如何定义和实例化一个类: ```typescript class PushUrlUtils { private baseUrl: string; constructor(baseUrl: string) { this.baseUrl = baseUrl; } public getUrl(params: Record<string, any>): string { const queryString = Object.entries(params) .map(([key, value]) => `${encodeURIComponent(key)}=${encodeURIComponent(value)}`) .join('&'); return `${this.baseUrl}?${queryString}`; } } // 实例化类 const pushUrlInstance = new PushUrlUtils("https://example.com"); console.log(pushUrlInstance.getUrl({ id: 123, name: "test" })); ``` 在上述代码中,`PushUrlUtils` 是一个类,`pushUrlInstance` 是其实例。通过 `new` 关键字创建实例,并调用实例方法 `getUrl`。 ### 相关问题 1. 如何在 ArkTS 中实现类的继承和多态? 2. ArkTS 中静态方法和实例方法的区别是什么? 3. 如何避免在 ArkTS 中出现类名与变量名冲突的问题? 4. 在 ArkTS 中,如何通过类的构造函数传递参数并初始化对象? 5. 如果类的所有方法都是静态的,是否还需要实例化?
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值