إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

تطلع لي رسالة

تقليص
هذا الموضوع مغلق.
X
X
 
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • تطلع لي رسالة

    السلام عليكم
    حملت احد المشاريع المفتوحة
    و نطلع لي رسالة كما في الصورة التالية
    https://f.top4top.net/p_721kinko1.png

  • #2
    ضروري احد يجيب

    تعليق


    • #3
      ما في احد في المنتدى يحل هذه المشكلة

      شكل الكل مشغول

      تعليق


      • #4
        هل من حل ؟

        تعليق


        • #5
          السلام عليكم ورحمة الله وبركاته
          احتمال نقص إضافة
          ضع الملف المفتوح افضل

          تعليق


          • #6
            المشاركة الأصلية بواسطة محمد بن أحمد أبو حذيفة مشاهدة المشاركة
            السلام عليكم ورحمة الله وبركاته
            احتمال نقص إضافة
            ضع الملف المفتوح افضل
            https://up.top4top.net/downloadf-722vee531-rar.html.

            تفضل عزيزي
            مع ملاحظة وضع الاضافات المطلوبة بس بعد تظهر لي رسالة خطأ

            تعليق


            • #7
              1.تنقصك الاضافة animate
              2.الملف منجز بالنسخة 7.5 وانت تفتح فيه بالنسخة 8 فما فوق
              3. هناك اكواد تغييرها
              Ancienne syntaxe

              for x, y in my_table do
              Dialog.Message(x, y)
              end
              Nouvelle syntaxe

              for x, y in pairs(my_table) do
              Dialog.Message(x, y)
              end
              ملاحظة : انا ايضا خرج لي نفسر الخطـأ

              تعليق


              • #8
                المشاركة الأصلية بواسطة فرح صالحي مشاهدة المشاركة
                1.تنقصك الاضافة animate
                2.الملف منجز بالنسخة 7.5 وانت تفتح فيه بالنسخة 8 فما فوق
                3. هناك اكواد تغييرها
                ancienne syntaxe

                for x, y in my_table do
                dialog.message(x, y)
                end
                nouvelle syntaxe

                for x, y in pairs(my_table) do
                dialog.message(x, y)
                end
                ملاحظة : انا ايضا خرج لي نفسر الخطـأ
                الاضافة من أين الحصول عليها

                الأكواد هذه و ين أضغها

                و لك خالص الشكر و التقدير

                تعليق


                • #9
                  في Global Functions
                  مجرد تغيير صيغة
                  الموجود بهذا الشكل for x, y in my_table do
                  تحوله الى هذا الشكل for x, y in pairs(my_table) do وبحول الله سيشتغل الملف
                  و السلام عليكم ورحمة الله وبركاته

                  تعليق


                  • #10
                    المشاركة الأصلية بواسطة فرح صالحي مشاهدة المشاركة
                    في global functions
                    مجرد تغيير صيغة
                    الموجود بهذا الشكل for x, y in my_table do
                    تحوله الى هذا الشكل for x, y in pairs(my_table) do وبحول الله سيشتغل الملف
                    و السلام عليكم ورحمة الله وبركاته
                    سطر رقم كم ؟
                    لأن دورت نفس هالسطر ما حصلته
                    مو موجود هالسطر عندي عزيزي

                    تعليق


                    • #11
                      الاسطر :18/71/85/95/117/194

                      تعليق


                      • #12
                        المشاركة الأصلية بواسطة فرح صالحي مشاهدة المشاركة
                        الاسطر :18/71/85/95/117/194
                        ما ضبطت معي اختي

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

                        تعليق


                        • #13
                          انتظر احد الأعضاء إصلاح الملف

                          الف شكر

                          تعليق


                          • #14
                            ضع هذا الكود في مكان القديم في global functions
                            كود:
                            --##################################################################################################
                            --##  This function is used on the Radiobutton to select the clicked item as the choosen answer
                            --##################################################################################################
                            
                            function RBSelect(sRBName)
                            	--Get the number of the radio button
                            	nA = String.ToNumber(String.Right(sRBName, 1));
                            	
                            	--Get the checked state
                            	if RadioButton.GetChecked(sRBName) then
                            		
                            		--If checked then set the xml path for the answer to selected
                            		XML.SetAttribute(strXMLPath.."/answer:"..nA, "selected", "y");
                            		Paragraph.SetProperties("Answer"..nA, {FontWeight=700,BorderStyle=1});
                            		
                            		--Remove the selected option from the other answers 
                            		--as only one item should be selected at a time.
                            		for x = 1,4 do
                            			if nA ~= x then
                            				XML.RemoveAttribute(strXMLPath.."/answer:"..x, "selected");
                            				Paragraph.SetProperties("Answer"..x, {FontWeight=400,BorderStyle=0});
                            			end
                            		end
                            	end
                            end
                            
                            --##################################################################################################
                            --##  This function is used on the CheckBox to select the clicked item as the choosen answer
                            --##################################################################################################
                            
                            function CBSelect(sCBName)
                            	--Get the number of the Checkbox
                            	nA = String.ToNumber(String.Right(sCBName, 1));
                            	
                            	--Get the checked state
                            	if CheckBox.GetChecked(sCBName) then
                            		--If checked then set the xml path for the answer to selected
                            		XML.SetAttribute(strXMLPath.."/answer:"..nA, "selected", "y");
                            		
                            		--set color for the border.  FFFFFF = white 0000FF = blue
                            		--this is used to visually distinguish which items were selected
                            		nBColor = Math.HexColorToNumber("0000FF");
                            		Paragraph.SetProperties("Answer"..nA, {FontWeight=700,BorderColor=nBColor});
                            	
                            	--If the CheckBox is not checked then perform the following actions
                            	--These actions will reset the answer to it's default state
                            	elseif not CheckBox.GetChecked(sCBName) then
                            		XML.RemoveAttribute(strXMLPath.."/answer:"..nA, "selected");
                            		Paragraph.SetProperties("Answer"..nA, {FontWeight=400,BorderColor=0});
                            	end
                            end
                            
                            --##################################################################################################
                            --##  This function is used to populate the question and answer fields in the quiz
                            --##################################################################################################
                            
                            function PopulateQuiz(nQuesNum)
                            	
                            	local nCQ = tbRnd[nQuesNum]
                            	-- set the path for the question including the question number
                            	strXMLPath = "quiz/items/item:".. nCQ;
                            	
                            	--Extract the first question
                            	local sQuestion = XML.GetValue(strXMLPath .."/question");
                            	Paragraph.SetText("P-Question", "السؤال "..nQuesNum.." من :"..nQtA.."\r\n"..sQuestion);
                            	
                            	--Extract the question type
                            	local sQType = XML.GetAttribute(strXMLPath .."/question", "type");
                            	
                            	--Reset the answer objects as well as the CheckBoxes and Radio Buttons on the page.
                            	for x = 1,4 do
                            		RadioButton.SetVisible("RadioButton"..x, false);
                            		RadioButton.SetChecked("RadioButton"..x, false);
                            		CheckBox.SetVisible("CheckBox"..x, false);
                            		CheckBox.SetChecked("CheckBox"..x, false);
                            		Paragraph.SetVisible("Answer"..x, false);
                            		Paragraph.SetProperties("Answer"..x, {Text="",FontWeight=400,BorderStyle=1,BorderColor=0});
                            	end
                            	
                            	--Check the question type so we kwow if we should use the 
                            	--Check boxes or Radio buttons
                            	if sQType == "ms" then
                            		
                            		---Show and populate the appropriate objects if the question is Multi-select
                            		for x = 1,XML.Count(strXMLPath, "answer") do
                            			CheckBox.SetVisible("CheckBox"..x, true);
                            			Paragraph.SetVisible("Answer"..x, true);
                            			Paragraph.SetText("Answer"..x, XML.GetValue(strXMLPath.."/answer:"..x));
                            		end
                            		
                            	---Show and populate the appropriate objects if the question is Multiple Choice or True/False
                            	elseif sQType == "mc" or sQType == "tf" then
                            
                            		---Show and populate the appropriate objects
                            		for x = 1,XML.Count(strXMLPath, "answer")) do
                            			RadioButton.SetVisible("RadioButton"..x, true);
                            			Paragraph.SetVisible("Answer"..x, true);
                            			Paragraph.SetText("Answer"..x, XML.GetValue(strXMLPath.."/answer:"..x));
                            		end
                            	end
                            end
                            
                            --##################################################################################################
                            --##  This function is used to score the quiz.
                            --##  This function will return a table containing the number of correct answers
                            --##  and the users score as a numerical percentage.
                            --##################################################################################################
                            
                            function ScoreQuiz(tbQuiz)
                            	--by loading the table that contains the list of questions asked in the quiz
                            	--we will use that same table to step through the loaded XML file to 
                            	--score the quiz
                            	local nCorrect = 0;
                            	local tbReturn = {};
                            	
                            	--Use a for loop to step through each question asked and score if correct.
                            	for i,v in pairs(tbQuiz) do
                            		--get the path to the question
                            		local strXMLPath = "quiz/items/item:".. v;
                            		
                            		--Set boolean variable to a default of true
                            		local bCorrect = true
                            		
                            		--Step through each answer to see if they were answered correctly
                            		--If any answer was incorrectly selected then bCorrect will be set to false
                            		for x = 1,XML.Count(strXMLPath, "answer") do
                            
                            			--Check to see if the answer was correctly selected
                            			--The correct attribute for the answer should match the selected attribute inorder to be correct
                            			if XML.GetAttribute(strXMLPath.."/answer:"..x, "correct") ~= XML.GetAttribute(strXMLPath.."/answer:"..x, "selected") then
                            				
                            				--If they don't match then mark this answer as incorrect and break out of the loop
                            				bCorrect = false
                            				break; --This will break out of the for loop
                            			end 
                            		end
                            		
                            		--If all the answers were correctly selected then increment nCorrect by one.
                            		if bCorrect then
                            			nCorrect = nCorrect+1;
                            		end			
                            	end
                            	--Populate the tbReturn table to be exported for this function
                            	tbReturn.Correct = nCorrect;
                            	tbReturn.Score = Math.Round((nCorrect/Table.Count(tbQuiz))*100,0);
                            	return tbReturn;
                            end
                            
                            --##################################################################################################
                            --##  This function is used to perform a page clickobject when the answer is clicked on the page
                            --##################################################################################################
                            
                            function ClickSelect(nObj)
                            	-- If the checkbos is visible perform the following actions
                            	if CheckBox.IsVisible("CheckBox"..nObj) then
                            	
                            		--The following actions will toggle the state of the checkbox
                            		if CheckBox.GetChecked("CheckBox"..nObj) then
                            			CheckBox.SetChecked("CheckBox"..nObj, false);
                            		else
                            			CheckBox.SetChecked("CheckBox"..nObj, true);
                            		end
                            		
                            		--After setting the state of the checkbox this action will then click on the object
                            		Page.ClickObject("CheckBox"..nObj);
                            	else
                            		--The following action will check the radio box and then click on the object.
                            		RadioButton.SetChecked("RadioButton"..nObj, true);
                            		Page.ClickObject("RadioButton"..nObj);
                            	end
                            end
                            
                            
                            
                            
                            
                            
                            
                            
                            ------------------------------------------------------------------------------ تحريك الصور  ----------------
                            --Enter global declarations and functions here...
                            --Like Worm's Function only with some additional features
                            function HitTestEx()
                            	local mi
                            	local mtblPos
                            	local mObject
                            	local mtblObj
                            	local mtblPos = nil
                            	local mtblDimension = nil
                            	local mtblHits = {}
                            	local mType
                            	
                            	mtblObj = Page.EnumerateObjects()
                            	for mi, mObject in pairs (mtblObj) do
                            		mObjType = Page.GetObjectType(mObject)
                            		
                            		------
                            		if mObjType == OBJECT_IMAGE then
                            			mtblPos = Image.GetPos(mObject)
                            			mtblDimension = Image.GetSize(mObject)
                            		
                            		end
                            		if mtblPos then
                            			mX=String.ToNumber(DLL.CallFunction("AutoPlay\\Docs\\mouse.dll", "GetMouseX", Application.GetWndHandle(), DLL_RETURN_TYPE_LONG, DLL_CALL_STDCALL))
                            			mY=String.ToNumber(DLL.CallFunction("AutoPlay\\Docs\\mouse.dll", "GetMouseY", Application.GetWndHandle(), DLL_RETURN_TYPE_LONG, DLL_CALL_STDCALL))
                            			if (mtblPos.X <= mX) and (mX <= (mtblPos.X + mtblDimension.Width)) then
                            				if (mY >= mtblPos.Y) and (mY <= (mtblPos.Y + mtblDimension.Height)) then
                            					mtblHits[Table.Count(mtblHits) + 1] = {Type = mObjType, Name = mObject, Xpos=mtblPos.X, Ypos=mtblPos.Y};
                            				end
                            			end
                            		end
                            	end
                            	return mtblHits;
                            end
                            
                            --This Functions moves any object
                            function MoveObject(strObName,nObType,nXPos,nYPos)
                            	if nObType == OBJECT_IMAGE then
                            		mtblPos = Image.SetPos(strObName,nXPos,nYPos);
                            	
                            	end
                            end
                            
                            -----
                            -----
                            -----
                            مع الشكر للاخ ثامر صاحب العمل

                            تعليق


                            • #15
                              المشاركة الأصلية بواسطة فرح صالحي مشاهدة المشاركة
                              ضع هذا الكود في مكان القديم في global functions
                              كود:
                              --##################################################################################################
                              --##  this function is used on the radiobutton to select the clicked item as the choosen answer
                              --##################################################################################################
                              
                              function rbselect(srbname)
                              	--get the number of the radio button
                              	na = string.tonumber(string.right(srbname, 1));
                              	
                              	--get the checked state
                              	if radiobutton.getchecked(srbname) then
                              		
                              		--if checked then set the xml path for the answer to selected
                              		xml.setattribute(strxmlpath.."/answer:"..na, "selected", "y");
                              		paragraph.setproperties("answer"..na, {fontweight=700,borderstyle=1});
                              		
                              		--remove the selected option from the other answers 
                              		--as only one item should be selected at a time.
                              		For x = 1,4 do
                              			if na ~= x then
                              				xml.removeattribute(strxmlpath.."/answer:"..x, "selected");
                              				paragraph.setproperties("answer"..x, {fontweight=400,borderstyle=0});
                              			end
                              		end
                              	end
                              end
                              
                              --##################################################################################################
                              --##  this function is used on the checkbox to select the clicked item as the choosen answer
                              --##################################################################################################
                              
                              function cbselect(scbname)
                              	--get the number of the checkbox
                              	na = string.tonumber(string.right(scbname, 1));
                              	
                              	--get the checked state
                              	if checkbox.getchecked(scbname) then
                              		--if checked then set the xml path for the answer to selected
                              		xml.setattribute(strxmlpath.."/answer:"..na, "selected", "y");
                              		
                              		--set color for the border.  Ffffff = white 0000ff = blue
                              		--this is used to visually distinguish which items were selected
                              		nbcolor = math.hexcolortonumber("0000ff");
                              		paragraph.setproperties("answer"..na, {fontweight=700,bordercolor=nbcolor});
                              	
                              	--if the checkbox is not checked then perform the following actions
                              	--these actions will reset the answer to it's default state
                              	elseif not checkbox.getchecked(scbname) then
                              		xml.removeattribute(strxmlpath.."/answer:"..na, "selected");
                              		paragraph.setproperties("answer"..na, {fontweight=400,bordercolor=0});
                              	end
                              end
                              
                              --##################################################################################################
                              --##  this function is used to populate the question and answer fields in the quiz
                              --##################################################################################################
                              
                              function populatequiz(nquesnum)
                              	
                              	local ncq = tbrnd[nquesnum]
                              	-- set the path for the question including the question number
                              	strxmlpath = "quiz/items/item:".. Ncq;
                              	
                              	--extract the first question
                              	local squestion = xml.getvalue(strxmlpath .."/question");
                              	paragraph.settext("p-question", "السؤال "..nquesnum.." من :"..nqta.."\r\n"..squestion);
                              	
                              	--extract the question type
                              	local sqtype = xml.getattribute(strxmlpath .."/question", "type");
                              	
                              	--reset the answer objects as well as the checkboxes and radio buttons on the page.
                              	For x = 1,4 do
                              		radiobutton.setvisible("radiobutton"..x, false);
                              		radiobutton.setchecked("radiobutton"..x, false);
                              		checkbox.setvisible("checkbox"..x, false);
                              		checkbox.setchecked("checkbox"..x, false);
                              		paragraph.setvisible("answer"..x, false);
                              		paragraph.setproperties("answer"..x, {text="",fontweight=400,borderstyle=1,bordercolor=0});
                              	end
                              	
                              	--check the question type so we kwow if we should use the 
                              	--check boxes or radio buttons
                              	if sqtype == "ms" then
                              		
                              		---show and populate the appropriate objects if the question is multi-select
                              		for x = 1,xml.count(strxmlpath, "answer") do
                              			checkbox.setvisible("checkbox"..x, true);
                              			paragraph.setvisible("answer"..x, true);
                              			paragraph.settext("answer"..x, xml.getvalue(strxmlpath.."/answer:"..x));
                              		end
                              		
                              	---show and populate the appropriate objects if the question is multiple choice or true/false
                              	elseif sqtype == "mc" or sqtype == "tf" then
                              
                              		---show and populate the appropriate objects
                              		for x = 1,xml.count(strxmlpath, "answer")) do
                              			radiobutton.setvisible("radiobutton"..x, true);
                              			paragraph.setvisible("answer"..x, true);
                              			paragraph.settext("answer"..x, xml.getvalue(strxmlpath.."/answer:"..x));
                              		end
                              	end
                              end
                              
                              --##################################################################################################
                              --##  this function is used to score the quiz.
                              --##  this function will return a table containing the number of correct answers
                              --##  and the users score as a numerical percentage.
                              --##################################################################################################
                              
                              function scorequiz(tbquiz)
                              	--by loading the table that contains the list of questions asked in the quiz
                              	--we will use that same table to step through the loaded xml file to 
                              	--score the quiz
                              	local ncorrect = 0;
                              	local tbreturn = {};
                              	
                              	--use a for loop to step through each question asked and score if correct.
                              	For i,v in pairs(tbquiz) do
                              		--get the path to the question
                              		local strxmlpath = "quiz/items/item:".. V;
                              		
                              		--set boolean variable to a default of true
                              		local bcorrect = true
                              		
                              		--step through each answer to see if they were answered correctly
                              		--if any answer was incorrectly selected then bcorrect will be set to false
                              		for x = 1,xml.count(strxmlpath, "answer") do
                              
                              			--check to see if the answer was correctly selected
                              			--the correct attribute for the answer should match the selected attribute inorder to be correct
                              			if xml.getattribute(strxmlpath.."/answer:"..x, "correct") ~= xml.getattribute(strxmlpath.."/answer:"..x, "selected") then
                              				
                              				--if they don't match then mark this answer as incorrect and break out of the loop
                              				bcorrect = false
                              				break; --this will break out of the for loop
                              			end 
                              		end
                              		
                              		--if all the answers were correctly selected then increment ncorrect by one.
                              		If bcorrect then
                              			ncorrect = ncorrect+1;
                              		end			
                              	end
                              	--populate the tbreturn table to be exported for this function
                              	tbreturn.correct = ncorrect;
                              	tbreturn.score = math.round((ncorrect/table.count(tbquiz))*100,0);
                              	return tbreturn;
                              end
                              
                              --##################################################################################################
                              --##  this function is used to perform a page clickobject when the answer is clicked on the page
                              --##################################################################################################
                              
                              function clickselect(nobj)
                              	-- if the checkbos is visible perform the following actions
                              	if checkbox.isvisible("checkbox"..nobj) then
                              	
                              		--the following actions will toggle the state of the checkbox
                              		if checkbox.getchecked("checkbox"..nobj) then
                              			checkbox.setchecked("checkbox"..nobj, false);
                              		else
                              			checkbox.setchecked("checkbox"..nobj, true);
                              		end
                              		
                              		--after setting the state of the checkbox this action will then click on the object
                              		page.clickobject("checkbox"..nobj);
                              	else
                              		--the following action will check the radio box and then click on the object.
                              		Radiobutton.setchecked("radiobutton"..nobj, true);
                              		page.clickobject("radiobutton"..nobj);
                              	end
                              end
                              
                              
                              
                              
                              
                              
                              
                              
                              ------------------------------------------------------------------------------ تحريك الصور  ----------------
                              --enter global declarations and functions here...
                              --like worm's function only with some additional features
                              function hittestex()
                              	local mi
                              	local mtblpos
                              	local mobject
                              	local mtblobj
                              	local mtblpos = nil
                              	local mtbldimension = nil
                              	local mtblhits = {}
                              	local mtype
                              	
                              	mtblobj = page.enumerateobjects()
                              	for mi, mobject in pairs (mtblobj) do
                              		mobjtype = page.getobjecttype(mobject)
                              		
                              		------
                              		if mobjtype == object_image then
                              			mtblpos = image.getpos(mobject)
                              			mtbldimension = image.getsize(mobject)
                              		
                              		end
                              		if mtblpos then
                              			mx=string.tonumber(dll.callfunction("autoplay\\docs\\mouse.dll", "getmousex", application.getwndhandle(), dll_return_type_long, dll_call_stdcall))
                              			my=string.tonumber(dll.callfunction("autoplay\\docs\\mouse.dll", "getmousey", application.getwndhandle(), dll_return_type_long, dll_call_stdcall))
                              			if (mtblpos.x <= mx) and (mx <= (mtblpos.x + mtbldimension.width)) then
                              				if (my >= mtblpos.y) and (my <= (mtblpos.y + mtbldimension.height)) then
                              					mtblhits[table.count(mtblhits) + 1] = {type = mobjtype, name = mobject, xpos=mtblpos.x, ypos=mtblpos.y};
                              				end
                              			end
                              		end
                              	end
                              	return mtblhits;
                              end
                              
                              --this functions moves any object
                              function moveobject(strobname,nobtype,nxpos,nypos)
                              	if nobtype == object_image then
                              		mtblpos = image.setpos(strobname,nxpos,nypos);
                              	
                              	end
                              end
                              
                              -----
                              -----
                              -----
                              مع الشكر للاخ ثامر صاحب العمل

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

                              ولكن تطلع لي هالرسالة الموجودة في المرفقات
                              عند معاينة العمل
                              الملفات المرفقة

                              تعليق

                              مواضيع تهمك

                              تقليص

                              المنتدى: القسم العام نشرت بواسطة: ماريا عبد الله الوقت: 06-08-2025 الساعة 11:33 PM
                              المنتدى: القسم العام نشرت بواسطة: ماريا عبد الله الوقت: 06-04-2025 الساعة 05:29 PM
                              المنتدى: القسم العام نشرت بواسطة: ماريا عبد الله الوقت: 05-31-2025 الساعة 10:07 PM
                              المنتدى: القسم العام نشرت بواسطة: ماريا عبد الله الوقت: 05-30-2025 الساعة 11:48 PM
                              المنتدى: التصنيع والانتاج نشرت بواسطة: HaMooooDi الوقت: 05-30-2025 الساعة 09:36 AM
                              يعمل...
                              X