المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : مشكلة في عمل مسابقة


يوسف البراهيم
12-01-2018, 08:20 PM
سلام عليكم



http://gulfup.co/lvse5wnvs5ld

هذا رابط فكرة مشروع مفتوح
مسابقة بين فريقين ظهرت لدي مشكلتان
لدي مشكلتان
المشكلة الاولى بأن الخيارات لللاعب الثاني لا تتغير مكانها ؟
المشكلة الثانية
أريد الأسئلة تظهر اولا للاعب الأول و تنحسب له نقطة اذا اجاب اجابة صحيحة و ثم تظر للاعب الثاني و تنحسب له نقطة اذا اجاب اجابة صحيحة و هكذا عى نفس الصفحة
-----------------------------------
المشرو الثاني نفس الملف المفتوح
لو حبينا نغيير السيناريو قليلا
لو حبيت انا اتحكم بالشخص الذي يجيب بمعنى ممكن اخلي اللاعب الأول يجيب تنحسب له نقطة
و المرة الثانية ممكن ايضا اللاعب الأول هو الذي يجيب و تنحسب له نقطة
بمعنى من يرفع مثلا يده اولا هو الذي يحيب و احسب له النقطة
ولك حالص الشكر

عبد الهادي بهاب
12-01-2018, 10:56 PM
سلام عليكم


ولك حالص الشكر

اولا في الصفحة on show

امحي الامر الخاص بتشغيل xbutton2 و اترك فقط xbutton1


Page.ClickObject("xButton1")


الان في xbutton1 اضف في بداية الكود في الاعلى وهو امر خاص باخفاء العناصر المتعلقة باللاعب الثاني و تفس الشيء مع اللاعب الثاني

Paragraph.SetVisible("Paragraph2", false);
Input.SetVisible("dor2", false);
Label.SetVisible("Label6", false);
for i=5,8 do
Button.SetVisible("Button"..i, false);
end

Paragraph.SetVisible("Paragraph1", true);
Input.SetVisible("dor1", true);
Label.SetVisible("Label1", true);
for i=1,4 do
Button.SetVisible("Button"..i, true);
end

الان في xbutton2 اضق في الاعلى الكود التالي
Paragraph.SetVisible("Paragraph2", true);
Input.SetVisible("dor2", true);
Label.SetVisible("Label6", true);
for i=5,8 do
Button.SetVisible("Button"..i, true);
end

Paragraph.SetVisible("Paragraph1", false);
Input.SetVisible("dor1", false);
Label.SetVisible("Label1", false);
for i=1,4 do
Button.SetVisible("Button"..i, false);
end



الان في الازار من 1 الى 4 غير في الكود الاسفل تشغيل xbutton2
اي ضع

Page.ClickObject("xButton2")


اما في الازار من 5 الى 8

Page.ClickObject("xButton1")

جرب

عبد الهادي بهاب
12-01-2018, 11:21 PM
من اجل السيناريو الثاني:

نضيف dialogEx
اجعله بوضعية flat

https://d.top4top.net/p_7420vxks1.png


ضع فيه زرين
في button1


x=1;
Page.StartTimer(10);

DialogEx.Close();


و في الزر الثاني

x=2;
Page.StartTimer(10);

DialogEx.Close();

في onshow الديالوج

Button.SetText("Button1", w1);
Button.SetText("Button2", w2);


-----------------------------------------
في الصفحة
الان في التايمر امحو الموجود و عوضه بالتالي:
Page.ClickObject("xButton"..x) ;
Page.StopTimer();

في كل الازار في الصفحة من 1 الى 8 عوض السطر الاخير بكود لتشفيل الديالوج


DialogEx.Show("Dialog1")


في خىonshow الصفحة امح الكود الخاص بتشغيل الزر xbutton1

و في الاسفل نضيف كود لتشغيل الدالوج

DialogEx.Show("Dialog1")




جرب

يوسف البراهيم
13-01-2018, 04:43 AM
اولا في الصفحة on show

امحي الامر الخاص بتشغيل xbutton2 و اترك فقط xbutton1


page.clickobject("xbutton1")


الان في xbutton1 اضف في بداية الكود في الاعلى وهو امر خاص باخفاء العناصر المتعلقة باللاعب الثاني و تفس الشيء مع اللاعب الثاني

paragraph.setvisible("paragraph2", false);
input.setvisible("dor2", false);
label.setvisible("label6", false);
for i=5,8 do
button.setvisible("button"..i, false);
end

paragraph.setvisible("paragraph1", true);
input.setvisible("dor1", true);
label.setvisible("label1", true);
for i=1,4 do
button.setvisible("button"..i, true);
end

الان في xbutton2 اضق في الاعلى الكود التالي
paragraph.setvisible("paragraph2", true);
input.setvisible("dor2", true);
label.setvisible("label6", true);
for i=5,8 do
button.setvisible("button"..i, true);
end

paragraph.setvisible("paragraph1", false);
input.setvisible("dor1", false);
label.setvisible("label1", false);
for i=1,4 do
button.setvisible("button"..i, false);
end



الان في الازار من 1 الى 4 غير في الكود الاسفل تشغيل xbutton2
اي ضع

page.clickobject("xbutton2")


اما في الازار من 5 الى 8

