PDA

View Full Version : بدست آوردن متن ادیت کنترل(win32)



m-taheri
شنبه 24 بهمن 1388, 15:19 عصر
با سلام


من میخوام هندل یک ادیت کنترل را بدست بیارم با این کد:


LPTSTR lpString;
HWND hEdit1 = GetDlgItem(hDlg,IDC_EDIT1);
و بعدش میخوام با استفاده از کد زیر متن داخل ادیت کنترل را بدست بیارم


GetWindowText(hEdit1,lpString,100);
ولی هیچ متنی بدست نمیاد

لطفا راهنمائی کنید

A_Salimi
شنبه 24 بهمن 1388, 17:03 عصر
تا جایی که اطلاع دارم بهتره بجای استفاده از LPTSTR از نوع TCHAR استفاده کنید.


TCHAR lpstring[100]

Nima_NF
یک شنبه 25 بهمن 1388, 02:06 صبح
LPTSTR در حالت اسکی یعنی اشاره گر به یک char.

در زبان C/C++ اشاره گر به کارکتر با یک رشته فرق می کند، یا باید به آن حافظه تخصیص دهید، یا اینکه آدرس رشته ای را به آن ارسال کنید.

پس اگر منظورتان اشاره گز نیست، همان طوری که در مثال شما مد نظر هست، باید یک رشته با طول مشخص تعریف کنید. بعنی همان چیزی که جناب Salimi در فوق اشاره کردند.

m-taheri
یک شنبه 25 بهمن 1388, 14:25 عصر
ممنون مشکل حل شد .


LPTSTR lpString = new WCHAR[100];