前端代码记录

1.GridListItem中的布局

在这个Item中的布局采用的是VBox和HBox相结合的方式。相关的代码如下:

text="{ToolNumber}"

wrapping="true"

titleStyle="H5"

/>

text="{Status}"

colorScheme="{

path: 'Status',

formatter: '.formatter.getStatusColorScheme'

}"

/>

text="{Description}"

wrapping="true"

class="sapUiTinyMarginBottom"

/>

在这个布局中,首先采用了一个垂直的VBox做为一个整体的布局,然后再VBox中嵌套了一个HBox用于显示挂具号以及状态。 需要注意的是,因为默认情况下挂具号和挂具状态会左对齐,如果想要实现图片中的效果,需要给HBox添加一个对其的属性,让它里面的控件两端对齐。justifyContent="SpaceBetween"

2.GridList中的模式

GridList中有多种选择模式:

MultiSelect:多选SingleSelect:默认的单选按钮在右边SingleSelectLeft:单选按钮在左边SingleSelectMaster:不显示单选或者多选框Delete:删除None:无

需要注意的是:点击Item和点击Item上的单选或多选按钮触发不同的事件。如果点击单选或多选框,触发的是onSelectionChange,而如果点击这个item的其他位置,则触发的是onPress事件。 但是:如果模式为SingleSelectMaster,那么点击item的任意位置都会触发onSelectionChange,而onPress事件则不会在该模式下生效。

3.自定义Formatter的使用方法

从上面的项目截图中可以看到,针对Available和Occupied两种状态,info标签的颜色是不一样的。如何实现这一功能,就需要自定义格式化器。格式化器包含在js代码中。

前端代码如下:

text="{Status}"

colorScheme="{

path: 'Status',

formatter: '.formatter.getStatusColorScheme'

}"

/>

代码解释:前端代码中colorScheme属性需要接受一个整型数字,不同的数字代表不同的颜色。针对这一个属性,我们调用了一个格式化器。其中path为我们的输入参数,这个参数会传递到js代码中对应的函数中。formatter属性指定的就是我们要调用的js函数。

formatter: {

getStatusColorScheme: function (sStatus) {

// Check the value of Status and return the corresponding colorScheme

if (sStatus === "Available") {

return 7;

} else if (sStatus === "Occupied") {

return 3;

} else {

// Return a default value if none of the above conditions match

return "defaultColorScheme";

}

},

},

代码解释:在js代码中,我们接受前端传递过来的参数,根据前端传递过来的不同参数返回不同的值,这个返回的值就会直接赋值给colorScheme属性,从而根据不同的内容动态的改变不同颜色的标签。

4.常用的一些UI5的内部类

在布局过程中,通常会使用Margin或者Padding,UI5提供了一些内置的布局类,如:

sapUiTinyMarginBottom

其中Tiny还可以是Small,Large等参数 Bottom还可以是Top Begin End

5.数据绑定

在这个项目的代码中,用到了两个JSON模型,涉及到一些关于数据绑定的问题。JSON数据如下:

var oModel = new JSONModel({

ToolNumberCollection: [

{ ToolNumber: "RP0001", Description: "这是一个测试", Status: "Available", ToolGroup: "Tool Group NO.1" },

{ ToolNumber: "RP0002", Description: "这是一个测试", Status: "Available", ToolGroup: "Tool Group NO.1" },

{ ToolNumber: "RP0003", Description: "这是一个测试", Status: "Available", ToolGroup: "Tool Group NO.2" },

{ ToolNumber: "RP0004", Description: "这是一个测试", Status: "Occupied", ToolGroup: "Tool Group NO.1" },

{ ToolNumber: "RP0005", Description: "这是一个测试", Status: "Occupied", ToolGroup: "Tool Group NO.2" },

{ ToolNumber: "RP0006", Description: "这是一个测试", Status: "Occupied", ToolGroup: "Tool Group NO.1" },

{ ToolNumber: "RP0007", Description: "这是一个测试", Status: "Occupied", ToolGroup: "Tool Group NO.3" },

{ ToolNumber: "RP0008", Description: "这是一个测试", Status: "Occupied", ToolGroup: "Tool Group NO.3" },

{ ToolNumber: "RP0009", Description: "这是一个测试", Status: "Available", ToolGroup: "Tool Group NO.2" },

{ ToolNumber: "RP0010", Description: "这是一个测试", Status: "Available", ToolGroup: "Tool Group NO.2" },

{ ToolNumber: "RP0011", Description: "这是一个测试", Status: "Available", ToolGroup: "Tool Group NO.3" },

]

});

