تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
السؤال الثاني في الفيجوال بيسك
#1
مرحبا أصدقائي Big Grin
وضعت البارحة سؤالا صعبا بعض الشئ و لكني وجدت من اهل البيسك اجابات كثيرة

راجع الموضوع سؤال بسيط في الفيجوال بيسك

لكن ما رأيكم في ان نزيد التحدي صعوبة ؟؟؟؟؟؟؟؟؟؟؟

هل نستطيع عمل نفس الشئ مع 2 button ام لا :confused:



ما اقصده هو عند الضغط على button 1 يكتب "1"& في textbox الذي كان يحتوي مؤشر الكتابة
و عند الضغط على button 2 يكتب "2"& في textbox الذي كان يحتوي مؤشر الكتابة
و ما اقصده ب "1"& هو انه عند الضغط على button 1 مرتين يكتب "11" و عند الضفط 3 مرات يكتب "111"
اذا اين الأختلاف ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
الفكرة انه عند الضغط على button 1 ثم على button 2 يكتب "12" في المربع الذي كان يحتوي على مؤشر الكتابة
ارجو الا اكون قد اصبت الأعضاء بالملل لكني قد (دخت) لأجد اجابة لهذين السؤالين ..............
كما انه امر سيفيد العديد من مبتدأين الفيجوال بيسك و أولهم انا :o
و شكرا Smile
الرد }}}
تم الشكر بواسطة:
#2
سلام عليكم
هلا وضحت ما هي فائدة الزر الثاني
الرد }}}
تم الشكر بواسطة:
#3
السلام عليكم
لن اضيف الكثير على ما فعله الاخ Aly El-Haddad
وقد اضفت عليه متغيرين ايضا
علما بانك يجب ان تضغط مرة اخرى على صندوق النص الذي تريد الاضافة عليه لانه قد الغي التركيز عليه واصبح على الزر
إقتباس :Public Class Form1


Private txt1 As Boolean = False
Private txt2 As Boolean = False
Private hLastCtrl As New IntPtr
Dim X As Integer
Dim Yy As Integer


Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
For Each C As Control In Me.Controls
AddHandler C.Leave, AddressOf SetLastFocusedControl
Next
End Sub


Private Sub SetLastFocusedControl(ByVal sender As System.Object, ByVal e As System.EventArgs)
hLastCtrl = sender.Handle
End Sub


Private Sub TextBox1_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.Enter
txt2 = False
txt1 = True
End Sub


Private Sub TextBox2_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox2.Enter
txt1 = False
txt2 = True
End Sub


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If (hLastCtrl = TextBox1.Handle) AndAlso txt1 Then
TextBox1.Text &= "1" 'or TextBox1.Text =TextBox1.Text & "1"
txt1 = False
End If
If (hLastCtrl = TextBox2.Handle) AndAlso txt2 Then
TextBox2.Text &= "1" 'or TextBox2.Text =TextBox2.Text & "1"
txt2 = False
End If
End Sub


Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
If (hLastCtrl = TextBox1.Handle) AndAlso txt1 Then
X = Val(TextBox1.Text)
TextBox1.Text = X + 1
txt1 = False
End If
If (hLastCtrl = TextBox2.Handle) AndAlso txt2 Then
Yy = Val(TextBox2.Text)
TextBox2.Text = Yy + 1
txt2 = False
End If
End Sub
End Class
الرد }}}
تم الشكر بواسطة:
#4
محمود اكرم كتب :السلام عليكم
لن اضيف الكثير على ما فعله الاخ Aly El-Haddad
وقد اضفت عليه متغيرين ايضا
علما بانك يجب ان تضغط مرة اخرى على صندوق النص الذي تريد الاضافة عليه لانه قد الغي التركيز عليه واصبح على الزر

