把Java窗口的句柄传递给以个DLL通过windows API 修改窗口区域 就可以咯
在写得过程需要在程序中调用Delphi 的一个库函数
高兴的是偶然的机会得到了一个可以用java 调用delphi 的类库
嘿嘿
- public class Test{
- public static void main(String [] args){
- new FWindow().ShowMe();
- }
- }
- import javax.swing.*;
- import java.awt.*;
- public class FWindow extends JWindow{
- public native void ShowMe();
- public FWindow(){
- this.setSize(500,500);
- this.setVisible(true);
- }
- static
- {
- System.loadLibrary("model");
- }
- }
- library Project1;
- uses
- SysUtils,
- Classes,
- windows,
- JNI,
- jawt_md,
- jawt_info,
- jawt_delphi,
- forms;
- {$R *.res}
- procedure Java_FWindow_ShowMe(PEnv: PJNIEnv; Obj: JObject); stdcall;
- var
- JAWT_Info:TJAWT_Info;
- hwnd:integer;
- ren1:Hrgn;
- begin
- JAWT_Info:=TJAWT_Info.create(PEnv,Obj);
- hwnd:=JAWT_Info.getHWND;
- ren1:=CreateEllipticRgn(27,27,180,180);
- setwindowrgn(hwnd,ren1,true);
- end;
- exports
- Java_FWindow_ShowMe;
- end.