var orders = new JSONModel({

Orders: [

{ Type: "领头生产订单", OrderNumber: "1603212332", Description: "物料描述:机加工阀体 MFH-22-3-3", Rate: "挂具占比: 25%", precent: 25, Count: "45", Status: "Processing" },

{ Type: "可选生产订单", OrderNumber: "1603212331", Description: "物料描述:机加工阀体 MFH-22-3-3", Rate: "挂具占比: 87%", precent: 87, Count: "41", Status: "Available" },

{ Type: "可选生产订单", OrderNumber: "1603212333", Description: "物料描述:机加工阀体 MFH-22-3-3", Rate: "挂具占比: 57%", precent: 57, Count: "35", Status: "Available" },

{ Type: "可选生产订单", OrderNumber: "1603212331", Description: "物料描述:机加工阀体 MFH-22-3-3", Rate: "挂具占比: 54%", precent: 54, Count: "41", Status: "Available" },

{ Type: "可选生产订单", OrderNumber: "1603212333", Description: "物料描述:机加工阀体 MFH-22-3-3", Rate: "挂具占比: 25%", precent: 25, Count: "35", Status: "Available" },

{ Type: "可选生产订单", OrderNumber: "1603212331", Description: "物料描述:机加工阀体 MFH-22-3-3", Rate: "挂具占比: 32%", precent: 32, Count: "41", Status: "Available" },

{ Type: "可选生产订单", OrderNumber: "1603212333", Description: "物料描述:机加工阀体 MFH-22-3-3", Rate: "挂具占比: 56%", precent: 56, Count: "35", Status: "Available" },

{ Type: "可选生产订单", OrderNumber: "1603212331", Description: "物料描述:机加工阀体 MFH-22-3-3", Rate: "挂具占比: 43%", precent: 43, Count: "41", Status: "Available" },

{ Type: "可选生产订单", OrderNumber: "1603212333", Description: "物料描述:机加工阀体 MFH-22-3-3", Rate: "挂具占比: 54%", precent: 54, Count: "35", Status: "Available" },

]

});

this.getView().setModel(orders, "orders");

this.getView().setModel(oModel);

上面这个例子中创建了两个模型,并设置到了view中。在xml中我们要将这些模型绑定到对应的List中去。对于第一个模型,因为设置的时候没有设置名字,那么名字就为空this.getView().setModel(oModel)

那么在xml代码中应该采用下面的方式进行数据绑定

id="toolList2"

items="{

path: '/ToolNumberCollection',

sorter: {

path: 'ToolGroup',

group: true

},

}"

mode="SingleSelectMaster"

selectionChange="onselectionchange"

>"

需要注意path: '/ToolNumberCollection'

此外,我们要想访问模型对应的某一些字段的值,应该如下操作:

text="{Description}"

wrapping="true"

class="sapUiTinyMarginBottom"

/>

对于第二个模型,因为我们已经设置了它的名字this.getView().setModel(orders, "orders"),因此在xml中进行数据绑定的时候就需要写模型的名字,如下所示:

id="orderList3"

items="{orders>/Orders}"

growing="true"

growingThreshold="3"

itemPress=".onOrderItemPress"

>

关于items="{orders>/Orders}"的解释:这一行代码实际上绑定了orders对象的Orders数组,让orders成为一个遍历器,依次遍历Orders数组中的每一个元素。 如果用Java代码来说明的话。类似于:

for(Order order : orders) {

.....

}

其中items="{orders>/Orders}"中的orders就相当于Java代码中的order

6.Text和Label以及Title控件等文字控件

Label控件常用属性

text 用于设置Label的内容design 用于设置文字样式。只有两个选项Standard Bold Text控件常用属性

text 用于设置Label的内容 Title控件常用属性

text 用于设置Label的内容titleStyle 可以设置标题的层级,和HTML中的h1-h6保持一致。

上述的文字控件实际上对文字样式的调整非常有限,在某些情况下需要更加复杂的文字样式定义。比如在本项目中,我们想让数量单位PC的文字更细一些,采用上述的控件就不可以了。我们可以使用FormattedText控件。这个控件可以让你直接插入HTML代码,可以使用span标签实现对样式的控制。实现文字粗细的代码如下:

htmlText="<span style='font-weight:100; font-size:14px'>PC</span>"

width="24px"

textAlign="Right"

/>

需要注意的是,HTML代码中的标签的<这个符号需要转义,否则会报错

7.图标控件

默认情况下的图标颜色都是黑白的,有些情况下,可能会想要修改图标的颜色,可以使用color属性来控制颜色,支持似乎用RGB坐标。

size="2.7rem"

src="{

path: 'orders>Type',

formatter: '.formatter.getIconForType'

}"

class="sapUiSmallMarginBegin"

color="rgb(52,97,135)"

/>

8.进度条控件

在UI5中提供了进度条控件来显示事件的进度。该控件的主要属性有一下几个:

percentValue 实际的百分比 用于显示进度条的百分比displayValue 显示的百分比,在进度条上会以文字的方式显示百分比,这个属性控制显示的数值state状态,和ValueState,可以配合formatter实现不同的百分比显示不同颜色的进度条

percentValue="{orders>precent}"

displayValue="{orders>precent}%"

state="{path: 'orders>precent', formatter: '.formatter.getStateForPercentValue'}"

width="15%"

/>

9.获取自定义控件中绑定的数据

在这个项目中有这样一个需求,当点击提交按钮后,系统会从挂具List和订单List中找到所有的勾选的Item,然后获取到Item中的相关内容,例如挂具号,订单号,订单状态等信息。通常获取这种方式有两种。第一种就是一层一层的获取到对应的标签,然后在获取标签中的相关属性。例如获取挂具号:

下面是xml代码:

height="100%"

justifyContent="SpaceBetween"

>

growFactor="1"

shrinkFactor="0"

/>

