我刚买了XE2版本,安装了更新1 ISO,并用我的开源项目编译.
事实上:
TestSQLite3.dpr
我们框架的回归测试 - 没问题:编译EXE并通过所有测试;我已经将库的源代码路径添加到项目选项中(对于Win32/Win64 - 即使它已经在全局IDE级别设置).现在,有关未知文件的错误消失了,但源代码中的单元名称仍以红色下划线,并且Ctrl + Click不起作用.
该TestSQLite3.dpr
源代码不指定单位的完整路径:
uses
{$I SynDprUses.inc}
Windows,
Messages,
SysUtils,
Classes,
SynCrypto,
SynCrtSock,
SynCommons,
SynDB,
SynOleDB,
SynDBOracle,
(...)
Run Code Online (Sandbox Code Playgroud)
在上面的行中,SynCrypto,SynCrtSock,SynCommons用红色下划线.
我的实际猜测是.dpr(SynCrypto in '..\SynCrypto.pas'
)中需要完整路径.我没有测试这个,因为我没有XE2在工作.
由于以前的IDE使用这种源代码(从Delphi 6到XE)没有问题,我想知道是否存在回归的可能性,或者以前版本的IDE没有新的选项(可能基于平台)我没有正确设置.或者也许在.dpr中需要完整路径 - 但这听起来像Code/Error Insight编译器中的回归给我.
它工作正常(对于我写的所有代码),按预期显示内容(我甚至轻松添加了一个水平滚动条),但我想我已经达到了垂直滚动条的某种限制.
也就是说,当我从顶部向底部滚动垂直条时,它不会将内容滚动到列表的末尾,而只会滚动到某个限制.
你知道有没有摆脱这个限制的可能性?我试过SetScrollInfo
,但它没有工作,因为限制听起来不在滚动条中,而是在TListBox
自身中.
我知道创建专用的解决方案TCustomControl
:在这种情况下,SetScrollInfo
将按预期工作.但有人知道仍然使用的解决方案/技巧TListBox
吗?
编辑:说清楚 - 我不要求(第三方)组件解决方案,但要知道是否有一些低级GDI消息要发送到标准TListBox
以覆盖此限制.如果没有,我将转到专用TCustomControl
解决方案.
这是使用TSCROLLINFO的代码:
procedure ScrollVertHuge(Handle: HWND; count: integer);
var Scroll: TSCROLLINFO;
begin
Scroll.cbSize:= sizeof(Scroll);
Scroll.fMask := SIF_DISABLENOSCROLL or SIF_RANGE;
Scroll.nMin := 0;
Scroll.nMax := count;
SetScrollInfo(Handle,SB_VERT,Scroll,false);
end;
Run Code Online (Sandbox Code Playgroud)
要精确地解决这个问题:添加和绘制两个工作当然(我的工具按预期工作),但不起作用的是垂直滚动条拖动.我重命名了问题的标题,并删除了令人困惑的已弃用的MSDN文章.
我刚刚购买了Mac Mini,以便使用Delphi XE2开发Mac OS X FireMonkey应用程序.
我是Windows 7下的主要笔记本电脑,我多年来一直用于开发.但是这台笔记本电脑的硬件配置比Mac Mini(带有4GB RAM的Core i5)更旧(AMD TL-56,内存为2GB).
从您的实验中,使用的最佳配置是什么?也就是说,我应该在哪里安装Delphi XE2?
我只是喜欢使用Windows进行开发 - 例如我大量使用Total Commander和其他自制工具.我在Embarcadero的办公室见过Mac电脑 - 我只是想知道什么是最好的硬件配置.
我不需要像"尝试Mac OS,这是有史以来最好的操作系统"这样的答案 - 只是来自Delphi程序员的反馈,包括提示(例如,如何远程工作FireMonkey 3D加速?).
我正在使用Synopse mORMot从Delphi 7访问SQLite数据库.我希望通过SQL直接建立连接和查询数据库,而无需使用mORMot的ORM(对象关系映射)功能.
您是否可以提供执行SQL查询而不依赖于mORMot的ORM功能的代码示例?
我是mORMot的新手.我做了一个mormot服务器和FMX客户端.它适用于Win模式.接下来,我将目标更改为Android并收到错误.
[DCC致命错误] SynCrtSock.pas(253):未找到F2613单位'Contnrs'(单位SynCrtSock;).
{$R *.fmx}
{$R *.LgXhdpiTb.fmx ANDROID}
function Client(const SQL: RawUTF8): RawUTF8;
var
Http: THttpClientSocket;
URI: AnsiString;
begin
if ParamCount<>0 then
URI := AnsiString(ParamStr(1))
else
URI := '192.168.1.20';
Http := OpenHttp(URI,'888');
if Http <> nil then
try
Http.Post('root',SQL,TEXT_CONTENT_TYPE);
result := Http.Content;
finally
Http.Free;
end
else
result := '';
end;
procedure TForm3.TMSFMXButton1Click(Sender: TObject);
begin
ds1.DataSet := JSONToClientDataSet(self,Client('select * from Lists'));
end;
Run Code Online (Sandbox Code Playgroud)
它适用于Win,但不适用于Android.
如何为iOS和Android制作演示?
delphi ×5
delphi-xe2 ×2
mormot ×2
database ×1
delphi-7 ×1
firemonkey ×1
ide ×1
macos ×1
sqlite ×1
tlistbox ×1