我目前在笔记本电脑上安装了Delphi 2007和Delphi XE.弹出代码洞察工具提示视图在XE安装中受到限制.我似乎记得这是在编辑器选项的某个地方,但找不到它.
有人可以告诉我在哪里打开扩展的工具提示视图?
见附图 - D2007在顶部,DXE在下面

我想在RAD Studio C++ Builder XE中将十六进制字符串转换为16位十进制.
例如,我有十六进制字符串"8FC".二进制表示为100011111100.这个的十进制表示为:2300.
如何在C++ Builder XE中进行此转换?
我想知道是否有办法自动增加或滚动组合框.
例如,每30秒我希望它连续选择组合框中的下一个选项,直到它到达最后一个值,然后它必须返回索引0并从那里继续.
原因是我的组合框中的每个值都包含一个从数据库调用数据来显示的值,因为这些屏幕将是无人值守的,我希望在没有用户输入的情况下自动更改.
我添加了一个计时器和以下代码,并按照下面的建议设置间隔(30000)
procedure TForm3.Timer1Timer(Sender: TObject);
begin
if ComboBox1.Index < comboBox1.Index.MaxValue then
ComboBox1.Index := +1
else
ComboBox1.Index := 0;
end;
Run Code Online (Sandbox Code Playgroud)
提前致谢.
我想在画布上绘制文本。为了进行轮换,我使用了https://forums.embarcadero.com/thread.jspa?messageID=440010 中的以下代码
//bm is a TImage
a := 45;
c:= bm.Canvas;
CurrentM := c.Matrix;
a:=-radian(a);
m.m11:= cos(a); m.m12:=sin(a); m.m13:=0;
m.m21:=-sin(a); m.m22:=cos(a); m.m23:=0;
m.m31:=0; m.m32:=0; m.m33:=1;
c.setmatrix(M);
c.BeginScene;
c.filltext(rectf(100,100,5000,5000), 'test rotated string', false,1,[],ttextalign.taLeading,ttextalign.taLeading);
c.EndScene;
Run Code Online (Sandbox Code Playgroud)
这工作正常。我已将矩形的右侧和底部设置为 5000,这样我就不必担心矩形太小了。
问题是我现在想更改我的 TextAlignment 属性。所以要从右到左绘制文本,我必须调整我的矩形,然后按以下方式绘制它:
c.BeginScene;
c.filltext(rectf((100 - 5000),100,100,5000), 'test rotated string', false,1,[],ttextalign.taTrailing,ttextalign.taLeading);
c.EndScene;
Run Code Online (Sandbox Code Playgroud)
所以基本上我移动了矩形 TopLeft 的 x 值并将其移回 5000(我再次使用 5000 来确保我的文本适合)。然后,我将矩形右下角的 x 值设置为 x 值在上一个示例矩形的 TopLeft 中的位置。这适用于 0 度旋转,但是一旦我更改了度数,我就不会在正确的位置绘制文本。我认为这是因为文本将围绕矩形的 TopLeft 位置旋转(更改为使文本从右向左书写)。
我有以下 C++ 代码:
标题:(在类内)
virtual const bigint &getPopulation() ;
Run Code Online (Sandbox Code Playgroud)
执行:
static bigint negone = -1 ;
const bigint &hlifealgo::getPopulation() {
// note: if called during gc, then we cannot call calcPopulation
// since that will mess up the gc.
if (!popValid) {
if (inGC) {
needPop = 1 ;
return negone ;
} else {
calcPopulation(root) ;
popValid = 1 ;
needPop = 0 ;
}
}
return population ;
}
Run Code Online (Sandbox Code Playgroud)
我把它移植到 Delphi,它工作得很好。我仍然对 const 返回类型感到有些困惑。
我可以忽略const翻译吗,或者这里有什么需要注意的吗?
Delphi 中是否有类似的概念?
我之前在Delphi 7中编写了一个应用程序.我将TNTUnicode组件用于许多对象.现在我想用Delphi XE4开发它.
我的问题:Delphi XE4不支持TNTUnicode.
那么,有没有办法将TTNTObject转换为TObjects?
在我的FMX应用程序中,我必须使用位图模式填充表单的整个背景区域.
我之所以想要使用这种模式,是因为表单可以由用户自由调整大小,我是否设置了固定图像,拉伸会导致背景质量的下降.
有没有办法使用一个小的Bitmap模式我可以重复(X和Y)根据调整大小填充整个表单区域?
默认情况下,Lazarus使用可怕的(可怕的)AT&T语法显示x86/x64程序集.
如何让它显示人们使用的英特尔语法?

我正在将Nat Pryce的Maybe班级翻译成Delphi.
这是一些背景知识:http://www.natpryce.com/articles/000776.html
大部分都很简单,但是......
我如何将这个声明从Java翻译成Delphi?
public abstract <U> Maybe<U> to(Function<? super T, ? extends U> mapping);
Run Code Online (Sandbox Code Playgroud)
它是一个抽象的虚函数&to,它接受一个function命名mapping为参数,但我不知道如何建模.
对于上下文,这是完整的代码:
package com.natpryce.maybe;
import com.google.common.base.Function;
import com.google.common.base.Predicate;
import java.util.Collections;
import java.util.Iterator;
public abstract class Maybe<T> implements Iterable<T> {
public abstract boolean isKnown();
public abstract T otherwise(T defaultValue);
public abstract Maybe<T> otherwise(Maybe<T> maybeDefaultValue);
public abstract <U> Maybe<U> to(Function<? super T, ? extends U> mapping);
public abstract Maybe<Boolean> query(Predicate<? super T> mapping);
public static …Run Code Online (Sandbox Code Playgroud) delphi ×7
c++ ×2
delphi-xe2 ×2
firemonkey ×2
assembly ×1
background ×1
c++builder ×1
components ×1
debugging ×1
delphi-xe4 ×1
generics ×1
go ×1
hex ×1
ide ×1
java ×1
lazarus ×1
pascal ×1
slice ×1
tooltip ×1