Delphi 我的代码之窗体移动
技术交流,DH讲解. 这个工具是好早好早以前写的,我这个喜欢在家边看电影边写写代码或者看电子书,所以经常会将网页移到屏幕的左上角或者右上角,而且要置顶.所以就写了这样一个工具,这个工具主要是对句柄的操作,还有就是窗体样式以及几个API的例子,比较基础. 整个文件在 here(Can't Input Chinese:() 下面把代码贴出来,希望有什么不懂的,结合MSDN,OK? Var
Form2: TForm2;
H: Cardinal = 0;
Implementation
{$R *.dfm}
//------------------------------------------------------------------------------
// 取得鼠标所在处窗体的句柄
//------------------------------------------------------------------------------
Procedure TForm2.BtnGetHandleClick(Sender: TObject);
Var
Pt: TPoint;
Begin
If GetCursorPos(Pt) Then
H := WindowfromPoint(Pt)
Else
H := 0;
End;
//------------------------------------------------------------------------------
// 将窗体置顶
//------------------------------------------------------------------------------
Procedure TForm2.BtnTopMostClick(Sender: TObject);
Var
Rc: TRect;
Begin
If H = 0 Then
Exit;
If GetWindowRect(H, Rc) Then
SetWindowPos(H, HWND_TOPMOST, Rc.Left, Rc.Top, Rc.Right - Rc.Left,
Rc.Bottom - Rc.Top, SWP_SHOWWINDOW)
End;
//------------------------------------------------------------------------------
// 去掉窗体的边框
//------------------------------------------------------------------------------
Procedure TForm2.BtnNoBorderClick(Sender: TObject);
Var
WsStyle: Cardinal;
Begin
If H = 0 Then
Exit;
WsStyle := GetWindowLong(H, GWL_STYLE);
WsStyle := WsStyle And (Not WS_BORDER) And (Not WS_CAPTION);
SetWindowLong(H, GWL_STYLE, WsStyle);
End;
//------------------------------------------------------------------------------
// 移动窗体
//------------------------------------------------------------------------------
Procedure TForm2.BtnMoveClick(Sender: TObject);
Var
Dx, Dy: Integer;
Rc: TRect;
Begin
If H = 0 Then
Exit;
Dx := StrToIntDef(TxtDx.Text, 0);
Dy := StrToInt
相关文档:
同步程序案例
procedure TGetOrderThread.PostDB(webnr:WideString);
var
Err: String;
SetWebnr:WideString;
xmlDoc: IXMLDocument;
root: IXMLNode;
rowc: IXMLNode;//记录数
rows: IXMLNodeList;//主记录列表
row: IXMLNode;
drows: IXMLNodeList;// ......
Day 开头的函数
●
Unit
DateUtils
function DateOf(const Avalue: TDateTime): TDateTime;
描述
使用 DateOf 函数用来把一个 TDateTime 类型的变量转变成一个
只带有日期的 TDateTime 类型变量。
例如:
showmessage(DateTimetostr(dateof(now())));
你得到的是 2003/03/19
而 showmessage(DateTime ......
delphi + java 的分布式应用思考
用delphi做界面层 java业务逻辑层 这样看上去很美吧?
具体的实现
java 做业务逻辑层 应该有多种选择 企业级的有EJB3, 轻量级的有spring
目前在学习ejb3,感觉用来做业务逻辑层真的很不错。spring还没有了解
界面层用delphi,RAD应该是delphi的优势。
关键的问题的如果把 ......
结合Delphi
客户端桌面开发的优势和Java的稳健强壮特性,采用Delphi
Client + Java Server的系统架构应该是很有市场的,经过一段时间的实际项目实践,实现架构是这么实现的,供讨论:
1.后台应用服务层可采用基于Spring+Hibernate的轻量级J2EE实现,并使用Apache XML-RPC
提供客户端调用接口;
2.前台采用 Delphi
......
查找另外一个窗口的句柄: handle := FindWindow(nil,PChar('窗口的标题'));//查到窗体句柄
查找子窗体:childHandle := FindWindowEx(handle,0,'子窗体类','子窗体标题');
另外有个枚举子窗体的API,EnumChildWindows(主创体句柄,@回调函数,用户参数);
用这个函数需要自己写一个回调的函数,比如:
function EnumChil ......