PDA

View Full Version : سوال: اصلاح کد



Hassan2500
پنج شنبه 28 اردیبهشت 1391, 23:37 عصر
سلام

این سورس مربوط به اینه که اگه تعداد خط های تکست1 از یکی بیشتر بود با زدن دکمه پایین کیبورد فوکوس از خط یک به خط دو برود و اگر دیگر خطی زیرش نبود فوکوس به تکست2 با زدن دکمه بپرد اما هر کاری میکنم هنگام نوشتن کار نمیکنه یعنی وقتی اینتر نمیزنم

Veteran
جمعه 29 اردیبهشت 1391, 08:45 صبح
تست کردم.مشکلی نداشت

محسن واژدی
جمعه 29 اردیبهشت 1391, 16:07 عصر
سلام
همانطور که جناب Verteran هم گفتند سورستون مشکلی نداشت
(Chr(13 را جایگزین (10)Chr کنید شاید مشکل برطرف شد (البته همانطور که گفتم مشکلی نبود)

موفق باشید

Hassan2500
جمعه 29 اردیبهشت 1391, 16:16 عصر
این کد هنگام اینتر زدن داخل تکست1 عمل میکنه ولی هنگام نوشتن که خط ها از دو تا بیشتر میشه عمل نمیکنه من میخوام این حالت هم عمل کنه

محسن واژدی
جمعه 29 اردیبهشت 1391, 17:32 عصر
کد زیر را بررسی کنید:
Private Declare Function SendMessageAsLong Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Const EM_LINEFROMCHAR = &HC9
Const EM_GETLINECOUNT = &HBA

Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
Dim lCL&, lLC&
lCL& = SendMessageAsLong(Text1.hWnd, EM_LINEFROMCHAR, -1, 0) + 1
If KeyCode = vbKeyDown Then
lLC& = SendMessageAsLong(Text1.hWnd, EM_GETLINECOUNT, -1, 0)
If lCL& >= lLC& Then
Text2.SetFocus: KeyCode = 0
End If
End If
End Sub




موفق باشید

Hassan2500
جمعه 29 اردیبهشت 1391, 17:48 عصر
وقتی فوکوس به آخرین خط تکست1 میرسه باید دو بار دکمه پایین را بزنیم تا به تکست 2 بپرد من میخوام یه بار بزنیم بعد بپرد اگه میشه اصلاحش کنید

محسن واژدی
جمعه 29 اردیبهشت 1391, 18:01 عصر
دوباره کد پست 5 را بررسی کنید

موفق باشید