我已将图标放入字符串网格中,但遇到了并非所有图形都对齐的问题。我尝试重新调整文本居中以使图标对齐,但没有成功。我尝试研究位图及其功能,但我还没有(所以我认为)找到任何对我有帮助的东西。有人可以帮我吗?
编辑(来自错误地回答问题时添加的代码):
bitmap := Tbitmap.Create;
bitmap.LoadFromFile('equal.bmp');
bitmap.SetSize(150,60);
stringgrid1.Canvas.StretchDraw(stringgrid1.CellRect(3,J), bitmap);
SetTextAlign(StringGrid1.Canvas.Handle, TA_CENTER);
StringGrid1.Canvas.TextRect(stringgrid1.CellRect(3,J),
(stringgrid1.CellRect(3,J).Left+stringgrid1.CellRect(3,J).Right) div 2,
stringgrid1.CellRect(3,J).Top + 5,StringGrid1.Cells[3,J]);
SetTextAlign(StringGrid1.Canvas.Handle, TA_LEFT);
Run Code Online (Sandbox Code Playgroud) 有没有办法知道服务应用程序只知道其服务名称使用多少内存?
我希望主应用程序线程能够暂停/恢复其他工作线程,假设这是可能的,最好的方法是什么?
任何适用于Windows XP(及更高版本)的建议都非常受欢迎!
PS.我正在使用Delphi 2010和OmniThreadLibrary 3
我想TTime用作a的关键TDictionary,但我遇到了TTime比较的问题,因此我正在寻找替代方案.
我特别的问题是,我正在尝试用一些时间来构建某种议程,用一个TTime对象表示,然后将它们存储在TDictionary它们的顶部坐标旁边.鉴于我想在网格上绘制任务的小时,我可以根据任务的小时轻松地从字典中检索其顶部坐标.不幸的是,它不起作用,因为TTime比较会产生意想不到的结果.我无法使用a从字典中可靠地检索坐标TTime.
我正在使用SQL Server 2005 Management Studio Express和Delphi 2010. Fecha_hora= Date_Time is smalldatetime.
我的日期格式是 dd/mm/yyy
我表中的日期保存如下:
08/01/2013 11:22:00 a.m.
Run Code Online (Sandbox Code Playgroud)
我在德尔福有这个问题,知道在一段时间内销售额会更高; 天/月,在这种情况下,我在2013年1月8日的同一天进行测试:
conect.Q_total_hora.Active:=false;
conect.Q_total_hora.SQL.Clear;
conect.Q_total_hora.SQL.Add('select datepart(hh, fecha_hora) as Hora, sum(Total) as Venta, a.tipo as Tipo');
conect.Q_total_hora.SQL.Add('from ventas v join articulos a on v.id_articulo=a.id_articulo');
conect.Q_total_hora.SQL.Add('where tipo='+char(39)+DBLUCB_tipo.Text+char(39)+' and cast(Convert(varchar(10), fecha_hora, 112) as datetime) between'+char(39)+DateToStr(DateTimePicker_fecha1.Date)+char(39)+ 'and'+char(39)+DateToStr(DateTimePicker_fecha2.Date)+char(39));
conect.Q_total_hora.SQL.Add('group by datepart(hh,fecha_hora), a.tipo order by datepart(hh,fecha_hora) ');
conect.Q_total_hora.Active:=true;
Run Code Online (Sandbox Code Playgroud)
我使用,cast(Convert(varchar(10), fecha_hora, 112) as datetime)因为我在互联网上发现,这样我只能检索日期,没有时间在日期之间检索数据.
在DateTimePickers我选择08/01/20132013年1月8日
我使用备忘录查看查询 memo1.Text:=conect.Q_total_hora.Text;
我收到的查询是:
select datepart(hh, fecha_hora) as …Run Code Online (Sandbox Code Playgroud) 当我以编程方式导致下拉选择列表出现时,我无法弄清楚为什么我无法手动滚动TComboBox组件.这是我正在使用的代码:
SendMessage(ComboBox1.handle, CB_SHOWDROPDOWN, Integer(True), 0);
Run Code Online (Sandbox Code Playgroud)
这会导致下拉选择列表出现.但是,如果我尝试使用键盘并使用向上和向下箭头键,则下拉选择列表会立即关闭.使用键盘上/下导航键时如何防止列表自动关闭?
我这里有一些代码:
procedure TForm1.Button1Click(Sender: TObject);
begin
//Some Codes(1)
Sample;
//Some Codes(2)
end;
Function Sample();
begin
sleep(5000);
end;
Run Code Online (Sandbox Code Playgroud)
在此代码中,//Somecodes(1)应用程序进入Sample功能并等待5秒后,它运行//Somecodes(2)正确吗?这意味着解冻Button1我们必须等待超过5秒钟.
现在,我想要做的事,当应用程序运行//Some Codes(1)和Sample,立即转到下一行(//Somecodes(2)),所以我并不需要等待5秒钟按钮1 Unfreez.
我该怎么做?
我想知道如何通过代码启用 10 个位按钮,而每个位按钮没有 `bitbtn1.enable := true'。
我试过这个,但它不起作用:
for a:= 1 to 10 do
begin
bitbtn+inttostr(a).enabled:=true;
end;
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个问题,或者还有其他方法吗?
谢谢
我希望用户能够按下按钮将 TCheckListBox 重置为其初始状态(没有选中任何框)。
请参阅下面的图片,了解单击按钮后我想要发生的情况的示例:
变成:
我该怎么做呢?我知道可能会涉及一个循环,但我不确定从哪里开始。我在这里先向您的帮助表示感谢。
我一直在使用FindResource,LoadResource和LockResource来访问res文件中的资源.我有一个wave文件,我想通过我的Delphi应用程序提取和播放.
我没有提取就完成了,但这不是我想做的事情.我想先提取波形文件.谁能指出我正确的解决方案?
delphi ×10
delphi-2010 ×10
datetime ×2
delphi-xe2 ×2
delphi-7 ×1
dictionary ×1
resume ×1
service ×1
vcl ×1