text="{ToolNumber}"

wrapping="true"

titleStyle="H5"

/>

text="{Status}"

colorScheme="{

path: 'Status',

formatter: '.formatter.getStatusColorScheme'

}"

/>

text="{Description}"

wrapping="true"

class="sapUiTinyMarginBottom"

/>

从代码中可以看出结构如下:

</p><p><t:InfoLabel/></p><p></HBox></p><p><Label/></p><p></VBox></p><p></VBox></p><p>我们要获取到Title,所以需要使用selectedToolNumberItem.getContent()[0].getItems()[0].getItems()[0].getItems()[0].getText();来一层一层的访问到对应的Title标签,在使用getText()从标签中获取对应的Text属性的值。</p><p>上面的例子可以看出,这种方式是比较麻烦的,而且如果xml的结构比较复杂,那么采用获取标签的这种方法就非常乱了。</p><p>因此,针对这种情况,我们可以使用另一种方式,通过使用getBindingContext来实现。</p><p>var toolNumber = selectedToolNumberItem.getBindingContext().getProperty("ToolNumber");</p><p>这里,通过getBindingContext获取到当前选中的selectedToolNumberItem所对应的绑定的JSON模型,然后再通过getProperty("ToolNumber")获取到对应JSON模型的对应字段。采用这种方式使得我们不需要再去关心xml的结构问题,更加快速和方便的获取再一些自定义布局组件中相关组件的属性值。</p><p>同样的例子,在下面的这个例子中,由于我们采用了CustomListItem组件,并且里面的结构相对比较复杂,如果我们采用获取标签的方式,就会导致我们的代码非常复杂且易读性降低。</p><p><CustomListItem type="Active"></p><p><VBox</p><p>class="sapUiSmallMarginBegin sapUiSmallMarginTopBottom sapUiTinyMarginBottom"</p><p>></p><p><Label</p><p>text="{orders>Type}"</p><p>design="Bold"</p><p>wrapping="true"</p><p>/></p><p></VBox></p><p><HBox justifyContent="SpaceBetween"></p><p><HBox></p><p><core:Icon</p><p>size="2.7rem"</p><p>src="{</p><p>path: 'orders>Type',</p><p>formatter: '.formatter.getIconForType'</p><p>}"</p><p>class="sapUiSmallMarginBegin"</p><p>color="rgb(52,97,135)"</p><p>/></p><p><VBox</p><p>class="sapUiSmallMarginBegin sapUiTinyMarginTop"</p><p>></p><p><Title</p><p>text="{orders>OrderNumber}"</p><p>class="sapUiTinyMarginTop"</p><p>titleStyle="H4"</p><p>wrapping="true"</p><p>/></p><p></VBox></p><p></HBox></p><p><VBox class="sapUiSmallMarginEnd"></p><p><Title</p><p>text="{orders>Count}"</p><p>titleStyle="H2"</p><p>wrapping="true"</p><p>/></p><p><FormattedText</p><p>htmlText="<span style='font-weight:100; font-size:14px'>PC</span>"</p><p>width="24px"</p><p>textAlign="Right"</p><p>/></p><p></VBox></p><p></HBox></p><p><VBox class="sapUiSmallMarginBegin sapUiTinyMarginTop"></p><p><HBox justifyContent="SpaceBetween"></p><p><Label</p><p>text="{orders>Description}"</p><p>wrapping="true"</p><p>/></p><p><t:InfoLabel</p><p>text="{orders>Status}"</p><p>colorScheme="{</p><p>parts: ['orders>Status'],</p><p>formatter: '.formatter.getStatusState'</p><p>}"</p><p>icon="{</p><p>parts: ['orders>Status'],</p><p>formatter: '.formatter.getIconForOrder'</p><p>}"</p><p>class="sapUiSmallMarginEnd"</p><p>/></p><p></HBox></p><p><HBox</p><p>justifyContent="SpaceBetween"</p><p>class="sapUiSmallTinyTop"</p><p>></p><p><Label</p><p>text="{orders>Rate}"</p><p>wrapping="true"</p><p>/></p><p><Label</p><p>text="Storage Location"</p><p>class="sapUiSmallMarginEnd"</p><p>design="Bold"</p><p>wrapping="true"</p><p>/></p><p></HBox></p><p><ProgressIndicator</p><p>percentValue="{orders>precent}"</p><p>displayValue="{orders>precent}%"</p><p>state="{path: 'orders>precent', formatter: '.formatter.getStateForPercentValue'}"</p><p>width="15%"</p><p>/></p><p></VBox></p><p></CustomListItem></p><p>在上面的xml中如果我们想获取到订单号,采用获取标签的方式是不现实的,因此还是需要使用getBindingContext方法来实现,下面是对应的代码。</p><p>var oContext = selectedListItems[i].getBindingContext("orders");</p><p>var sOrderNumber = oContext.getProperty("OrderNumber");</p><p>相关链接</p><div class="ly_isview_code_1"><div class="ly_isview_codea" data-id="18000801"><span><a href="https://www.51969.com/zb_system/login.php" target="_blank">评论可见</a>,请评论后查看内容,谢谢!!!</span></div></div><!-- 统计访客停留时间 --><div id="tingliu" style="background-color:#FFFFFF;border:1px dashed #FF0000;text-align:center;display:block;"><span class="tingliu2 hint--top hint--bounce"><a href="##read_time"><img src="https://www.51969.com/zb_users/plugin/zharry_Reading_time/images/tishi.gif" class="tingliu5" ></a></span>  <span class="tingliu2">您阅读本篇文章共花了:</span> <span class="tingliu3" id="stime"></span> </div></br><!-- 统计访客停留时间结束 --><script language="JavaScript">var ss=0,mm=0,hh=0;function TimeGo(){ss++;if(ss>=60){mm+=1;ss=0}if(mm>=60){hh+=1;mm=0}ss_str=(ss<10?"0"+ss:ss);mm_str=(mm<10?"0"+mm:mm);tMsg=""+hh+"小时"+mm_str+"分"+ss_str+"秒";document.getElementById("stime").innerHTML=tMsg;setTimeout("TimeGo()",1000)}TimeGo();</script> </div> <div class="tags"> <a href="https://www.51969.com/tags/ui/" target="_blank">ui</a><a href="https://www.51969.com/tags/%E5%89%8D%E7%AB%AF/" target="_blank">前端</a><a href="https://www.51969.com/tags/SAPUI5/" target="_blank">SAPUI5</a> </div> <div class="copyright"><blockquote>本文由 用户 于 2024-03-08 发布在 金钥匙,如有疑问,请联系我们。<br>本文链接:<a href="https://www.51969.com/post/18000801.html">https://www.51969.com/post/18000801.html</a></blockquote></div> <div class="single-share"> <div class="post-share"> <a title="分享"><i class="jzicon-jzfenxiang"></i></a> <div class="share-icons share-sns" data-title="SAPUI5 【项目6 UI Demo】前端代码记录" data-url="https://www.51969.com/post/18000801.html"> <span class="share-icon share-wechat cl" data-type="wechat" title="分享到微信"><i class="jzicon-weixin"></i><span id="wechat-qrcode"></span></span> <span class="share-icon share-sina-weibo cl" data-type="weibo" title="分享到微博"><i class="jzicon-weibo"></i></span><span class="share-icon share-qq cl" data-type="qq" title="分享到QQ好友"><i class="jzicon-qq"></i></span> </div> </div> <div class="post-like"> <a href="javascript:;" onclick="Jz52_tsqa_prise('18000801')" class="Jz52_tsqa_prise_id-18000801 dotGood Jz52_tsqa_prise badge" title="好文!一定要点赞!" data-badge="0"><i class="jzicon-jzzan-h"></i><em class="emz">0</em><em>赞</em></a><a href="javascript:;" class="comiis_poster_a single_icon bill_icon" title="文章海报"><i class="jzicon-jzimg"></i></a> </div></div> </div> <div class="nextpro www_51969_com"> <div class="prev"> <article class="post-overlay"> <div class="background-img" style="background-image:url(https://www.51969.com/zb_users/theme/Jz52_tsqa/style/images/prevnoimg.jpg)"> </div> <div class="post_text"> <span><i class="jzicon-angle-left"></i>上一篇</span> <h3 class="post__title typescale-1 nav-prev">ui Android与EPS8266模块通信(一)编写Android客户端</h3> </div> <a href="https://www.51969.com/post/18000800.html" class="link-overlay"></a> </article> </div> <div class="next"> <article class="post-overlay"> <div class="background-img" style="background-image:url(https://www.51969.com/zb_users/theme/Jz52_tsqa/style/images/nextnoimg.jpg)"> </div> <div class="post_text"> <span>下一篇<i class="jzicon-angle-right"></i></span> <h3 class="post__title typescale-1 nav-next">测试工具 软件测试 程序人生 自动化测试 Selenium上传文件有多少种方式?不信你有我全</h3> </div> <a href="https://www.51969.com/post/18000802.html" class="link-overlay"></a> </article> </div> </div> <div class="related-list www_51969_com"> <h3><i class="jzicon-jztuwen"></i> 相关文章</h3> <ul> <li><a href="https://www.51969.com/post/18877692.html" title="前端 javascript 富文本编辑器(wangEdit)+(jquery.wordexport)实现web版在线编辑导出"><p>前端 javascript 富文本编辑器(wangEdit)+(jquery.wordexport)实现web版在线编辑导出</p></a> </li> <li><a href="https://www.51969.com/post/18877664.html" title="javascript 前端 jquery操作DOM对象"><p>javascript 前端 jquery操作DOM对象</p></a> </li> <li><a href="https://www.51969.com/post/18877671.html" title="前端 javascript jQuery select获取选中的值资料记录,自我突破"><p>前端 javascript jQuery select获取选中的值资料记录,自我突破</p></a> </li> <li><a href="https://www.51969.com/post/18877650.html" title="柚子快报激活码778899分享:"><p>柚子快报激活码778899分享:</p></a> </li> <li><a href="https://www.51969.com/post/18877370.html" title="前端 javascript vue.js git的基础操作篇"><p>前端 javascript vue.js git的基础操作篇</p></a> </li> <li><a href="https://www.51969.com/post/18877195.html" title="前端 node.js pnpm : 无法加载文件 C:\Program Files\nodejs\pnpm.ps1,因为在此系统上禁止运行脚本。"><p>前端 node.js pnpm : 无法加载文件 C:\Program Files\nodejs\pnpm.ps1,因为在此系统上禁止运行脚本。</p></a> </li> <li><a href="https://www.51969.com/post/18877699.html" title="前端 jQuery入门到精通学习教程,收藏我这篇就够了"><p>前端 jQuery入门到精通学习教程,收藏我这篇就够了</p></a> </li> <li><a href="https://www.51969.com/post/18877678.html" title="前端 html5 Web网页设计:html+css+javascript+jquery制作北京景点介绍7页 WEB静态旅游景点区主题网页设计与制作"><p>前端 html5 Web网页设计:html+css+javascript+jquery制作北京景点介绍7页 WEB静态旅游景点区主题网页设计与制作</p></a> </li> </ul> </div> <div class="comments www_51969_com"> <div id="comments" class="comments-area clearfix"> <div class="comment-list"><!--评论框--><div class="jz-comment" id="divCommentPost"><h4 class="comments-title"> <span><i class="jzicon-jzqipaoc"></i>发表评论</span><a rel="nofollow" id="cancel-reply" href="#divCommentPost" style="display:none;float:right;"><small>取消回复</small></a></h4> <form id="frmSumbit" target="_self" method="post" action="https://www.51969.com/zb_system/cmd.php?act=cmt&postid=18000801&key=1dfaf3eafe211068aff8e244dd044301" ><input type="hidden" name="inpId" id="inpId" value="18000801"><input type="hidden" name="inpRevID" id="inpRevID" value="0"><div class="jz-comment-box jz-comment-ul3"> <input type="text" name="inpName" id="inpName" class="text" value="" size="28" tabindex="1" placeholder="名称(*)"> </div> <div class="jz-comment-box jz-comment-ul3 jz-comment-ul3-2"> <input type="text" name="inpEmail" id="inpEmail" class="text" value="" size="28" tabindex="2" placeholder="邮箱"> </div> <div class="jz-comment-box jz-comment-ul3"> <input type="text" name="inpHomePage" id="inpHomePage" class="text" value="" size="28" tabindex="3" placeholder="网站"> </div><div class="jz-comment-box jz-comment-textarea"> <textarea name="txaArticle" id="txaArticle" class="text" cols="50" rows="4" tabindex="5" placeholder="欢迎在这里交流评论,但是垃圾评论不受欢迎!"></textarea> </div><input name="sumbit" type="submit" tabindex="6" value="发表评论" onclick="return zbp.comment.post()" class="jz-commbut"> </form></div><label id="AjaxCommentBegin"></label><!--评论输出--><!--评论翻页条输出--><div class="pagelist page-comment"> </div><label id="AjaxCommentEnd"></label></div> </div></div> </div> </div> <aside id="sticky-wrapper"><div> <span class="ifread"><a href="javascript:;" onclick="Jz52_tsqa_prise('18000801')" class="Jz52_tsqa_prise_id-18000801 dotGood Jz52_tsqa_prise badge" title="好文!一定要点赞!" data-badge="0"><i class="jzicon-jzzan-h"></i><em class="emz">0</em><em>赞</em></a></span><span class="ifread"><a title="回复" href="#divCommentPost" class="badge" data-badge="0"><i class="jzicon-message-3-fill"></i></a></span><span class="ifread"><a title="热度" href="#" class="badge" data-badge="17"><i class="jzicon-fire-fill"></i></a></span><span class="ifread Cshare"><a title="分享" href="javascript:;" class=""><i class="jzicon-share-forward-fill"></i></a> <em class="share-sns" data-title="SAPUI5 【项目6 UI Demo】前端代码记录" data-url="https://www.51969.com/post/18000801.html"> <span class="cl" data-type="wechatl" title="分享到微信"><a title="分享到微信" href="#" class="bds_weixin" ><i class="jzicon-weixin"></i>微信<span id="wechat-qrcodel"></span></a></span><span class="cl" data-type="weibo" title="分享到微博"><a title="分享到新浪微博" href="#" class="bds_tsina" ><i class="jzicon-weibo"></i>新浪微博</a></span><span class="cl" data-type="qzone" title="分享到QQ空间"><a title="分享到QQ空间" href="#" class="bds_qzone" ><i class="jzicon-qzone"></i>QQ空间</a></span><span class="cl" data-type="qq" title="分享到QQ好友"><a title="分享到QQ好友" href="#" class="bds_qq" ><i class="jzicon-qq"></i>QQ</a></span> </em></span><span style="margin-top: 30px;"><a href="javascript:;" title="沉浸阅读" class="goread"><i class="jzicon-book-read-fill"></i></a></span></div></aside> <aside id="sidebar-right"><div class="widget ifread" id="side-new-userarticle"><h3 class="function_t">TA的新帖</h3><ul><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"><a class="list-title" href="https://www.51969.com/post/18881493.html" target="_blank" title="音视频 人工智能 单片机 Days 24 Elfboard 读取摄像头视频进行目标检测">音视频 人工智能 单片机 Days 24 Elfboard 读取摄像头视频进行目标检测</a></div><div class="list-footer"><span>2024-05-16</span></div></div><div class="clear"></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"><a class="list-title" href="https://www.51969.com/post/18872645.html" target="_blank" title="ubuntu服务器部署gitlab docker并配置nginx反向代理https访问">ubuntu服务器部署gitlab docker并配置nginx反向代理https访问</a></div><div class="list-footer"><span>2024-05-14</span></div></div><div class="clear"></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"><a class="list-title" href="https://www.51969.com/post/18871476.html" target="_blank" title="hadoop 大数据 bigdata 分布式 13、HDFS Snapshot快照">hadoop 大数据 bigdata 分布式 13、HDFS Snapshot快照</a></div><div class="list-footer"><span>2024-05-13</span></div></div><div class="clear"></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"><a class="list-title" href="https://www.51969.com/post/18694467.html" target="_blank" title="人工智能 机器学习 Carla自动驾驶仿真七:CARLA&SUMO真实世界交通流仿真">人工智能 机器学习 Carla自动驾驶仿真七:CARLA&SUMO真实世界交通流仿真</a></div><div class="list-footer"><span>2024-05-13</span></div></div><div class="clear"></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"><a class="list-title" href="https://www.51969.com/post/18462361.html" target="_blank" title="java-rabbitmq spring boot java 后端 中间件 【RabbitMQ | 第三篇】Springboot整合RabbiMQ">java-rabbitmq spring boot java 后端 中间件 【RabbitMQ | 第三篇】Springboot整合RabbiMQ</a></div><div class="list-footer"><span>2024-05-12</span></div></div><div class="clear"></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"><a class="list-title" href="https://www.51969.com/post/18862579.html" target="_blank" title="scrapy question aside and looks at things from a different angle: by switching over to polar coordinates">scrapy question aside and looks at things from a different angle: by switching over to polar coordinates</a></div><div class="list-footer"><span>2024-05-11</span></div></div><div class="clear"></div></li></ul></div><div id="directory"></div><div class="widget ifread www_51969_com" id="divSearchPanel"><h3 class="function_t">搜索</h3><div><form name="search" method="post" action="https://www.51969.com/zb_system/cmd.php?act=search"><input type="text" name="q" size="11" /> <input type="submit" value="搜索" /></form></div></div><div class="widget ifread www_51969_com" id="side-hot-view-item"><h3 class="function_t">热门文章</h3><ul><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/157989.html" target="_blank" title="测试工具 web安全 网络安全 安全 网络 BurpSuite超详细安装教程-功能概述-配置-使用教程---(附下载链接)">测试工具 web安全 网络安全 安全 网络 BurpSuite超详细安装教程-功能概述-配置-使用教程---(附下载链接)</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/18001500.html" target="_blank" title="测试工具 【抓包工具】win 10 / win 11:WireShark 下载、安装、使用">测试工具 【抓包工具】win 10 / win 11:WireShark 下载、安装、使用</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/18137182.html" target="_blank" title="网络 java 详解WebSocket">网络 java 详解WebSocket</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/18870034.html" target="_blank" title="运维 服务器 Linux OpenSSH最新版9.7p1升级操作详细教程">运维 服务器 Linux OpenSSH最新版9.7p1升级操作详细教程</a> </div><div class="list-footer"> <span>2024-05-15</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/13760144.html" target="_blank" title="网络安全 学习 AI编程 copilot 【网安AIGC专题】46篇前沿代码大模型论文、24篇论文阅读笔记汇总">网络安全 学习 AI编程 copilot 【网安AIGC专题】46篇前沿代码大模型论文、24篇论文阅读笔记汇总</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/157389.html" target="_blank" title="python pycharm Selenium安装WebDriver最新Chrome驱动(含116/117/118/119)">python pycharm Selenium安装WebDriver最新Chrome驱动(含116/117/118/119)</a> </div><div class="list-footer"> <span>2024-05-15</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/157861.html" target="_blank" title="ide 编辑器 VSCode 安装教程(超详细)">ide 编辑器 VSCode 安装教程(超详细)</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/18796534.html" target="_blank" title="intellij-idea IDEA 2024 配置 Maven 创建 Spring Boot 项目">intellij-idea IDEA 2024 配置 Maven 创建 Spring Boot 项目</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/157460.html" target="_blank" title="前端已死?探讨人工智能与低代码对前端的影响">前端已死?探讨人工智能与低代码对前端的影响</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/15781155.html" target="_blank" title="vue.js react.js javascript 开发语言 前端(二十七)——封装指南:Axios接口、常用功能、Vue和React中的封装技术">vue.js react.js javascript 开发语言 前端(二十七)——封装指南:Axios接口、常用功能、Vue和React中的封装技术</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/18767330.html" target="_blank" title="Ubuntu系统使用Docker本地部署Android模拟器并实现公网访问">Ubuntu系统使用Docker本地部署Android模拟器并实现公网访问</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/18851883.html" target="_blank" title="mybatis-plus mybatisPlus动态sql语句 ${ew.sqlSegment}详解">mybatis-plus mybatisPlus动态sql语句 ${ew.sqlSegment}详解</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/15779957.html" target="_blank" title="文心一言API使用教程(python版)">文心一言API使用教程(python版)</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/17825034.html" target="_blank" title="python 【数据分析之道-Matplotlib(五)】Matplotlib柱状图">python 【数据分析之道-Matplotlib(五)】Matplotlib柱状图</a> </div><div class="list-footer"> <span>2024-05-15</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/15780387.html" target="_blank" title="深度学习 人工智能 神经网络 GRU实现时间序列预测(PyTorch版)">深度学习 人工智能 神经网络 GRU实现时间序列预测(PyTorch版)</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/15788808.html" target="_blank" title="python selenium 【笔记】chromedriver下载与安装方法">python selenium 【笔记】chromedriver下载与安装方法</a> </div><div class="list-footer"> <span>2024-05-15</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/17833904.html" target="_blank" title="Teigha 基于开源库libreDWG+Java实现AutoCad格式DWG转DXF">Teigha 基于开源库libreDWG+Java实现AutoCad格式DWG转DXF</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/158252.html" target="_blank" title="python 前端 自动化 Selenium安装WebDriver:ChromeDriver谷歌浏览器驱动下载安装与使用最新版116/117/118/119/120/121/122/123">python 前端 自动化 Selenium安装WebDriver:ChromeDriver谷歌浏览器驱动下载安装与使用最新版116/117/118/119/120/121/122/123</a> </div><div class="list-footer"> <span>2024-05-15</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/15782357.html" target="_blank" title="深度学习 目标检测 计算机视觉 yolov8 opencv模型部署(C++版)">深度学习 目标检测 计算机视觉 yolov8 opencv模型部署(C++版)</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/13767788.html" target="_blank" title="人工智能 OpenCV实战(33)——OpenCV与深度学习的碰撞">人工智能 OpenCV实战(33)——OpenCV与深度学习的碰撞</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/15768876.html" target="_blank" title="AIGC 人工智能 chatgpt 五个可以无限免费的AI写作工具">AIGC 人工智能 chatgpt 五个可以无限免费的AI写作工具</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/15790426.html" target="_blank" title="云数据仓库实践:AWS Redshift在大数据储存分析上的落地经验分享">云数据仓库实践:AWS Redshift在大数据储存分析上的落地经验分享</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/158065.html" target="_blank" title="python 测试工具 安装selenium(超级详细)">python 测试工具 安装selenium(超级详细)</a> </div><div class="list-footer"> <span>2024-05-15</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/15789162.html" target="_blank" title="测试工具 安全 人工智能 机器学习 wireshark抓包分析HTTP协议,HTTP协议执行流程,">测试工具 安全 人工智能 机器学习 wireshark抓包分析HTTP协议,HTTP协议执行流程,</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/15790052.html" target="_blank" title="java ide eclipse下载与安装(汉化教程)超详细">java ide eclipse下载与安装(汉化教程)超详细</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/15788803.html" target="_blank" title="安全dns dns 关闭Clash后Chrome或者Edge浏览器无法联网,只有打开clash才可以">安全dns dns 关闭Clash后Chrome或者Edge浏览器无法联网,只有打开clash才可以</a> </div><div class="list-footer"> <span>2024-05-15</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/15781845.html" target="_blank" title="java spring boot spring 【MyBatis-Plus】MyBatis进阶使用">java spring boot spring 【MyBatis-Plus】MyBatis进阶使用</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/157452.html" target="_blank" title="AI作画 《硅基物语.我是灵魂画手》一本书讲透AI绘画,AIC松鼠活动第六期">AI作画 《硅基物语.我是灵魂画手》一本书讲透AI绘画,AIC松鼠活动第六期</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/13767904.html" target="_blank" title="AIGC 大语言模型 prompt模板库 百度智能云:千帆大模型平台接入Llama 2等33个大模型,上线103个Prompt模板">AIGC 大语言模型 prompt模板库 百度智能云:千帆大模型平台接入Llama 2等33个大模型,上线103个Prompt模板</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li><li class="widget-list-item"><div class="widget-post-list-item"><div class="list-body"> <a class="list-title" href="https://www.51969.com/post/17818621.html" target="_blank" title="ios SwiftUI 文本框TextField添加清除按钮">ios SwiftUI 文本框TextField添加清除按钮</a> </div><div class="list-footer"> <span>2024-05-16</span> </div></div></li></ul></div><div class="widget ifread www_51969_com" id="side-new-comment-item"><h3 class="function_t">最新评论</h3><ul><li><a href="https://www.51969.com/post/18755339.html#cmt1583" title="马云在macos iMazing 2.17.16 for Mac 破解版 数据传输软件的评论"><img alt="马云" src="https://www.51969.com/zb_users/avatar/0.png" class="avatar" height="24" width="24"><p>十分感谢,下载看看</p><span>2024-05-16</span></a></li><li><a href="https://www.51969.com/post/18841131.html#cmt1569" title="终柔怀在python 数据分析第五章课后实训--应用Matplotlib、seaborn、pyecharts库可视化分析(答案到任务三)的评论"><img alt="终柔怀" src="https://www.51969.com/zb_users/avatar/0.png" class="avatar" height="24" width="24"><p>厉害</p><span>2024-05-15</span></a></li><li><a href="https://www.51969.com/post/18851694.html#cmt1562" title="澹台静莹在 柚子快报邀请码778899分享:日挣30元的微信小兼职的评论"><img alt="澹台静莹" src="https://www.51969.com/zb_users/avatar/0.png" class="avatar" height="24" width="24"><p>谢谢。</p><span>2024-05-15</span></a></li><li><a href="https://www.51969.com/post/18851694.html#cmt1555" title="澹台静莹在 柚子快报邀请码778899分享:日挣30元的微信小兼职的评论"><img alt="澹台静莹" src="https://www.51969.com/zb_users/avatar/0.png" class="avatar" height="24" width="24"><p>好东西</p><span>2024-05-15</span></a></li><li><a href="https://www.51969.com/post/18851694.html#cmt1548" title="邰东航在 柚子快报邀请码778899分享:日挣30元的微信小兼职的评论"><img alt="邰东航" src="https://www.51969.com/zb_users/avatar/0.png" class="avatar" height="24" width="24"><p>好</p><span>2024-05-14</span></a></li><li><a href="https://www.51969.com/post/18851694.html#cmt1534" title="华如意在 柚子快报邀请码778899分享:日挣30元的微信小兼职的评论"><img alt="华如意" src="https://www.51969.com/zb_users/avatar/0.png" class="avatar" height="24" width="24"><p>柚子快报邀请码778899注册了柚子快报,谢谢</p><span>2024-05-14</span></a></li></ul></div></aside> </div><script>var billmE = new Array("","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Spt","Oct","Nov","Dec"); var billhost = "https://www.51969.com/",billtxt1 = "老司机,路子野,随时超车",billtxt2 = "POWERED: Z-BLOGPHP THEMES: YEELZ",billurl = "https://www.51969.com/post/18000801.html",billtag = "产品设计",billtitle = "SAPUI5 【项目6 UI Demo】前端代码记录",billcont = "前端代码记录 1.GridListItem中的布局 在这个Item中的布局采用的是VBox和HBox相结合的方式。相关的代码如下...",billimg = "https://www.51969.com/zb_users/plugin/zharry_Reading_time/images/tishi.gif",billlogo = "https://www.51969.com/zb_users/theme/Jz52_tsqa/bill/logo.png",billd = "08",billY = "2024",billm = billmE[parseInt("3")]; var hbtim = '<div class="img_time">'+billd+'<span>'+billm+'. '+billY+'</span></div>';</script><link href="https://www.51969.com/zb_users/theme/Jz52_tsqa/bill/bill.css" media="all" rel="stylesheet"><script src="https://www.51969.com/zb_users/theme/Jz52_tsqa/bill/html2canvas.min.js"></script><script src="https://www.51969.com/zb_users/theme/Jz52_tsqa/bill/bill.js"></script><script src="https://www.51969.com/zb_users/theme/Jz52_tsqa/bill/billgo.js"></script><script src="https://www.51969.com/zb_users/theme/Jz52_tsqa/script/asid.js"></script> <div id="footer"> <p><div><a href="https://www.51969.com/" target="_blank">金钥匙</a> | <a href="https://www.51969.com/sitemap/map.xml" target="_blank">网站地图</a> | <a href="http://ai.51969.com/" target="_blank">金钥匙ai</a> | <a href="http://yzkb.51969.com/" target="_blank">柚子快报</a> | <a href="https://www.51969.com/user/51969561/" target="_blank">柚子快报教程</a> | <a href="http://yzkbyqm.51969.com/" target="_blank">柚子快报邀请码</a> | <a href="http://yzkbjhm.51969.com/" target="_blank">柚子快报激活码</a></div><div>本站部分信息来自互联网收集,仅供学习和交流,如有侵权、后门、不妥之处,请联系我们进行删除处理。 </div><script charset="UTF-8" id="kuazhi_ai_click" src="https://kuazhi.com/kuazhi_ai_click.js"></script><div>金钥匙www.51969.com.2009-2024 All Rights Reserved.</div><script charset="UTF-8" id="LA_COLLECT" src="//sdk.51.la/js-sdk-pro.min.js"></script><script>LA.init({id:"JsGTT7LZ90ZlKYPn",ck:"JsGTT7LZ90ZlKYPn"})</script> <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">浙ICP备15009899号-2</a></p></p> </div></div></div><a href="javascript:void(0);" class="to-top" id="to-top"><i class="jzicon-jzzhiding"></i><em>返回顶部</em></a><a class="jznight" href="javascript:switchNightMode()" target="_self"><i class="jzicon-yejian-b"></i><em>暗黑模式</em></a><script src="https://www.51969.com/zb_users/theme/Jz52_tsqa/script/custom.js?v1.0.9"></script><script src="https://www.51969.com/zb_users/theme/Jz52_tsqa/script/qrcode.min.js"></script><script src="https://www.51969.com/zb_users/plugin/gbll_rollname/names.js"></script><script src="https://www.51969.com/zb_users/plugin/gbll_rollname/roll.js"></script><script src="https://www.51969.com/zb_users/theme/Jz52_tsqa/script/sticky-left.js"></script><script src="https://www.51969.com/zb_users/theme/Jz52_tsqa/script/sidebar-right.js"></script><div id="ly_cache" data-id="18000801"></div></body></html><!--ly_cache 2024-05-17 03:50:02-->