delphi相关内容

如何制作具有全文搜索自动完成支持的组合框?

我希望用户能够输入 TComboBox 项目中的第二个或第三个单词,并使该项目显示在 AutoSuggest 下拉选项中 例如,组合框包含项目: 约翰·布朗先生 阿曼达·布朗夫人 布莱恩·琼斯先生 萨曼莎·史密斯夫人 当用户输入“Br"时,下拉菜单显示: 约翰·布朗先生 阿曼达·布朗夫人 布莱恩·琼斯先生 当用户输入“Jo"时,下拉菜单会显示: 约翰·布朗 ..
发布时间:2021-11-30 18:46:16 其他开发

Google 喜欢 Delphi 的编辑/组合控件吗?

每个人可能都知道我的意思,但要澄清控制需要: 当用户编辑文本时触发一个事件.该事件将提供一个 SuggestionList: TStrings,您可以在其中填充匹配/建议. 如果 SuggestionList 不为空,则会出现一个下拉列表. 与组合不同,控件不应尝试自动选择/自动完成或以其他方式影响编辑. 那么,有没有像这样工作的 Delphi 编辑/组合控件? 解决方案 ..
发布时间:2021-11-30 18:41:37 其他开发

从文本文件自动追加/完成到编辑框 delphi

我正在尝试创建一个编辑框,我希望它能够在键入时自动附加输入的文本.文本将附加来自文本文件的“建议". 假设我的建议文件中有这些:玛丽莲·梦露马龙白兰度迈克迈尔斯 当我开始在编辑框中输入“M"时,其余的将突出显示(或不突出显示):“艾琳梦露"当我继续输入“Mi"时,最后会出现“ke Myers".我希望我对你们说得够清楚了!感谢您的帮助! 解决方案 您可以使用 TComboBox ..
发布时间:2021-11-30 18:38:01 其他开发

Delphi 程序如何通过默认电子邮件客户端发送带有附件的电子邮件?

在我的程序中,我使用安装在用户机器上的默认电子邮件客户端软件编写要发送的电子邮件. 我已经编写了 mailto 地址、主题、多行正文,并且我有几个附件要包含在内. 我几乎使用 mailto 和 ShellExecute 完成了这项工作,如下所示: 消息:= 'mailto:someone@somewhere.com'+ '?subject=这是 subjectBehold 错误报告 ..
发布时间:2021-11-30 15:08:37 其他开发

具有“线程安全"读/写操作的 Delphi 数据类型列表?

'boolean' 变量对于从任何线程读取和写入是线程安全的吗?我已经看到一些新闻组引用说它们是.是否还有其他数据类型可用?(枚举类型,也许是短整数?) 最好有一个可以从任何线程安全读取的所有数据类型的列表,以及另一个也可以在任何线程中安全写入的列表,而不必求助于各种同步方法. 解决方案 请注意,您基本上可以使 delphi 中的所有内容都变为非线程安全的.虽然其他人提到布尔值的对齐 ..
发布时间:2021-11-30 14:57:37 其他开发

Delphi:如何在不使用断言的情况下获取(当前代码行、当前单元、当前函数)?

