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

ListBox显示最新数据、左移和右移操作

1、程序

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using static System.Windows.Forms.VisualStyles.VisualStyleElement.ProgressBar;namespace ListBoxApp
{public partial class Form1 : Form{Timer timer;bool isRun = false;int count = 0;int MAX_COUNT = 20;string filename = "";/// <summary>/// 构造函数/// </summary>public Form1(){InitializeComponent();MoveInitialize();}/// <summary>/// 窗体加载/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void Form1_Load(object sender, EventArgs e){timer = new Timer();timer.Interval = 500;timer.Tick += Timer_Tick;timer.Start();}/// <summary>/// 定时处理/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void Timer_Tick(object sender, EventArgs e){if (isRun){string str = $"No. {count} item";ListBoxSaveAndAdd(filename,listBox1, str, MAX_COUNT);count++;}}/// <summary>/// 测试开启和停止/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void btStart_Click(object sender, EventArgs e){if (btStart.Text.Equals("开始")){btStart.Text = "停止";listBox1.Items.Clear();filename = Path.Combine(Environment.CurrentDirectory, "f"+DateTime.Now.ToString("yyyyMMdd_HHmmssFFF")+".txt");count = 0;isRun = true;}else{btStart.Text = "开始";isRun = false;}}#region 显示(最新数据)和保存/// <summary>/// 数据保存和ListBox添加/// </summary>/// <param name="filename"></param>/// <param name="listBox"></param>/// <param name="text"></param>/// <param name="maxCount"></param>public static void ListBoxSaveAndAdd(string filename, ListBox listBox, string text, int maxCount){FileStreamWriter(filename, text);ListBoxScrollAddCross(listBox, text, maxCount);}/// <summary>/// 文件保存/// </summary>/// <param name="filename"></param>/// <param name="content"></param>public static void FileStreamWriter(string filename, string content){using (StreamWriter sw = new StreamWriter(filename, true)){sw.WriteLine(content);}}/// <summary>/// listBox跨域处理/// </summary>/// <param name="listBox"></param>/// <param name="text"></param>/// <param name="maxCount"></param>public static void ListBoxScrollAddCross(ListBox listBox, string text, int maxCount){if (listBox.InvokeRequired){MethodInvoker mi = delegate (){ListBoxScrollAdd(listBox, text, maxCount);};listBox.Invoke(mi);}else{ListBoxScrollAdd(listBox, text, maxCount);}}/// <summary>/// listBox添加/// </summary>/// <param name="listBox"></param>/// <param name="text"></param>/// <param name="maxCount"></param>public static void ListBoxScrollAdd(ListBox listBox, string text, int maxCount){listBox.Items.Add(text);if (listBox.Items.Count > maxCount){listBox.Items.RemoveAt(0);}listBox.TopIndex = listBox.Items.Count - (int)(listBox.Height / listBox.ItemHeight);}#endregion#region 左移和右移/// <summary>/// 移动初始化/// </summary>private void MoveInitialize(){listBox2.Items.Add("产品设计");listBox2.Items.Add("硬件设计");listBox2.Items.Add("逻辑设计");listBox2.Items.Add("软件设计");}/// <summary>/// 右移/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void BtnAddProject_Click(object sender, EventArgs e){if (listBox2.Items.Count > 0){CurrentMove(listBox2, listBox3);}}/// <summary>/// 左移/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void BtnRemoveProject_Click(object sender, EventArgs e){if (listBox3.Items.Count > 0){CurrentMove(listBox3, listBox2);}     }/// <summary>/// 移动处理/// </summary>/// <param name="source"></param>/// <param name="target"></param>public void CurrentMove(ListBox source,ListBox target){foreach(var selectItem in source.SelectedItems){target.Items.Add((string)selectItem);}List<int> list = new List<int>();foreach(int item in source.SelectedIndices){list.Add(item);}for(int i=list.Count-1; i>=0; i--){source.Items.RemoveAt(list[i]);}}#endregion}
}

2、运行效果
在这里插入图片描述

相关文章:

ListBox显示最新数据、左移和右移操作

1、程序 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using static Sys…...

mysql实用系列:日期格式化

在MySQL中&#xff0c;你可以使用DATE_FORMAT()函数来格式化日期。DATE_FORMAT() 函数通常用于格式化 DATETIME 或 TIMESTAMP类型的字段。这个函数允许你按照指定的格式来显示日期和时间。下面是一些常见的日期格式化的例子&#xff1a; 显示年-月-日&#xff1a; SELECT DATE_…...

时钟频率、AI采样率与AO更新率的关系

在数据采集和信号生成设备&#xff08;如NI板卡&#xff09;中&#xff0c;时钟频率、AI&#xff08;模拟输入&#xff09;采样率、以及AO&#xff08;模拟输出&#xff09;更新率是三个至关重要的参数。它们共同决定了设备在信号采集与生成时的性能表现。本文将详细分析它们之…...

代理IP设置后IP不变?可能的原因及解决方法

在使用代理IP时&#xff0c;有时会遇到代理设置后IP地址却没有变化的情况。这种问题可能会让人感到困惑&#xff0c;但其实背后有多种原因。本文将详细探讨这些原因&#xff0c;并提供相应的解决方法&#xff0c;帮助你顺利解决问题。 可能的原因 代理IP设置后IP地址不变的原…...

瑞芯微RK3588开发板Linux系统添加自启动命令的方法,深圳触觉智能Arm嵌入式鸿蒙硬件方案商

本文适用于触觉智能所有Linux系统的开发板、主板添加自启动命令的方法&#xff0c;本次使用了触觉智能的EVB3588开发板演示&#xff0c;搭载了瑞芯微RK3588旗舰芯片。 该开发板为核心板加底板设计&#xff0c;为工业场景设计研发的模块化产品&#xff0c;10年以上稳定供货,帮助…...

Varjo在芬兰开设新工厂,以满足国防部门在XR模拟训练中的需求

在军事国防领域&#xff0c;全新技术的投入使用最看重的就是保密与安全。作为全球领先的XR头戴式显示器提供商Varjo&#xff0c;近日正式宣布将在位于芬兰的赫尔辛基开设一家新的安全制造工厂。 此次工厂扩建将使Varjo能够满足国防训练和模拟领域对其高分辨率XR解决方案日益增…...

python 识别省市、区县并组建三级信息数据库

一、网址&#xff1a; 全国行政区划信息查询平台 二、分析并搭建框架 检查网页源码&#xff1a; 检查网页源码可以发现&#xff1a; 所有省级信息全部在javaScript下的json中&#xff0c;会在页面加载时加载json数据&#xff0c;填充到页面的option中。 1、第一步&#xff1a…...

家用小型超声波清洗机怎么选?四大人气爆款品牌不可错过!

在现代社会快节奏的步伐中&#xff0c;保持高度的个人及家居卫生标准成为了日常生活的重要组成部分&#xff0c;对于追求高端生活品质的人群而言&#xff0c;这一点尤为重要。因此&#xff0c;选取一款集高效与便利于一体的超声波清洗机&#xff0c;无疑是升级日常清洁体验的理…...

NVIDIA最新AI论文介绍NEST:一种用于语音处理的快速高效自监督模型

语音处理专注于开发能够分析、解释和生成人类语音的系统。这些技术涵盖了多种应用&#xff0c;例如自动语音识别&#xff08;ASR&#xff09;、说话人验证、语音转文本翻译以及说话人分离。随着对虚拟助手、转录服务和多语言交流工具的依赖不断增加&#xff0c;高效准确的语音处…...

聊聊对别人表示真正的关注

在工作和生活中,那些重要人士所得到的关注已经很多了&#xff0c;所以你不能只关注那些重要的人&#xff0c;对那些保洁门卫、前台等也需要我们给予真心的关注。 他们可使你的生活正常有序&#xff0c;但却经常被你忽略&#xff0c;见面打个招呼时常跟他们聊一聊&#xff0c;这…...

大数据-133 - ClickHouse 基础概述 全面了解

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; 目前已经更新到了&#xff1a; Hadoop&#xff08;已更完&#xff09;HDFS&#xff08;已更完&#xff09;MapReduce&#xff08;已更完&am…...

第1步win10宿主机与虚拟机通过NAT共享上网互通

VM的CentOS采用NAT共用宿主机网卡宿主机器无法连接到虚拟CentOS 要实现宿主机与虚拟机通信&#xff0c;原理就是给宿主机的网卡配置一个与虚拟机网关相同网段的IP地址&#xff0c;实现可以互通。 1、查看虚拟机的IP地址 2、编辑虚拟机的虚拟网络的NAT和DHCP的配置&#xff0c;…...

Python学习——【2.3】for循环

文章目录 【2.3】for循环一、for循环基础语法&#xff08;一&#xff09;基础语法※、练习 &#xff08;二&#xff09;range语句※、练习 &#xff08;三&#xff09;变量作用域 二、for循环嵌套使用※、练习 【2.3】for循环 一、for循环基础语法 &#xff08;一&#xff09…...

Element UI:初步探索 Vue.js 的高效 UI 框架

Element UI&#xff1a;初步探索 Vue.js 的高效 UI 框架 一 . ElementUI 基本使用1.1 Element 介绍1.2 Element 快速入门1.3 基础布局1.4 容器布局1.5 表单组件1.6 表格组件1.6.1 基础表格1.6.2 带斑马纹表格1.6.3 带边框表格1.6.4 带状态的表格 1.7 导航栏组件讲解 二 . 学生列…...

React Native防止重复点击

项目中遇到了点击按钮重复提交的问题&#xff0c;防止重复点击首先是想到的是给点击事件一个定时&#xff0c;下次触发的条件是要距离上一次点击的时间大于N秒的之后才能再执行。 // 防重复点击函数 export const preventRepeatPress {lastPressTi1me: 0, // 上次点击时间…...

如何将Git本地代码推送到Gitee云端仓库

如何将Git本地代码推送到Gitee云端仓库 在使用Git进行版本控制时&#xff0c;将本地代码推送到远程仓库是一个基本且重要的操作。本文将详细介绍如何将你的Git本地代码推送到Gitee&#xff08;码云&#xff09;云端仓库。Gitee是一个国内非常流行的代码托管平台&#xff0c;类…...

架构师论文备考-论云原生架构及其应用

摘要 2022年3月&#xff0c;我有幸参与了公司的新智慧公交系统的研发工作。该系统基于B/S架构设计&#xff0c;并以多租户SaaS平台化为发展目标&#xff0c;旨在创建一个功能更全面、性能更卓越、稳定性更强、用户体验更佳的公交调度一体化平台。在这一项目中&#xff0c;我主要…...

12.java面向对象:java构造器

构造器 一个类即使什么都不写&#xff0c;也会存在一个方法。 假如我创建了一个类叫Student里面什么都不写&#xff0c;然后使用StudentDemo创建对象&#xff0c;运行没有结果&#xff0c;也没有报错。 public class Student {}public class StudentDemo {public static voi…...

微服务之间的安全通信

在微服务架构中&#xff0c;服务之间的通信是系统的核心部分。然而&#xff0c;由于服务的分布式和独立性&#xff0c;确保它们之间的通信安全至关重要。如果没有适当的安全机制&#xff0c;微服务系统可能会暴露在各种网络攻击和安全漏洞中。本文将讨论几种常见的微服务间安全…...

全面掌握 Jest:从零开始的测试指南(下篇)

在上一篇测试指南中&#xff0c;我们介绍了Jest 的背景、如何初始化项目、常用的匹配器语法以及钩子函数的使用。这一篇篇将继续深入探讨 Jest 的高级特性&#xff0c;包括 Mock 函数、异步请求的处理、Mock 请求的模拟、类的模拟以及定时器的模拟、snapshot 的使用。通过这些技…...

KubeSphere 容器平台高可用:环境搭建与可视化操作指南

Linux_k8s篇 欢迎来到Linux的世界&#xff0c;看笔记好好学多敲多打&#xff0c;每个人都是大神&#xff01; 题目&#xff1a;KubeSphere 容器平台高可用&#xff1a;环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...

【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15

缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下&#xff1a; struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...

<6>-MySQL表的增删查改

目录 一&#xff0c;create&#xff08;创建表&#xff09; 二&#xff0c;retrieve&#xff08;查询表&#xff09; 1&#xff0c;select列 2&#xff0c;where条件 三&#xff0c;update&#xff08;更新表&#xff09; 四&#xff0c;delete&#xff08;删除表&#xf…...

spring:实例工厂方法获取bean

spring处理使用静态工厂方法获取bean实例&#xff0c;也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下&#xff1a; 定义实例工厂类&#xff08;Java代码&#xff09;&#xff0c;定义实例工厂&#xff08;xml&#xff09;&#xff0c;定义调用实例工厂&#xff…...

深入浅出深度学习基础:从感知机到全连接神经网络的核心原理与应用

文章目录 前言一、感知机 (Perceptron)1.1 基础介绍1.1.1 感知机是什么&#xff1f;1.1.2 感知机的工作原理 1.2 感知机的简单应用&#xff1a;基本逻辑门1.2.1 逻辑与 (Logic AND)1.2.2 逻辑或 (Logic OR)1.2.3 逻辑与非 (Logic NAND) 1.3 感知机的实现1.3.1 简单实现 (基于阈…...

多模态图像修复系统:基于深度学习的图片修复实现

多模态图像修复系统:基于深度学习的图片修复实现 1. 系统概述 本系统使用多模态大模型(Stable Diffusion Inpainting)实现图像修复功能,结合文本描述和图片输入,对指定区域进行内容修复。系统包含完整的数据处理、模型训练、推理部署流程。 import torch import numpy …...

jmeter聚合报告中参数详解

sample、average、min、max、90%line、95%line,99%line、Error错误率、吞吐量Thoughput、KB/sec每秒传输的数据量 sample&#xff08;样本数&#xff09; 表示测试中发送的请求数量&#xff0c;即测试执行了多少次请求。 单位&#xff0c;以个或者次数表示。 示例&#xff1a;…...

Linux系统部署KES

1、安装准备 1.版本说明V008R006C009B0014 V008&#xff1a;是version产品的大版本。 R006&#xff1a;是release产品特性版本。 C009&#xff1a;是通用版 B0014&#xff1a;是build开发过程中的构建版本2.硬件要求 #安全版和企业版 内存&#xff1a;1GB 以上 硬盘&#xf…...

【Post-process】【VBA】ETABS VBA FrameObj.GetNameList and write to EXCEL

ETABS API实战:导出框架元素数据到Excel 在结构工程师的日常工作中,经常需要从ETABS模型中提取框架元素信息进行后续分析。手动复制粘贴不仅耗时,还容易出错。今天我们来用简单的VBA代码实现自动化导出。 🎯 我们要实现什么? 一键点击,就能将ETABS中所有框架元素的基…...

算术操作符与类型转换:从基础到精通

目录 前言&#xff1a;从基础到实践——探索运算符与类型转换的奥秘 算术操作符超级详解 算术操作符&#xff1a;、-、*、/、% 赋值操作符&#xff1a;和复合赋值 单⽬操作符&#xff1a;、--、、- 前言&#xff1a;从基础到实践——探索运算符与类型转换的奥秘 在先前的文…...