page.clickobject("xbutton1")

جرب

الله يعطيك العافية
ضبطت و لكن باقي مشكلة
في اللاعب الثاني
دائما الاجابة الصحيحة تظهر في الزر 5

يوسف البراهيم
13-01-2018, 04:55 AM
من اجل السيناريو الثاني:

نضيف dialogex
اجعله بوضعية flat

https://d.top4top.net/p_7420vxks1.png


ضع فيه زرين
في button1


x=1;
page.starttimer(10);

dialogex.close();


و في الزر الثاني

x=2;
page.starttimer(10);

dialogex.close();

في onshow الديالوج

button.settext("button1", w1);
button.settext("button2", w2);


-----------------------------------------
في الصفحة
الان في التايمر امحو الموجود و عوضه بالتالي:
page.clickobject("xbutton"..x) ;
page.stoptimer();

في كل الازار في الصفحة من 1 الى 8 عوض السطر الاخير بكود لتشفيل الديالوج


dialogex.show("dialog1")


في خىonshow الصفحة امح الكود الخاص بتشغيل الزر xbutton1

و في الاسفل نضيف كود لتشغيل الدالوج

dialogex.show("dialog1")




جرب

الله يعطيك العافية
ايضا هنا مشكلة الاجابة دائما الزر 5 للاعب الثاني

من اين اتعلم كتابة هذه الاكواد
ولك خالص الشكر و التقدير

عبد الهادي بهاب
13-01-2018, 03:10 PM
الله يعطيك العافية
ايضا هنا مشكلة الاجابة دائما الزر 5 للاعب الثاني

من اين اتعلم كتابة هذه الاكواد
ولك خالص الشكر و التقدير

المشكل في تسجيل مواقع الازرار من 5 الى 8 و موقعها في المصفوفة
لذلك غير الكود الموجود في xButton2

Paragraph.SetVisible("Paragraph2", true);
Input.SetVisible("dor2", true);
Label.SetVisible("Label6", true);
for i=5,8 do
Button.SetVisible("Button"..i, true);
end

Paragraph.SetVisible("Paragraph1", false);
Input.SetVisible("dor1", false);
Label.SetVisible("Label1", false);
for i=1,4 do
Button.SetVisible("Button"..i, false);
end



for i=5,8 do
Button.SetProperties("Button"..i,{ButtonFile = "AutoPlay\\Buttons\\gris.btn"});
end

pos={};
for i=1,4 do
pos[i] = Button.GetPos("Button"..i+4);
end
---------------
if ListBox.GetCount("ListBox3") < 1 then
ListBox.DeleteItem("ListBox3", LB_ALLITEMS);
for i = 1 , ListBox.GetCount("ListBox4") do
p = ListBox.GetItemText("ListBox4", i);
b = ListBox.GetItemData("ListBox4", i);
ListBox.AddItem("ListBox3", p, b)
end
end
---------------------
igli2 = Math.Random(1,ListBox.GetCount("ListBox3"));
qus = ListBox.GetItemText("ListBox3", igli2);
Paragraph.SetText("Paragraph2", qus)
-------------------------------------
ala = ListBox.GetItemData("ListBox3", igli2);
f4 = String.Find(ala, ".", 1);
f5 = String.Find(ala, ".", f4+1);
f6 = String.Find(ala, ".",f5+f4+1);
long = String.Length(ala);
v5 = String.Mid(ala, 1, f4-1);
Button.SetText("Button5", v5);
v6 = String.Mid(ala, f4+1, f5-f4-1);
Button.SetText("Button6", v6);
v7 = String.Mid(ala, f5+1, long-f5-f4-1);
Button.SetText("Button7", v7);
v8 = String.Mid(ala, f6+1, long-f6);
Button.SetText("Button8", v8);
------------------------------------------
for i=1,#pos do
ali2 = Math.Random(1,#pos);
Button.SetPos("Button"..i+4,pos[ali2].X ,pos[ali2].Y);
Table.Remove(pos,ali2);
end

ListBox.DeleteItem("ListBox3",igli2);

وهذا من اجل السيناريوهات كلها

عبد الهادي بهاب
13-01-2018, 03:12 PM
اما الاكواد فنجن تعلمنا من المنتدى من الاخوة
من المشاريع المفتوحة و مفهم اكوادها
ثم نطبق عبر مشاريع بسيطة

يوسف البراهيم
13-01-2018, 06:29 PM
اما الاكواد فنجن تعلمنا من المنتدى من الاخوة
من المشاريع المفتوحة و مفهم اكوادها
ثم نطبق عبر مشاريع بسيطة

الله يعطيك العافية

الف شكر

تعلمت و استفدت كثير من مواضيعك
و صرت افهم بعض الاوامر
و مثل ما قلت التجربة أفضل شي للتعلم

عبد الهادي بهاب
13-01-2018, 06:56 PM
الله يعطيك العافية

الف شكر

تعلمت و استفدت كثير من مواضيعك
و صرت افهم بعض الاوامر
و مثل ما قلت التجربة أفضل شي للتعلم

الحمد لله
هل نجح التعديل ؟

يوسف البراهيم
19-01-2018, 07:00 AM
الحمد لله
هل نجح التعديل ؟

ضبط التعديل عزيزي