我正在尝试在我的程序上创建一个日志系统,该系统将在文本文件上记录调试消息,我想在代码中保存调用日志消息的确切位置,但我不想使用 Assert 函数因为它会产生异常,而且这个系统不仅仅用于记录异常,所以我还必须写一些调试信息. 使用断言的示例: procedure AnyProcedure();开始尝试断言(1=0);除了在 E: 例外做Log.AddLine('Log发生的是'+E.Mes ..
发布时间:2021-11-30 11:43:27 其他开发

某些 CPU 上紧密循环中的 ADC/SBB 和 INC/DEC 问题

我正在用 Delphi 编写一个简单的 BigInteger 类型.它主要由 TLimb 的动态数组组成,其中 TLimb 是一个 32 位无符号整数,以及一个 32 位大小的字段,该字段还保存 BigInteger 的符号位. 要添加两个 BigInteger,我创建了一个适当大小的新 BigInteger,然后在进行一些簿记之后,调用以下过程,将三个指针传递给左操作数和右操作数以及结果的 ..
发布时间:2021-11-30 11:14:48 其他开发

Delphi 7 中的宽字符串到字符串的转换

我的应用程序是用 Delphi 7 编写的非 Unicode 应用程序. 我想用这个函数将 unicode 字符串转换为 ANSI : function convertU(ws : widestring) : string;开始结果:=字符串(ws);结尾; 我也使用此代码来设置要转换的正确代码页. 初始化SetThreadLocale(GetSystemDefaultLCID);获取 ..
发布时间:2021-11-28 17:56:14 其他开发

将 RTF 文本从数据库加载到 TRichEdit

我目前正在将我们的软件解决方案从 Delphi 7 迁移到 2010.大部分更改都很简单,只剩下少量障碍. 在一个表单上,我们使用了一个 TRichEdit,它显示了从 MSSQL 数据库中的 blob 字段中抓取的 rtf 文本.这是它在 Delphi 7 中的工作方式: //使用TADOQuery从Blob字段获取RTF文本rtfStream := sql.CreateBlobStre ..
发布时间:2021-11-28 17:50:41 其他开发

如何使用 Delphi 7 将文本文件从 ANSI 转换为 UTF-8?

我用 Delphi 7 编写了一个程序,用于搜索硬盘驱动器上的 *.srt 文件.该程序在备忘录中列出了这些文件的路径和名称.现在我需要将这些文件从 ANSI 转换为 UTF-8,但我没有成功. 解决方案 Utf8Encode 函数接受一个 WideString 字符串作为参数并返回一个 Utf-8 字符串. 示例: 过程 ConvertANSIFileToUTF8File(AIn ..
发布时间:2021-11-28 17:50:00 其他开发

我怎样才能让 TStringList 在 Delphi 中以不同的方式排序

我有一个简单的 TStringList.我对它做了一个 TStringList.Sort . 然后我注意到下划线“_"排在大写字母“A"之前.这与对相同文本进行排序并在 A 之后排序 _ 的第三方包形成对比. 根据 ANSI 字符集,A-Z 是 65 - 90 的字符,_ 是 95.所以看起来 3rd 方包正在使用该顺序,而 TStringList.Sort 不是. 我深入研究了 ..
发布时间:2021-11-28 17:47:38 其他开发

如何以 delphi 形式使用动画 Gif

我认为没有对 gif 动画图像的原生支持. 最好的方法是什么?任何允许这样做的免费组件?我正在考虑使用 TImage 和 ImageList + Timer,但我需要将 gif 的每一帧导出到一个单独的 bmp 文件. 解决方案 这在现代 Delphi 中非常简单.这一切都是内置的.将 TImage 拖放到表单上,然后将动画 GIF 加载到 Picture 属性中.然后,通过 Ani ..
发布时间:2021-11-28 17:37:41 其他开发

使用 Indy TIdHTTP 发布问题

我在使用 Indy 的 TIdHTTP 向亚马逊的 SES 服务发帖时遇到问题. 这是我使用的代码示例: procedure TMainFrm.btnAmazonSESClick(Sender: TObject);无功SSLHandler: TIdSSLIOHandlerSocket;HttpClient: TIdHTTP;参数:TStringStream;开始SSLHandler := ..
发布时间:2021-11-27 11:00:00 其他开发

如何动态创建与顶部对齐但在其他对齐控件之后的控件?

在这种特殊情况下,我使用 PowerPDF 库来动态构建 PDF 文档,但这同样适用于在父控件内部按顺序动态对齐控件的一般概念.在这个库中,TPRPage 是包含所有元素控件的基本控件,在这种情况下,是 TPRLayoutPanel 的连续实例. 动态添加控件时我做了什么: 创建控件(TPRLayoutPanel) 设置控件的父级 (TPRPage) 将控件顶部对齐 (PRLayo ..
发布时间:2021-11-27 08:03:53 其他开发

Delphi 中的 AccessViolationException - 不可能(检查它,难以置信......)

德尔福 XE.视窗 7. 有一个函数(请参阅下面的代码)或 I:=0 会导致大型项目中的 AV 错误.新项目没有同样功能的错误!!!我从大项目中删除了所有内容,只留下一个按钮和那个功能.它仍然导致错误... 有错误的一行: if ISAeroEnabled then//这一行是一个原因我:= 0;//或者这一行 我到处都设置了断点(我检查了整个函数,我在 EACH LINE 上设置 ..
发布时间:2021-11-26 20:24:12 其他开发

访问冲突 Delphi 程序

请帮我输入以下代码.单击“登录"按钮后,我会收到来自 delphi 的访问冲突.... 由 !!! 指示 登录单元 单元日志;界面用途Windows、消息、SysUtils、变体、类、图形、控件、表单、对话框、StdCtrls、ExtCtrls、cls_LogIn、Jpeg;类型TForm2 = 类(TForm)日志输入:TLabel;pnlSplitter:TPanel;edtUserNa ..
发布时间:2021-11-26 20:23:55 其他开发

模块“GUI.exe"中地址 00822135 处的访问冲突.读取地址 00000040

sqlite 有一个数据库——一个描述符,包含表列表、域列表、字段列表、限制列表(主键和外键)、索引列表.我是从 Delphi XE3 的内置组件的帮助下连接到这个基础的.有一个单独的模块,其中描述了类 TTableSpec、TFieldSpec、TConstraintSpec、TConstraintDetSpec 和 TDomainSpec.这些类对应于上述基础sqlite的记录.在 TTabl ..
发布时间:2021-11-26 20:23:16 其他开发

使用 Delphi 中的 C++ DLL 时的 AccessViolation

我在尝试使用 Delphi (Turbo Delphi 2006) 程序中用 C++ 编写的 DLL 时遇到了一个奇怪的问题. 当我从命令行运行 Delphi 程序(见下文)时,一切正常.另外,当我在没有调试的情况下从 Delphi 环境运行它(CTRL+SHIFT+F9)时,一切都很好.但是,当运行它和调试(F9)时,我收到以下错误: 项目 Z:\test.exe 出现故障消息:'访 ..
发布时间:2021-11-26 20:22:39 C/C++开发

Delphi - 尝试使用 DLL 注入覆盖指令时出现访问冲突

早上好.我正在尝试了解 DLL 注入,所以我写了一个小软件,它只是获取一个字符串,与 StrCmp() 进行比较,如果输入等于“Winner",软件会给出一个 Good boy 消息,带有学习DLL注入的目的.所以我写了一个DLL,在注入时加载一个Form,海豚使用DLL注入,修改比较指令(JNZ(74)到JMP(EB)),并使软件接受任何字符串.我的 DLL 代码是: library Proj ..
发布时间:2021-11-26 20:22:31 其他开发

错误 Delphi XE2 - 异常类 $C00000005

我在调试一个项目时遇到此错误,该项目以前在 Delphi 7 中,我一直在升级到 Delphi XE2,在几种方法中都会发生相同的错误. $006DC660 的第一次机会异常.异常类 $C0000005 带有消息“访问冲突在 0x006dc660 读取地址 0xffffffff" 这是其中一种方法: PFI = ^TFI;TFI = 记录标识:TToken;名称 : TName;参数:字符串 ..
发布时间:2021-11-26 20:21:25 其他开发