小编Ple*_*rds的帖子

如何根据其内容自动调整/缩放DBGrid(或其他类似的)列宽?

我正在尝试创建一个框架,其中包含DBGrid超过10个表,其中一半字段为默认值,其他字段为每个表独占.

由于列的空间有限,我不想手动配置每个表的每一列,因为它是非常差的质量工作,我想知道一种方法来计算每列内部最大内容的宽度.列,由自己的组件或数据集测量.

有谁知道的方式?世界上有一些具有这种力量的定制组件吗? 根据网格所有可见列中的可见数据,我需要一个实现大小增加和减少的解决方案. 到目前为止,我的解决方案是绘制所选单元格的问题,从所选数据集行中跳出.

在此输入图像描述


注意:请不要关闭我的问题.它与网格的宽度或形状的宽度无关.它是关于所有列宽度以最小化水平滚动条,但不一定隐藏它.

database delphi delphi-2006 tdbgrid

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

如何在Delphi中将简单的RichText转换为HTML标签?

您可能会说在stackOverflow中有很多关于此的讨论,但是大多数都比我需要的更复杂,主要用于其他语言.

我有一个MySQL远程数据库,其中我有一个"帮助"表,其中包含用于填充使用此数据库的动态网站的帮助页面的代码.

我决定制作一个Delphi应用程序来管理该网站,而不是通过网站本身来提高速度和安全性.

我想用一个TRichEdit来制作帮助文本并使用简单的东西,如对齐,粗体,斜体和带下划线的样式.我不想使用图片和字体.

如何选择丰富的样式文本并将其转换为HTML以放入远程数据库中的BLOB字段,然后如果我想再次编辑它,则重新转换为富文本

html delphi rtf richedit delphi-2006

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

我们可以使用RTTI按名称查找函数/过程并运行它们吗?

因为我们可以找到一个Property或者一个Object使用RTTI,我们可以在内存中搜索某个function或者procedure(不是来自一个对象method但是来自一个unit)知道它的名字吗?

如果我们可以,是否可以执行它发送它的参数?

delphi rtti delphi-xe3

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

打印html时如何定义分页符?

我有一个用Delphi 2006制作的应用程序,用QuickReport打印.由于存在许多错误,我将重建软件的这一部分,以HTML格式生成报告,然后通过某个组件将其发送到打印机.我的问题是,如何/我可以告诉打印机什么时候应该打破HTML的新页面?HTML打印组件上的某些标记或事件?

html printing report

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

如何在 Oracle 12c 中创建带条件的索引?

我想将 PostgreSQL 数据库迁移到 Oracle 12c,例如在下面的表创建中,我发现了一些困难:

  • 如何(如果可能)使用where子句创建这些唯一索引?
  • 如何正确添加这个主键 pessoa_id?
  • 为什么我收到此错误“缺少右括号”?

代码:

create table nano.pessoa (
    id              GENERATED BY DEFAULT ON NULL AS IDENTITY,
    nome            varchar(99) not null, 
    sobrenome       varchar(99) not null, 
    nascimento_dt   date,
    registro        varchar(32) not null,   
    fisica_sn       bool default true,   -- no caso de pf, true, pf, falso
    matriz_sn       bool default false,  -- no caso de pf, é o genero, masculino = true
    confirmado_sn   bool default false,
    constraint pessoa_id primary key(id)
);  

create unique index pessoa_juridica_cnpj_ix on pessoas.pessoa …
Run Code Online (Sandbox Code Playgroud)

oracle indexing database-migration

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

一个 MySQL 触发器是否可以关联到多个表或所有表?

我创建了这个触发器来将一个值计算值插入到表中的一个字段中,以防用户忘记自己放置数据:

DELIMITER //
CREATE TRIGGER OnNewTableRegistry BEFORE INSERT ON eduardo8_plataforma.tabela
FOR EACH ROW
BEGIN
    IF NEW.ut = null THEN
        SET NEW.ut = GetUT('tabela');
    ELSEIF NEW.ut = '' THEN
        SET NEW.ut = GetUT('tabela');
    END IF;
