PDA

View Full Version : سوال: تغییر دادن عنوان یک پنجره در ویندوز



SAEID2009
پنج شنبه 07 خرداد 1388, 10:58 صبح
سلام به همه استادان گرامی.
یک سوال دارم(هرچی هم توی انجمن گشتم چیزی پیدا نکردم لطفا من رو ببخشید) چه طوری می تونم عنوان یک پنجره رو توی ویندوز تغییر بدم؟مثلا Microsoft Word رو به winword تبدیل کنم.
ممنون میشم کسی سورسش رو بگذاره.

xxxxx_xxxxx
پنج شنبه 07 خرداد 1388, 19:34 عصر
براي اين كار نياز به هندل پنجره موردنظر داريد.
هندل رو به تابع SetWindowTextA بايد بديد كه به صورت زير تعريف ميشه:


Private Declare Function SetWindowTextA Lib "user32.dll" (ByVal hWnd As Long, ByVal lpString As String) As Long


به عنوان مثال براي تغيير دادن عنوان پنجره برنامه خودمون مي تونيد اينطوري استفاده كنيد:


SetWindowTextA Me.hWnd, "Barnamenevis"


اگر عنوان پنجره ديگه اي رو مي خوايد تغيير بديد نياز به هندلش داريد كه با توابع مختلفي مي تونيد هندل رو بدست بياريد. مثل تابع FindWindow
خودتون تلاش كنيد دوست عزيز.

hmrbesharat
پنج شنبه 07 خرداد 1388, 20:08 عصر
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function SetWindowText Lib "user32" Alias "SetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String) As Long
Private Sub cmdRun_Click()
Dim lngHwnd As Long
lngHwnd = FindWindow(vbNullString, Text1.Text)
SetWindowText lngHwnd, Text2.Text
End Sub