- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在 Lazarus 中进行自定义提示。到目前为止,我已经动态加载了提示中的文本,并自定义了字体、字体大小和字体颜色。我想限制提示窗口的宽度。有任何想法吗?这是我的代码。
type
TExHint = class(THintWindow)
constructor Create(AOwner: TComponent); override;
...
constructor TExHint.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
with Canvas.Font do
begin
Name := 'Hanuman';
Size := Size + 3;
end;
//Canvas.Width := ;
end;
感谢您的帮助。
最佳答案
我现在只有 Lazarus 源代码和记事本,但我会尝试向您解释 THintWindow
使用它是因为理解它是最重要的:
HintWindowClass
全局变量,那么您可以说注册您的提示窗口类以供应用程序全局使用。然后,每次应用程序要显示提示时,它将使用您的提示窗口类并调用您的重写函数以及基 THintWindow
中的函数。你没有覆盖的类。以下是如何注册您的提示窗口类以在应用程序范围内使用:
HintWindowClass := TExHint;
CalcHintRect
每当要显示提示时都会起作用。要自行调整提示窗口大小,您需要重写此函数,CalcHintRect
将使用基类(来自 THintWindow
类)的函数,因此您应该重写它:
type
TExHint = class(THintWindow)
public
constructor Create(AOwner: TComponent); override;
function CalcHintRect(MaxWidth: Integer; const AHint: String;
AData: Pointer): TRect; override;
end;
constructor TExHint.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
with Canvas.Font do
begin
Name := 'Hanuman';
Size := Size + 3;
end;
end;
function TExHint.CalcHintRect(MaxWidth: Integer; const AHint: String;
AData: Pointer): TRect;
begin
// here you need to return bounds rectangle for the hint
Result := Rect(0, 0, SomeWidth, SomeHeight);
end;
关于delphi - 在Delphi/Lazarus中设置提示窗口(THintWindow)的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11472874/
当我在新计算机上打开现有的 Lazarus IDE 项目时,它不想进行编译。源编辑器中会弹出一个包含此代码的窗口 program C05e01p; {$mode objfpc}{$H+} uses
我开始在Lazarus IDE中开发项目,但我不适应新平台。如何在项目中导入音频媒体,图像,视频和其他资源,然后使用它们(无需使用操作系统的特定目录)。 利用相同的情况,创建一个zip文件类型并将其导
在花了很多时间之后 ''' procedure Tf100.lvListCustomDrawItem(Sender: TCustomListView; Item: TListItem; State
为什么这段代码不会导致编译器错误?我预计会出现错误,例如“对“CallMe”的调用不明确”。这是编译器或语言中的错误吗?这可以通过使用单元名称和函数调用前面的点来解决,但这不能保护用户代码和库代码免受
我正在尝试使用 synapse 在 lazarus 中创建 https 服务器,但失败了。我想让我的服务器接收来自其他 https 客户端的数据。我正在使用 https://localhost:150
我们使用的是摩托罗拉 MC3100 移动数据终端、条码扫描器。运行Windows CE6.0 为了对这些进行编程,我们打算使用 Lazarus/FPC,实际上我们已经制作了一个可以在设备上运行的测试应
我正在将 Delphi 应用程序移植到 FPC/Lazarus,该应用程序在启动屏幕中显示信息。当单元具有初始化部分时,该初始化部分会调用类似以下内容的内容: Splash.Info(unit_nam
我必须在主线程的上下文中执行一些代码。我使用的是Lazarus + FPC。我从 DLL(如果在 Linux 上是共享库)内的线程接收到一个事件,并且我的回调函数被调用。请注意,此函数不是任何类的成员
我想使用内置的TSimpleIPCServer在Lazarus中创建一个简单套接字服务器。 我不想使用任何其他框架或产品! 该组件上似乎没有任何文档。我在网上浏览了所有内容,但找不到任何示例。 最佳答
我有一些 Delphi 经验,并且正在尝试使用 Lazarus 构建一个项目,这对我来说是全新的。 我想,我已经阅读了有关 Lazarus、翻译/国际化/本地化的所有可用信息,但我无法找到我真正想要的
召集所有FreePascal和/或Lazarus大人物!! 查看标记为[FPC]或[Lazarus]的大部分问题,我们会发现Marco van de Voort可以回答大多数问题... But why
我有一些 Delphi 经验,并且正在尝试使用 Lazarus 构建一个项目,这对我来说是全新的。 我想,我已经阅读了有关 Lazarus、翻译/国际化/本地化的所有可用信息,但我无法找到我真正想要的
我想在 Raspberry Pi 上使用 Lazarus 进行开发,但直到现在我还不能。 Here我读过这个: 在 Raspbian 操作系统中,很容易安装 Lazarus 和 Free Pascal
我正在使用 Lazarus IDE 在 Linux 系统上编写程序。该程序应该连接到 Internet 或 Intranet。所以,我想向用户显示他们可以用来连接到 Internet 或 Intran
这里只是这个问题的后续问题 => link是否可以将 TabSheet 标题的文本颜色更改为另一种颜色(例如白色)并将字体样式更改为“粗体”? 最佳答案 也许这会给你这样的灵感。再次请注意,这仅适用于
我有一个使用 Lazarus 构建的程序。 我想在没有 Lazarus 的机器上运行它。这可能吗?如果是这样,我如何确定要放在新计算机上的依赖项? 注意:我不热衷于制作安装程序或类似的东西。我只想在没
时尚指南? 除了 http://wiki.freepascal.org/Coding_style是否有风格指南代表 Lazarus(和/或 FPC 和/或 Delphi)或某种广泛共识所遵循的风格。
我正在使用 Lazarus 构建一个应用程序,我在其中使用 sqlite 数据库来存储数千条记录。现在我正在通过 sqlite3.dll 动态链接到 sqlite 库。 是否可以静态链接到它?我在哪里
每次我使用 raise Exception.create('...'); 时,它都会显示与 Delphi 不同的以下框: [my message] Press OK to ignore and ris
我在 TForm1.FormDropFiles 中遇到了一个非常奇怪的问题。 我已附上整个项目。我无法定位问题。 执行项目后,会显示form1,并显示系统托盘图标,当将文件拖放到form1上时,会显示
我是一名优秀的程序员,十分优秀!