PDA

View Full Version : سوال: تغییر Title در Dialogهای vb.net



mmbguide
چهارشنبه 30 مرداد 1392, 14:35 عصر
سلام به همه

میخواستم بدونم با چه کدی میشه عنوان dialogها رو تو VB.NET 2012 تغییر داد؟

ممنون

Mani_rf
چهارشنبه 30 مرداد 1392, 15:30 عصر
دقیقا کدوم دیالوگ ها؟

mmbguide
چهارشنبه 30 مرداد 1392, 16:06 عصر
Color,Open,Save,FolderBrowser

Mani_rf
چهارشنبه 30 مرداد 1392, 16:40 عصر
همه اینها یک پروپرتی به اسم Title دارن که با عوض کردن اون عنوان اون دیالوگ عوض میشه.

Dim Op As New OpenFileDialog
Op.Title = "آزمایش عنوان دیالوگ"
Op.ShowDialog()

mmbguide
چهارشنبه 30 مرداد 1392, 18:02 عصر
برای open و save کار میکنه اما واسه FolderBrowser و Color کار نکرد.

مهرداد صفا
سه شنبه 05 شهریور 1392, 22:52 عصر
برای open و save کار میکنه اما واسه FolderBrowser و Color کار نکرد.

با سلام.
بعد از نمایش dialog مورد نظر با استفاده از توابعی مثل FindWindow و یا GetActiveWindow و ... هندل پنجره dialog را به دست بیاورید و با استفاده از تابع SetWindowText متن آن را تغییر دهید. به این صورت:

'in the name of god
'اللهم صل علی محمد و آل محمد

Public Class Form1
Public Declare Function FindWindow Lib "user32" (ByVal lpClassName As String, ByVal lpWindowName As String) As IntPtr
Public Declare Unicode Function SetWindowText Lib "user32" Alias "SetWindowTextW" (ByVal hwnd As IntPtr, ByVal lpString As String) As Integer
Public Declare Function GetForegroundWindow Lib "user32" () As IntPtr

Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim folderBrowser As New FolderBrowserDialog
Dim secondThread As New Threading.Thread(Sub()
Threading.Thread.Sleep(50)
Dim folderBrowserHandle As IntPtr = GetForegroundWindow
SetWindowText(folderBrowserHandle, "پوشه مورد نظر را انتخاب کنید")
End Sub)
secondThread.Start()
folderBrowser.ShowDialog()
End Sub
End Class

mmbguide
پنج شنبه 07 شهریور 1392, 13:57 عصر
ممنون از نمونه کد شما. جواب داد.

من تازه کار هستم. میشه کمی درمورد کد توضیح بدید که چجوری کار میکنه؟