END;
//
DELIMITER ;
Run Code Online (Sandbox Code Playgroud)

但是我需要对该数据库中的每个表执行相同的操作。是否可以对所有表使用相同的触发器,如果​​是,我们如何获取在第 6 行和第 8 行中tabela指定的触发使用它的表的名称?

我需要这样的东西:

DELIMITER //
CREATE TRIGGER OnNewTableRegistry BEFORE INSERT ON (* as _TableName)
FOR EACH ROW
BEGIN
    IF NEW._TableName.ut = null THEN
        SET NEW._TableName.ut = GetUT(_TableName);
    ELSEIF NEW._TableName.ut = '' THEN
        SET NEW._TableName.ut = GetUT(_TableName);
    END …
Run Code Online (Sandbox Code Playgroud)

mysql triggers

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

如何一次使用"Asder"参数和"As"运算符多个类?

在Delphi中,有时我们需要这样做......

function TForm1.EDIT_Click(Sender: TObject);
begin
  (Sender As TEdit).Text := '';
end;
Run Code Online (Sandbox Code Playgroud)

...但有时我们需要重复其他对象类的功能,如...

function TForm1.COMBOBOX_Click(Sender: TObject);
begin
  (Sender As TComboBox).Text := '';
end;
Run Code Online (Sandbox Code Playgroud)

......因为运营商As不接受灵活性.它必须知道这个类,以便允许.Text它来之后().

有时候代码会变得类似functions,procedures因为我们需要使用类似的视觉控件来做同样的事情,而这些控件是我们无法指定的.

这只是一个使用示例.通常,我在更复杂的代码上使用这些代码来实现许多控件和其他类型对象的标准目标.

是否有替代或技巧使这些任务更灵活?

delphi oop sender as-operator

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

如何计算"左"属性以使文本在DBGrid单元格中居中?

继续该项目开始于:

如何根据其内容自动调整/缩放DBGrid(或其他类似的)列宽?

如何计算"左"属性以使文本在DBGrid单元格中居中?

当我们调用OnDrawColumnCell并使用Canvas编写文本来代替网格的默认绘制时,当我们想要将其置于单元格中心时,我们如何计算文本的位置?

delphi delphi-2006

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

我们可以在运行时为表单加载dfm文件吗?

Delphi应用程序是否可以接收带有对象,其属性和事件分配的dfm文件,并加载所有这些信息,就像它们如何处理使用它编译的内部dfm一样?

我们怎么能这样做?有直接的方法吗?

注意:应用程序已经拥有包含正确类和方法的代码,包括事件.我们还可以远程接收某些可以由我的应用程序读取的脚本,该脚本将创建匹配dfm文件规范所必需的对象.就像Web浏览器解释HTML,css和JS文件一样......

delphi

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

我可以“覆盖”超类私有字段的注释吗?

在其他编程语言方面有 20 年的经验,现在我是 Java 新手,感觉自己像个菜鸟程序员......

我使用Indexable抽象类来扩展我的所有@entity类,因此我不需要将@Id @GeneratedValue @SequenceGenerator它们放在所有类上。我也有Auditable通向@CreatedBy @CreatedDate @ModifiedBy @ModifiedDate这些继承路径的方法:

  • 大多数实体类 > AuditableClass > IndexableClass;
  • 一些实体类 > 可索引类。

现在我注意到我的 99% 的实体类还具有:

@Column(nullable = false, unique = true) private String name;
Run Code Online (Sandbox Code Playgroud)

我想将该行移到类中Indexable以避免 99% 中的样板代码,但是没有name字段的两个类是重要的可审计类,我不想将所有祖先字段复制到它们只是为了防止其上出现空名称错误。

问题是:如果我在这两个类上覆盖该字段的注释以使其可为空且瞬态,是否可以避免在表上创建该字段并且不会用空名称打扰用户?

class SomeAuditableClass extends Audited {
  //@override
  @Column(nullable = true) @Transient private String name;
Run Code Online (Sandbox Code Playgroud)

Java中有没有办法重写类变量中的内容?没有多大帮助...

java inheritance jpa data-annotations

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