Delphi 编程实现拖动排序并输出到文档
介绍:实现拖动排序功能,并将排序后的内容输出到文档中。我们将使用 Delphi 的组件来创建一个界面,其中包括一个 Memo 控件用于输入内容,一个 ListBox 控件用于显示排序后的内容,并且提供按钮来触发排序和输出操作。

代码实现:
procedure TForm1.FormCreate(Sender: TObject) ;
beginListBox3.DragMode := dmAutomatic;
end;
procedure TForm1.Button59Click(Sender: TObject);
varI: Integer;TxtFile: TextFile;
beginAssignFile(TxtFile, 'output.txt');Rewrite(TxtFile);tryfor I := 0 to ListBox3.Items.Count - 1 dobeginWriteLn(TxtFile, ListBox3.Items[I]);end;finallyCloseFile(TxtFile);end;ShowMessage('排序后的内容已输出到output.txt文件');ShellExecute(0, 'open', 'notepad.exe', PChar('output.txt'), nil, SW_SHOWNORMAL);
end;
procedure TForm1.Button60Click(Sender: TObject);
varI: Integer;
beginListBox3.Clear;for I := 0 to Memo4.Lines.Count - 1 dobeginListBox3.Items.Add(Memo4.Lines[I]);end;end;
procedure TForm1.ListBox3DragDrop(Sender, Source: TObject; X, Y: Integer);
var
i:integer;
str:string;
begin
for i:= tlistbox(source).items.count-1 downto 0 dobeginif tlistbox(source).Selected[i] thenbeginwith source as tlistbox dobeginstr:=items[i];items.Delete(i);end;with sender as tlistbox dobeginitems.Insert(itematpos(point(x,y),false),str);end;end;end;end;
procedure TForm1.ListBox3DragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean);
beginAccept := Source = ListBox3;
end;
代码解释:
1. `Button59Click` 过程:将 `ListBox3` 中的内容输出到 `output.txt` 文件中,然后使用记事本打开该文件。
2. `Button60Click` 过程:将 `Memo4` 中的内容清空,然后将 `Memo4` 中的每一行添加到 `ListBox3` 中。
3. `ListBox3DragDrop` 过程:处理 `ListBox3` 的拖放事件。当用户将一个或多个项目从一个 `ListBox` 拖放到另一个 `ListBox` 时,此过程将被调用。该过程将遍历源 `ListBox` 中的所有已选项目,并将其逐一添加到目标 `ListBox` 中。
4. `ListBox3DragOver` 过程:处理 `ListBox3` 的拖放事件。当用户将一个或多个项目从一个 `ListBox` 拖放到另一个 `ListBox` 时,此过程将被调用。
总结:
通过上述 Delphi 代码,我们实现了拖动排序功能,并将排序后的内容输出到文档中。这个示例代码可以帮助你了解 Delphi 中的拖放操作和文件输出操作的实现方式。你可以在 Delphi 的开发环境中运行该代码,并根据实际需求进行修改和扩展。
相关文章:
Delphi 编程实现拖动排序并输出到文档
介绍:实现拖动排序功能,并将排序后的内容输出到文档中。我们将使用 Delphi 的组件来创建一个界面,其中包括一个 Memo 控件用于输入内容,一个 ListBox 控件用于显示排序后的内容,并且提供按钮来触发排序和输出操作。 代…...
android利用FFmpeg进行视频转换
大致思路:首先安装FFmpeg库到windows电脑上,先测试命令行工具是否可以使用(需要先配置环境),之后再集成到android程序中。 一些命令: 转化为流文件: ffmpeg -i input.mp4 -codec copy -bsf:v …...
Python中不同进制间的转换
Python中不同进制间的转换 一、不同进制在计算机科学、数学和其他领域中具广泛的应用。以下是一些常见的应用:1. 二进制(base-2): 在计算机系统中,数据以二进制形式存储和处理。二进制由0和1组成,是数字电子技术的基础…...
物流监管:智慧仓储数据可视化监控平台
随着市场竞争加剧和市场需求的不断提高,企业亟需更加高效、智能且可靠的仓储物流管理方式,以提升企业的物流效率,减少其输出成本,有效应对市场上的变化和挑战。 图扑自研 HT for Web 产品搭建的 2D 智慧仓储可视化平台,…...
C++对象模型(19)-- 函数语义学:成员函数
1、普通成员函数的调用 1.1 调用方式的转换 为了提高普通成员函数的调用效率,在C中,对普通成员函数的调用,会转换成对全局函数的调用。 假如有下面所示的成员函数: class Test { public:int m_i;int func(int a) {m_i a;retu…...
AI只需26秒,就可以设计一款会走路的机器人
由西北大学、麻省理工学院和佛蒙特大学组成的一支科研团队首次开发出一种可以完全自行设计机器人的 AI 算法。 这一 AI 算法不仅运行速度快,还可在个人计算机上运行,并从头开始设计全新的结构。只需告诉AI“我们想要一个可穿越陆地的机器人”,…...
简单实现spring的set依赖注入
Maven依赖: <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/POM/4.0…...
STM32 HAL库函数——HAL_TIM_Base_Start_IT()详解
以STM32G030C8T6中的HAL_TIM_Base_Start_IT()函数为例,进行解释; 文章目录 一、函数原型和源代码二、函数用法详解:2.1 参数2.1.1 TIM_HandleTypeDef结构体详解 2.2 使用场景:2.3 使用方法: 三、函数使用示例ÿ…...
C语言之通讯录的实现篇优化版
目录 动态内存管理 通讯录声明 静态版本 动态版本 初始化通讯录 静态版本 动态版本 Add增加通讯录 静态版本 动态版本 Checkcapacity增容 DestroyContact释放动态空间 文件操作 SaveContact保存信息到文件中 初始化通讯录 旧版本 文件版本 LoadContact加载…...
C++17中std::string_view的使用
为了解决std::string初始化(或拷贝)成本高昂的问题,C17引入了std::string_view。std::string_view提供对现有字符串(C风格字符串、std::string、或另一个std::string_view)的只读访问,而无需进行拷贝。当想要有效地处理和操作字符串而不修改它们时&#…...
C#,数值计算——分类与推理Phylo_nj的计算方法与源程序
1 文本格式 using System; using System.Collections.Generic; namespace Legalsoft.Truffer { public class Phylo_nj : Phylagglom { public double[] u; public override void premin(double[,] d, int[] nextp) { i…...
element-ui 图片压缩上传
picture.js export const compressImgNew (file) > {return new Promise(resolve > {const reader new FileReader()const image new Image()image.onload (imageEvent) > {const canvas document.createElement(canvas) // 创建画布const context canvas.getCo…...
【Java 进阶篇】Java XML约束:确保数据一致性和有效性
XML(可扩展标记语言)是一种常用的数据交换格式,用于存储和交换数据。然而,为了确保数据的一致性和有效性,通常需要定义XML约束。XML约束是一种规则集,定义了XML文档的结构、元素、属性和数据类型。本篇博客…...
第一章概述
一、学习目的与要求 本章对软件测试作了概括性的介绍,目的是使学生对软件测试有个初步的认识。通过本章的学习,应使学生掌握软件测试的基本概念,了解软件测试的发展历程和行业现状,掌握软件测试技术的分类,理解软件测试…...
XCode15与iOS17/17.1 真机测试问题处理
XCode15与iOS17/17.1 真机测试问题处理,网上相关博客很多,摘录了如下实践后能起作用的地址如下:Xcode 15 报错处理 - 简书iOS17版本适配-CSDN博客 Xcode15适配-六虎 主要介绍下:Assertion failure in void _UIGraphicsBeginImag…...
使用 Rust 和 cURL 库下载程序
以下是一个使用 Rust 和 cURL 库的下载器程序,用于下载 图像。此程序使用了 https://www.duoip.cn/get_proxy 的代码。 extern crate curl; use std::io::{self, Read}; use std::error::Error; fn main() {let url "https://www.baidu.com";let …...
三维模型表面积计算方法
【版权声明】 本文为博主原创文章,未经博主允许严禁转载,我们会定期进行侵权检索。 更多算法总结请关注我的博客:https://blog.csdn.net/suiyingy,或”乐乐感知学堂“公众号。 本文章来自于专栏《Python三维模型处理基础》的系列文…...
unity脚本_力 c#
创建一个脚本 将代码挂载到物体上 取消物体的重力 运行即向z轴运动 加力之后 是否停止是由阻力影响 如果阻力为零 则会一直运动 如果希望就算有阻力也让物体一直动就将加力代码放在Update函数里 using UnityEngine; public class Power : MonoBehaviour{ Rigidbody rigidBo…...
LeetCode 面试题 10.05. 稀疏数组搜索
文章目录 一、题目二、C# 题解 一、题目 稀疏数组搜索。有个排好序的字符串数组,其中散布着一些空字符串,编写一种方法,找出给定字符串的位置。 示例1: 输入: words [“at”, “”, “”, “”, “ball”, “”, “”, “car”, “”, “”…...
分类预测 | MATLAB实现基于BiLSTM-AdaBoost双向长短期记忆网络结合AdaBoost多输入分类预测
分类预测 | MATLAB实现基于BiLSTM-AdaBoost双向长短期记忆网络结合AdaBoost多输入分类预测 目录 分类预测 | MATLAB实现基于BiLSTM-AdaBoost双向长短期记忆网络结合AdaBoost多输入分类预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 1.MATLAB实现基于BiLSTM-…...
Local Moondream2案例分享:设计师用其解析竞品海报→提取视觉关键词→重构创意
Local Moondream2案例分享:设计师用其解析竞品海报→提取视觉关键词→重构创意 1. 项目背景与核心价值 作为一名设计师,你是否经常遇到这样的困境:看到一张优秀的竞品海报,想要分析其设计精髓,却不知从何下手&#x…...
FF14副本动画跳过插件:5分钟快速配置指南,告别冗长等待
FF14副本动画跳过插件:5分钟快速配置指南,告别冗长等待 【免费下载链接】FFXIV_ACT_CutsceneSkip 项目地址: https://gitcode.com/gh_mirrors/ff/FFXIV_ACT_CutsceneSkip FF14副本动画跳过插件是专为《最终幻想14》国服玩家设计的智能工具&#…...
VMware虚拟机部署万物识别镜像指南
VMware虚拟机部署万物识别镜像指南 1. 引言 想在本地环境体验强大的AI视觉识别能力,但又不想折腾复杂的驱动和环境配置?通过VMware虚拟机部署万物识别镜像,可能是最简单快捷的方式。这个方案特别适合想要快速上手AI视觉识别、进行原型验证或…...
AMD Ryzen调试工具:专业级硬件性能优化指南
AMD Ryzen调试工具:专业级硬件性能优化指南 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https://gitcode.com/…...
保姆级教程:用Wan2.2-I2V-A14B镜像,RTX4090D快速部署AI视频生成
保姆级教程:用Wan2.2-I2V-A14B镜像,RTX4090D快速部署AI视频生成 1. 准备工作与环境检查 1.1 硬件与系统要求 在开始部署前,请确保您的设备满足以下最低配置要求: 显卡:NVIDIA RTX 4090D 24GB显存(必须匹…...
Cortex-A7 MPCore 架构
鉴于学习的硬件使用的是Cortex-A7架构,本章学习该架构的相关知识。了解了 Cortex-A7 架构以后有利于我们后面的学习,因为后面有很多例程涉及到 Cortex-A7 架构方面的知识,比如处理器模型、 Cortex-A7 寄存器组等等。Cortex-A7 MPCore 简介Cor…...
CMU15-445 P0通关后,我总结了这份WSL2 + VSCode + CMake环境配置的避坑清单
CMU15-445 P0通关实战:WSL2VSCodeCMake环境配置的深度避坑指南 环境搭建的常见陷阱与系统性解决方案 在数据库系统学习的起点,环境配置往往成为第一道门槛。不同于简单的安装教程,这里将剖析WSL2VSCodeCMake组合配置中的典型问题链࿰…...
【前沿技术】Set Transformer:突破置换不变性挑战的高效注意力机制
1. Set Transformer:当集合数据遇上注意力机制 想象你面前有一袋五颜六色的积木,无论你怎么摇晃袋子改变积木的顺序,这袋积木的总重量始终不变——这就是置换不变性的生动体现。在机器学习领域,处理这类无序集合数据(如…...
MySQL基础阶段学习-SQL语句篇
前言 在后端开发与数据存储领域,MySQL 无疑是使用最广泛、生态最成熟的关系型数据库之一。作为一款开源免费、轻量高效的数据库管理系统,它凭借稳定可靠、易于上手、适配多种编程语言等优势,从小型个人项目到大型企业级应用都随处可见&#x…...
Kandinsky-5.0-I2V-Lite-5s图生视频入门必看:首帧选择+运动提示词写作黄金法则
Kandinsky-5.0-I2V-Lite-5s图生视频入门必看:首帧选择运动提示词写作黄金法则 1. 为什么选择Kandinsky-5.0-I2V-Lite-5s 如果你正在寻找一个简单易用的图生视频工具,Kandinsky-5.0-I2V-Lite-5s可能是你的理想选择。这个轻量级模型只需要一张图片和一句…...
