小编Jap*_*ter的帖子

如何只接受编辑控件中的数字?

通常我会执行以下操作将字符串值保存到数据库中

DataModule.tbTableNumber.Value := StrToFloat(edtNumber.text);
Run Code Online (Sandbox Code Playgroud)

现在问题出现在用户输入无法转换为数字的内容时.我怎么能阻止这个?一个人可以使用异常吗?我将如何编写此异常?

我正在使用Delphi XE2.

delphi exception-handling

7
推荐指数
2
解决办法
1万
查看次数

如何用Delphi授予高程

我编写了一个数据库应用程序,可以将excel文件中的数据导入Access数据库.

我从来没有遇到过运行应用程序,将记录插入数据库的麻烦,但是只要我运行将数据从Excel导入Access的功能,我就会收到以下警告:

请求的操作需要提升 - 通过芯片代码:

LAccess := CreateOleObject('Access.Application');
Run Code Online (Sandbox Code Playgroud)

造成这种情况的原因是什么,有办法绕过它

delphi ms-access elevated-privileges delphi-xe2

6
推荐指数
1
解决办法
926
查看次数

使用Firebird 2.5嵌入式连接错误的Delphi客户端 - 服务器应用程序

我有一个冗长的问题要问.首先,在Delphi编程方面,我还是非常新的,我的经验主要是使用ADO和Access数据库开发小型单用户数据库应用程序.

我现在需要转换到客户端服务器应用程序,这就是问题开始的地方.我决定使用Firebird 2.5作为我的数据库,因为它是开源的,它可以与Delphi中的interbase组件一起使用,并且多个客户端可以同时访问数据库.所以我遵循了Delphi中的interbase教程.我设法将客户端连接到服务器并查看示例中的数据(虽然两者都在我的电脑上运行),但是当我试图将客户端移动到另一台PC时,将服务器保持在我的状态并运行它以查看是否我可以连接到它给我的服务器以下错误.

0029DCAC模块clientDemo.exe中的异常EIdSocketError.套接字错误#10061连接被拒绝.

我知道这可能是因为主机在客户端中被定义为localhost.但这是我的第一个问题.在TSQLConncetion中,您可以在Driver-> Hostname下设置die hostname.我想知道的是你是如何在运行时这样做的,因为当我尝试创建一个编辑框以允许用户输入值然后通过代码设置它时,我无法获取属性,例如:

SQLConncetion1.Driver.Hostname:= edtHost.text; 这不能通过这种方式完成,我看到你可以设置主机名的唯一方法是使用对象检查器,但是在运行时这是不可用的,我需要在程序第一次运行时在客户端上设置主机名,所以如何在运行时设置主机名/ IP地址?

我正在使用Delphi XE2

在部署方面还有很多问题需要解决,但我会逐一采用这一点,我很欣赏这些建议.

delphi firebird

5
推荐指数
1
解决办法
5174
查看次数

如何使用Delphi在TImage中显示所有图片格式

我编写了一个存储照片的应用程序,保留了数据库中照片的路径.我遇到了一个问题.当我单击我的按钮选择要在TImage对象中显示的图片供用户在保存之前查看时,我收到以下异常通知:引发异常类:EInvalidGraphic,消息"未知图片扩展名(.jpg)"

我正在使用TopenPicture组件来获取图像.openPicture.filter属性设置为接受大多数图像格式(jpg,jpeg,png,gif,bmp),但我无法将任何这些格式加载到TImage组件中.

这是我用来加载图像的代码:

openPicture.Execute();
filename := openPicture.FileName;

if not(fileName = '') then
begin
  imgFoto.Picture.LoadFromFile(filename);
  imgFoto.Visible := true;
end;
Run Code Online (Sandbox Code Playgroud)

delphi timage delphi-xe2

5
推荐指数
1
解决办法
9852
查看次数

如何使用delphi将Excel文件导入Access数据库

我正在使用Delphi编写数据库应用程序,需要在Excel工作表上导入数据并将其保存在访问数据库中.我不知道如何做到这一点,使用什么组件,或者甚至可能,请你帮助我.

database delphi ms-access import-from-excel delphi-xe2

4
推荐指数
1
解决办法
7005
查看次数

如何在delphi中将一个字符从字符串转换为char

我有一个字符串,我想从中提取一个需要在Case语句中使用的字符.事物是Case唯一的Char取值而不是字符串值.那么如何将单个字符串字符转换为char?

delphi string case char delphi-xe2

4
推荐指数
1
解决办法
3万
查看次数

如何在Delphi中使用dbExpress将参数传递给查询

我想使用dbExpress TSQLQuery组件.但我不知道如何编写SQL来添加参数.我会举一个例子,也许更清楚我的问题是什么.

在TADOQuery中,以下工作:

SELECT*
FROM sometable
WHERE sometable.id = :value;
Run Code Online (Sandbox Code Playgroud)

现在在上面的示例中,您使用参数名称前面的冒号(:)将参数传递给查询.但是当我尝试使用TSQLQuery执行此操作时,我收到以下错误:

dbExpress driver does not support the TDBXTypes.UNKNOWN data type. Vendor Error Message.
Run Code Online (Sandbox Code Playgroud)

现在,如果这不是您在TSQLQuery组件中传递参数的方式,那么有人可以帮助我.这对我来说是一个新的领域.

我使用Firebird数据库,我使用Delphi XE2

delphi dbexpress firebird2.5 delphi-xe2

4
推荐指数
1
解决办法
8827
查看次数

当使用键盘通过按钮点击添加字符时,如何让光标移到字符串的末尾

我正在建立一个像触摸屏上的键盘一样的形式.我现在遇到的问题是,当我按下按钮例如"1"按钮时,它必须将该字符"1"添加到编辑框,该编辑框显示已经按下的按键.现在我遇到的问题是,一旦一个人按下一个键,我就可以将char添加到已经显示在编辑框中的字符串,但是光标会转到编辑框的前面,而不会出现在后面.我使用以下代码将char添加到编辑框:

edtPassword.text := edtPassword.text + key;
Run Code Online (Sandbox Code Playgroud)

现在,只需将char添加到编辑框的末尾,但如何将光标移动到编辑框的末尾.

另外我还有一个退格按钮,如果你点击它,我会用什么代码擦除编辑框中字符串的最后一个字符?

我正在使用Delphi XE2

delphi delphi-xe2

4
推荐指数
1
解决办法
1998
查看次数

使用Delphi的条形码扫描仪

我正在开发一个POS(宠物项目),我正在考虑添加一个条形码扫描仪来更快地捕获销售.我现在没有扫描仪,想问一些问题,因为我有点卡住了.

在销售屏幕上,我最初的想法是拥有一个TEdit组件,当一个人扫描产品时,它会填充TEdit字符串.现在我遇到的问题是我想要TEdit隐形,这样人就看不到了.但是一旦你做了TEdit隐形,你就无法把注意力放在它上面,所以这个计划就行不通了.

那么有人可以建议我可以用来"捕获"扫描的字符串吗?如何让组件监听并等待扫描仪?我认为扫描仪就像普通的键盘事件,如按钮向下或向上.

delphi point-of-sale barcode-scanner keypreview delphi-xe2

4
推荐指数
2
解决办法
6959
查看次数

如何使用TEdit框输入密码而不显示输入的字符,只显示*

我想创建一个用户必须输入密码的编辑框.当他们输入密码时,我希望不显示角色,而是*.是否有任何属性可以设置为执行此操作,我知道如何设置TEdit在进入时保持空白但我不希望这样.我正在使用Delphi XE2

delphi passwords edit delphi-xe2

3
推荐指数
2
解决办法
2万
查看次数