我在combobox的dropdown事件中想将下拉框用一个form3来替代,代码如下:
form3.Left:=Combobox1.Left+552*(longint
(screen.width) div orignwidth);
form3.Top:=Combobox1.Top+86*(longint
(screen.height) div orignheight);
form3.Width:=combobox1.Width;
form3.Show;
代码中的552和86这两个数值是调了好久才调到的,我机子的分辨率是1024x768的,程序一拿到分辨率是800x600的机子上用时,form3就走位了。高手请指教。
form3.Left:=Combobox1.Left+552*(longint
(screen.width) div orignwidth);
form3.Top:=Combobox1.Top+86*(longint
(screen.height) div orignheight);
form3.Width:=combobox1.Width;
form3.Show;
代码中的552和86这两个数值是调了好久才调到的,我机子的分辨率是1024x768的,程序一拿到分辨率是800x600的机子上用时,form3就走位了。高手请指教。
解决方案 »
- 我看别人的一些源码时会遇到const WM_XXX=$xxx;问
- Borland公司能否通过分析EXE文件,来确定这个程序是不是盗版Delhpi软件编译的?
- delphi保存图片?各位帮帮忙
- xiangwangz请进!
- 我又回来了,想念大家呀, Delphi中对应Add to Repository的方法是什么
- 这段什么意思
- dbgrideh 只能显示一行数据--提交数据库后才能显示多行
- 是我出的分数太低,还是问题太简单,怎么没人帮助我。
- 好东东推荐!编程助手:MessageBox Express
- 关于在Canvas上画图的问题!我在Canvas上画好图以后,只要移动其他的窗体到CANVAS上那么原来在画布上画的图就不见了!必须重新画,请告诉我该怎么防止重画?
- SQL7.0和Execel2000
- 白痴问题:关于TComboBox
procedure TForm1.ComboBox1DropDown(Sender: TObject);
var pt: TPoint;
begin
with ComboBox1 do
pt := Point(Left, Top+Height);
pt := Form1.ClientToScreen(pt);
Form3.Left := pt.X;
Form3.Top := pt.Y;
Form3.Width := ComboBox1.Width;
Form3.Show;
end;
form3.Top :=ClientOrigin.y+height;
form3.Width:=combobox1.Width;
form3.Show;
with ComboBox1 do
begin
form3.Left:=ClientOrigin.x+width;
form3.Top :=ClientOrigin.y+height;
form3.Width:=Width;
end;
form3.Show;
with ComboBox1 do begin
pt.X := Left;
pt.Y := Top+Height;
end;
因为我想让combobox可以显示两列。我笨,想不到其他方法,又不想用别人的控件,所以....我还是笨。清高手指点