13-07-2011, 09:14 AM
السلام عليكم بعد غياب طويل ها أنا ذا أعود إليكم من جديد .. أخي Micro .هذا كود لتغيير مكان الفورم ،يقوم بقراءة طول وعرض الشاشة ويقوم بتغيير الموضع تلقائيا ولمعرفة لغة النظام أتبع كود الأخ paix144
كود :
//لقراءة ارتفاع شريط المهام function TaskBarHeight: integer;var hTB: HWND; // taskbar handle TBRect: TRect; // taskbar rectanglebegin hTB:= FindWindow('Shell_TrayWnd', ''); if hTB = 0 then Result := 0 else begin GetWindowRect(hTB, TBRect); Result := TBRect.Bottom - TBRect.Top; end;end;procedure TForm1.FormCreate(Sender: TObject);beginForm1.Left:=Screen.Width-Form1.Width;Form1.Top:=Screen.Height-TaskBarHeight-Form1.Height;end;//هذا للنسخ الأجنبية (فرنسي إنجليزي ) والأخر للعربية procedure TForm1.FormCreate(Sender: TObject);beginForm1.Left:=0;Form1.Top:=Screen.Height-TaskBarHeight-Form1.Height;end;إقتباس :أنظر هذا الكود أخي لمعرفة لغة النظام تم التصرف في تغير مكان الفورمكود :procedure TForm1.Button1Click(Sender: TObject);var Ident: Integer; MyLang: PChar;const Size: Integer = 250; begin GetMem(MyLang, Size); Ident:=GetSystemDefaultLangID; VerLanguageName(Ident, MyLang, Size); Label1.Caption:=StrPas(MyLang); FreeMem(MyLang);end;procedure TForm1.Button2Click(Sender: TObject);beginIf label1.Caption='Français (France)' thenshowmessage('France')//change la position de formelse if Label1.Caption='Arabic (Algérie)' thenShowMessage('Algérie')//change la position de la formelseShowMessage('Anglais');end;

