当前位置: 首页 > news >正文

网页设计购物网站建设物流软件开发工具

网页设计购物网站建设,物流软件开发工具,品牌网站建设 蝌4蚪小,百度官网电话WPF 实现冒泡排序可视化 实现冒泡排序代码就不过多讲解#xff0c;主要是实现动画效果思路#xff0c;本demo使用MVVM模式编写#xff0c;读者可自行参考部分核心代码#xff0c;即可实现如视频所示效果。 对于新手了解算法相关知识应该有些许帮助#xff0c;至于其它类型… WPF 实现冒泡排序可视化 实现冒泡排序代码就不过多讲解主要是实现动画效果思路本demo使用MVVM模式编写读者可自行参考部分核心代码即可实现如视频所示效果。 对于新手了解算法相关知识应该有些许帮助至于其它类型排序也可按该思路自行修改实现。 直接上代码页面布局.xaml代码如下 UserControl x:ClassWpf_MetroListBox.Views.Test.CanvasLabelMovexmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentationxmlns:xhttp://schemas.microsoft.com/winfx/2006/xamlxmlns:mchttp://schemas.openxmlformats.org/markup-compatibility/2006 xmlns:dhttp://schemas.microsoft.com/expression/blend/2008 xmlns:localclr-namespace:Wpf_MetroListBox.Views.Testmc:Ignorabled d:DesignHeight450 d:DesignWidth800GridGrid.RowDefinitionsRowDefinition Height380/RowDefinitionRowDefinition Height*/RowDefinition/Grid.RowDefinitionsCanvas x:Namecanvas Grid.Row0 BackgroundWhite/CanvasGrid Grid.Row1Grid.ColumnDefinitionsColumnDefinition/ColumnDefinitionColumnDefinition/ColumnDefinition/Grid.ColumnDefinitionsButton Content创建序列 HorizontalAlignmentCenter Grid.Column0 Width70 Height35 Command{Binding CommitCommand} Style{DynamicResource btn-info-m}/ButtonButton Content执行排序 HorizontalAlignmentCenter Grid.Column1 Width70 Height35 Command{Binding QueryCommand} Style{DynamicResource btn-info-m}/Button/Grid/Grid/UserControl 逻辑代码实现如下 public partial class CanvasLabelMove : UserControl{CanvasLabelMoveViewModel vm;private Random random new Random();private ListLabel labels new ListLabel();private int[] array;private int delay 1000; // 动画延迟时间毫秒public CanvasLabelMove(){InitializeComponent();vm new CanvasLabelMoveViewModel();this.DataContext vm;this.Publish(EventNames.MainWindowLoadControlEvent, 排序可视化);this.Subscriberstring(EventNames.DataGridFocusChangedEvent, async contentStr { if (contentStr.Equals(1)){InitializeArrayAndLabels();}else if (contentStr.Equals(2)){StartBubbleSortAnimation();}});}private void InitializeArrayAndLabels(){int size 18; // 数组大小 控制标签个数array new int[size];labels.Clear();canvas.Children.Clear();HashSetint randomNumbers new HashSetint();Random random new Random();//生成不重复随机数while (randomNumbers.Count size){int nextNumber random.Next(22, 200);randomNumbers.Add(nextNumber);}int j 0;foreach (int number in randomNumbers){array[j] number;j;}for (int i 0; i size; i){Label label new Label{Content array[i].ToString(),FontSize 12,Width 35,Height array[i],Margin new Thickness(50, 0, 0, 0),Foreground Brushes.Black,Background Brushes.BlanchedAlmond,VerticalContentAlignment VerticalAlignment.Center,HorizontalContentAlignment HorizontalAlignment.Center}; Canvas.SetLeft(label, i * 50); // 设置Label的X坐标Canvas.SetBottom(label, (canvas.ActualHeight / 2) - 100); // 设置Label的Y坐标在中间canvas.Children.Add(label);labels.Add(label);}}private async void StartBubbleSortAnimation(){for (int j 0; j array.Length - 1; j){for (int i 0; i array.Length - 2; i){if (array[i] array[i 1]){Swap(i, i 1);// 更新Label位置AnimateSwap(i, i 1);await Task.Delay(delay);}}}}private void Swap(int i, int j){int temp array[i];array[i] array[j];array[j] temp;}private async void AnimateSwap(int i, int j){// 临时存储Label的位置double label1X Canvas.GetLeft(labels[i]);double label2X Canvas.GetLeft(labels[j]);await Task.Delay(delay / 10); // 控制动画速度var animation1 new DoubleAnimation(label2X, TimeSpan.FromSeconds(0.5));var animation2 new DoubleAnimation(label1X, TimeSpan.FromSeconds(0.5));labels[i].BeginAnimation(Canvas.LeftProperty, animation1);labels[j].BeginAnimation(Canvas.LeftProperty, animation2);// 最终位置//Canvas.SetLeft(labels[i], label2X);//Canvas.SetLeft(labels[j], label1X);Label tempLabel labels[i];labels[i] labels[j];labels[j] tempLabel;}}public class CanvasLabelMoveViewModel : BaseValidViewModel{public CanvasLabelMoveViewModel(){}protected override void ExecuteCommitCommand(){this.Publish(EventNames.DataGridFocusChangedEvent, 1);}protected override void ExecuteQueryCommand(){this.Publish(EventNames.DataGridFocusChangedEvent, 2);}}
http://www.hkea.cn/news/14283459/

相关文章:

  • 兰州网站建设招聘搭建网站要不要给域名对方
  • 网站域名实名制江阴网站建设推广
  • 高校网站建设资料库app营销策略模板
  • 做网站设计怎么提升品牌建设部门职责
  • 河南建设信息网站织梦发布文章wordpress
  • 成都建站优化公司泰安网络网站
  • 网站开发技术构架网页制作培训班厦门
  • 江苏企业网站排名优化做网站用哪种代码比较好推广
  • 做网站教程如乐做系统网站建设
  • 免费不收费用网站网络认证
  • 建设英语网站小学校园门户网站建设方案
  • 中小企业建站排名企业门户模板
  • 安庆做网站哪个公司好推广类软文案例
  • 风铃网站代做企业网站展示生产的处方药介绍处罚案件
  • 做移动网站首页软百事可乐网络营销推广方法
  • 医美技术支持东莞网站建设无忧中英繁企业网站系统通用版
  • 美发网站模板好看的免费的小说网站模板
  • 网站构建设计思路地推扫码平台
  • wordpress 多域名301重定向代码seo内部优化具体做什么
  • 南宁市住房城乡建设厅网站推广代运营公司
  • 做网站需要哪些人手金华市住房和城乡建设局网站
  • wordpress卡密网站源码wordpress同步到
  • 网站空间如何使用福州关键词排名软件
  • 网站首页漂浮广告代码国字型网站建设布局
  • 百度网盟有哪些网站大港做网站
  • 网站浏览器图标怎么做wordpress固定连接出现中文
  • 域名申请了怎么做网站张掖网站建设推广
  • 可以直接打开网站的网页云平台网站优化
  • 检索类的网站建设做电商运营有前途吗
  • 网站 会员系统 织梦广州seo推广服务