شكرا لك اخي لكن اولا عند تجربة الزر button 2 يكتب "1" ليس "2"
ثانيا فكرة الضغط علىالمربع النصي لا بد من الغائها فالفكرة ان تستطيع كتابة "12" بدون الضغط على شئ الا زر 1 ثم زر 2
الرد }}}
تم الشكر بواسطة:
#5
محمود اكرم كتب :سلام عليكم
هلا وضحت ما هي فائدة الزر الثاني
لم تجبني على سؤالي ماذا يفعل الزر الثاني اذا ضغطت عليه اولا
الرد }}}
تم الشكر بواسطة:
#6
boty كتب :السلام عليكم
انا عضو جديد و هذا اول موضوع لي و انا مبتدئ vb.net

السلام عليكم ورحمة الله وبركاته






إكمالاً لما ذكره الأخوة.

لقد ذكرت أنك مبتدئ، وطلبك ليس للمبتدئين، ورغم هذا جرب هذا المثال ولا تسألني شرحه، ولكن غيرك سيفهمه ممن تقدموا في البرمجة...



هناك طريقه أخرى (قد يفيدك الأخوة بمثال له)، وهو بدل Button تستخدم Label لأنه لا يستقبل التركيز Focus (وإن شاهدتها في الأحداث Events) وضع فيه صورة على شكل زر.




السلام عليكم ورحمة الله وبركاته


الملفات المرفقة
.rar   Last TextBox Focus-01.rar (الحجم : 82.05 ك ب / التحميلات : 46)
الرد }}}
تم الشكر بواسطة:
#7

السلام عليكم ورحمة الله وبركاته





وهذا مثال بالطريقتين، مع تحسين الطريقة الأولى






السلام عليكم ورحمة الله وبركاته


الملفات المرفقة
.rar   Last TextBox Focus-02.rar (الحجم : 89.06 ك ب / التحميلات : 31)
الرد }}}
تم الشكر بواسطة:
#8
محمود اكرم كتب :لم تجبني على سؤالي ماذا يفعل الزر الثاني اذا ضغطت عليه اولا

يكتب "2" و اذا ضغطت عليه مرتين يكتب "22" اي "2"&
الرد }}}
تم الشكر بواسطة:
#9
@@أبورائد@@ كتب :
السلام عليكم ورحمة الله وبركاته






إكمالاً لما ذكره الأخوة.

لقد ذكرت أنك مبتدئ، وطلبك ليس للمبتدئين، ورغم هذا جرب هذا المثال ولا تسألني شرحه، ولكن غيرك سيفهمه ممن تقدموا في البرمجة...



هناك طريقه أخرى (قد يفيدك الأخوة بمثال له)، وهو بدل Button تستخدم Label لأنه لا يستقبل التركيز Focus (وإن شاهدتها في الأحداث Events) وضع فيه صورة على شكل زر.




السلام عليكم ورحمة الله وبركاته

اخي قدمت لي مساعدة لن انساها لك شكرا جزيلا سأطلب شرح الكود من الأعضاء لأنك منقطع لعدم التفرغ Smile
الرد }}}
تم الشكر بواسطة:
#10
افادني كثبييييييييييييييييييرا الأخ @@أبورائد@@
و الآن هل هناك من يستطيع شرح الكود الذي كتبه لي أبو الرائد و الذي ساعدني كثيرا
ها هو الكود :

إقتباس :Public Class Form1

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
LastTextBoxFocusSetup()

End Sub

#Region " LastTextBoxFocus "
Private LastTextBoxFocus As Control = New TextBox
Private Sub LastTextBoxFocusSetup()
For Each c As Control In Me.Controls
If TypeOf c Is TextBox Then AddHandler c.LostFocus, AddressOf TextBox_LostFocus
Next
End Sub
Private Sub TextBox_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs)
LastTextBoxFocus = sender
End Sub
#End Region

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
LastTextBoxFocus.Text &= "1"

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
LastTextBoxFocus.Text &= "2"

End Sub



End Class
الرد }}}
تم الشكر بواسطة:



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم