问题标签 [rad-studio]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - IDE 专家在接口上“转到实现”(如 ReSharpers 的“GotoImplementations”)
ReShaper 有一个命令 GotoImplementations,它使您能够跳转到接口(或基类)的实现。有没有做同样事情的 IDE 专家(IDE AddOn)?
android - 使用蓝牙组件将数据从 Android 手机传输到串行设备时出现问题
对不起,如果我的标题不是特别精确。
我正在尝试将字节数据从 Android 手机传输到串行设备。正如您在下面看到的,我要发送的数据是具有十六进制值的字节数组。如果我以现在的方式发送它们,RealTerm 串行端口监视器显示的值与我发送的值不同(F0 F0 FC F3)。
这就是我获得连接的方式
所以我要做的第一件事是将 bff 作为开始序列发送,然后我想使用串行通信发送其余数据。btSocket
只是一个TBluetoothSocket
。
尽管听起来很愚蠢,但实际上是波特率。
c++ - 睡眠仅在调试模式下工作,而不是在发布模式下工作(Embarcadero C++ Builder)
我正在使用 Embarcadero C++ Builder(工程师而非程序员)
我发现睡眠功能只在调试模式下对我有用,在发布模式下不起作用。我在 StackOverFlow 中看到引用不使用睡眠,而是使用 TTimer。
我只是希望我的应用程序根据 Sleep(500) 在绘图对象之间暂停几秒钟;在下面的代码中,这样我就可以看到正在绘制的每个对象并可以检查它们是否正确,否则它恰好可以快速检查。
DrawSelectedShape(k,Side,AddOrDeduct,Color); 在下面的代码中,是需要暂停的过程
上面的代码在调试模式下完美运行,但在发布模式下,它通过将前几个形状绘制到画布上正常工作,然后你会得到一个旋转的鼠标光标一段时间,然后是一个空白画布。
所以我正在寻找睡眠的替代品。
使用 TTimer 时(没有经验)会使用 OnTimer 事件,并将重复运行的代码放置在与 Timer1 间隔相关的延迟的事件中,这与只是在中间寻找几秒钟的延迟不太一样一个for循环
这就是我的渲染的样子:
任何建议,非常感谢。
cmake - cmake 使用错误版本的编译器
我在 Windows 7 中使用 cmake 和 ninja。它完美无瑕,直到我打开旧版本的 IDE。现在 cmake 使用了错误的编译器。它现在尝试使用 C:/Program Files (x86)/Embarcadero/RAD Studio/9.0/bin/bcc32x.exe 而不是 C:/Program Files (x86)/Embarcadero/Studio/19.0/bin/bcc32x.exe。当然,我在 stackoverflow 上阅读了类似的问题,并尝试了那里描述的解决方案,但似乎没有任何效果(例如,你如何设置 CMAKE_C_COMPILER 和 CMAKE_CXX_COMPILER 来为 iOS 构建 Assimp?)。即使重新安装 cmake 也无济于事。我的windows环境变量没问题。
当我尝试在命令行中设置 CMake 变量时,如下所示:
cmd输出是
c# - 当服务中的事件被触发时,如何将响应从服务发送回客户端?
我正在使用embarcadero rad studio 2010
和编程语言c++
,我们正在.net dll
通过WCF Service
.
通信是通过 Importing WSDL
in完成的embarcadero
,我们可以通过 调用服务WSDL
。
现在我想在服务中触发事件时将响应从服务发送回客户端。我怎样才能做到这一点?
windows - Windows 7 - 高 DPI - RAD Studio XE7 的 SetProcessDPIAware 问题?
我正在使用 Embarcadero RAD Studio C++ Builder XE7 在 Windows 7 系统上开发应用程序。我正试图让我的应用程序 DPI 之一知道。为此,我需要重现以下行为之一:
- 停止所有类型的 DPI 感知,让应用程序保持相同大小,无论选择什么 DPI
- 允许 Windows 虚拟化应用程序(AFAIK 这是默认行为)
- 通过在我的应用程序的每个表单上启用 TForm Scaled 属性,通知 Windows 应用程序可识别 DPI,并让应用程序调整其组件的大小。
使用清单文件,我可以在我的应用程序中完美地重现这 3 个场景。
但是,我想在运行时从应用程序本身内部选择应用程序的行为方式。例如,我想使用如下命令行打开我的应用程序:
C:> MyApp.exe /DPIBehavior=[忽略,虚拟化,缩放]
我注意到 Windows SDK 提供了几个函数来实现这一点。由于我仍在 Windows 7 上开发,我无法使用或测试 SetProcessDPIAwareness() 函数,因为在 Windows 8.1 之前不可用,所以我尝试使用 SetProcessDPIAware() 函数。
我注意到这个功能很好地停止了 Windows 虚拟化过程。但是,即使我的表单属性上的 Scaled 属性设置为 true,我的表单也不再缩放。我在这里指定我编译了我的应用程序的 2 个不同版本,一个在主窗体上启用了 Scaled 属性,另一个没有,但两者都尽快调用 SetProcessDPIAware() 函数。
我在 192 dpi 下测试了这些应用程序版本。由于它们产生完全相同的结果,即完全相同大小的用户界面,我推断使用 SetProcessDPIAware() 函数时缩放不起作用。另一方面,当我使用清单而不是调用 SetProcessDPIAware() 函数来运行完全相同的应用程序时,我得到了预期的结果:一个应用程序被缩放,另一个没有。
谁能向我解释如何在保持 TForm 缩放的同时使用 SetProcessDPIAware() 函数?或者它是一个 XE7 错误?
sockets - 从 TCP Socket 读取所有可用字节(未知字节数)
我在使用 Indy 时遇到问题TIdTCPClient
。如果套接字上有可用的数据,我想调用一个函数。为此,我有一个线程调用IdTCPClient->Socket->Readable(100)
。函数本身如下所示:
它不会在线程内直接调用,而是线程触发了一个事件,就是调用了这个函数。这意味着我使用Readable(100)
了两次,中间没有读取数据。因此,由于我不知道必须读取多少字节,所以我认为我可以读取一个字节,检查是否有更多可用字节,然后再读取另一个字节。这里的问题是 do while 循环不循环,它只运行一次。我猜 Readable 并不完全符合我的需要。有没有其他方法可以接收 Socket 中可用的所有字节?
c++builder - 全局声明 TBitmap
我想在全球范围内声明一个 TBitmap。
我尝试如下:
在方法中本地,这工作正常
或者
所以要全局声明它,我在头文件中尝试了这个
这在构造函数中
它编译得很好,但是在运行时,在第一次出现时抛出访问冲突异常
请提前告知,tks。
我使用的参考源是C++ Builder Graphics Introduction
建议在构造函数中声明
c++builder - 如何在 VCL 中清除位图
如何清除在 .cpp 中声明的位图,如下所示:
我找到的所有示例都是针对 Firemonkey 的,看起来很简单
或者
但是 Clear() 和 ClearRect() 不是 VCL 中 TBitmap 的成员
我希望我应该delete Bitmap1;
为了清除它,但是如何重新声明它,使其对表单中的所有方法仍然是全局的?
提前致谢。
ios - 无法为 RAD Studio 10.2 Tokyo 安装 iOS SDK
我们最近购买了 RAD Studio Tokyo 的新许可证,并在 Windows 10 Pro 上安装了版本 10.2 Update 3。我们购买该产品的目的是专门针对 Windows 和 iOS 的功能,但目前我们只能针对 Windows。
目标环境是 macOS 10.13.6,所有最新更新包括 Xcode 10.1 和 iPhoneOS12.1.sdk、iPhoneSimulator12.1.sdk、MacOSX10.14.sdk。还安装了 PAServer-19.0.app 和 PAServerManager.app,它们都按预期运行。
在按照RAD Studio 文档设置连接配置文件和 iOS SDK之后,我能够连接到 PAServer,它解析了可用的 SDK ( /usr/bin/xcodebuild -version -sdk
)。RAD Studio 中的Add a New SDK对话框随后会使用其解析的内容填充Select an SDK version组合框,但它仅列出 macOS SDK“MacOSX 10.14”。没有列出 iOS SDK。
然后我阅读了支持的 iOS 目标环境,发现不支持 iOS 12。所以我从 Apple 下载了 Xcode 9.4.1(其中包括 iOS 11.4 SDK),假设 iOS 11.4 会受到支持,因为 RAD Studio 文档说支持 iOS 11。
按照故障排除文档,我将 Xcode 9.4.1 安装到独立目录(将现有的 Xcode 10.1 单独留在 /Applications 中),更新系统选择的 Xcode(使用/usr/bin/xcode-select --switch /path/to/Xcode-9.4.1.app/Contents/Developer
),然后重新启动 PAServer。
现在,当我尝试通过RAD Studio 中的“添加新 SDK”对话框选择支持的 iOS 版本时,“选择 SDK 版本”组合框会填充新安装的旧 macOS SDK“MacOSX 10.13”,所以我相信它是寻找正确的路径,但仍然没有列出 iOS SDK。是什么赋予了?