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

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

ملف مفتوح متجدد ... البحث في القران الكريم

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

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

    ساضع لحضراتكم ملفا مفتوحا مركبا من الكودين
    اي البحث في القران الكريم من خلال قاعدة بيانات تتكون من ملفات تكست txt
    و البحث من خلال قاعدة بيانات واحدة DB


    الملف المفتوح للتعديل و الاستغلال:

    https://top4top.io/downloadf-1536aj5k91-rar.html

    بالتوفيق

    تعليق


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

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



      الملف المفتوح
      https://top4top.io/downloadf-1537jrstd1-rar.html

      تعليق


      • #18
        السلام عليكم
        الان سنتطرق الى خاصية جديدة و هي امكانية البحث في سور معينة
        مثلا نريد احصاء كلمة ( الحي ) فقط في سورة البقرة و آل عمران و سورة الرحمن و يس
        لذلك سنضيف عنصر جديد ChecBox لما نضغط عليه سيظهر لنا قامة ليسبوكس بحيث نفعل خاصية الاختيار Check في ListBox
        وهذا يظهر عبر DialogEx لما يختار المستخدم السور نجمع ارقامها في مصفوفة
        و نعود الى زر البحث
        نضيف شرطا جديدا وهو لما يضغط ChocBox الثالث يبحث البرنامج فقط في السور التي احترناها
        الان يجب ان نفعل التايمر كي يضغط هوزر البحث بعد غلق الديالوج ........طريقة تفعيل زر من خلال ديالوج ......

        اذن يصبح كود البحث



        كود PHP:
        Page.StopTimer();
        s=SQLite.QueryToTable(db"select * from Ncoran");
        ListBox.DeleteItem("ListBox1"LB_ALLITEMS);
        Input.SetText("Input_Info_Display""");
        Label.SetText("Label1""");
        istibdalate={["َ"] = "",["ً"] = "",["ُ"] = "",["ِ"] = "",["ْ"] = "",["ّ"] = "",["ِ"] = "",["ٌ"] = ""
        ali Input.GetText("Input1"); if ali == "" then
          Dialog
        .Message("تنبيه","اكتب ما تريد البحث عنه");
          
        Page.SetFocus("Input1");

        else
        result4 string.gsub (ali".",istibdalate
        tol=0;
        -------
        chercher sora ----------------------------------------------------
        if  
        CheckBox.GetChecked("CheckBox1") == true then
          
        if Mys == "" then
          Dialog
        .Message("تنبيه","اختر سورة من قامة السور التي تريد البحث فيها");
          else
          ---------------------------
          for 
        i,v in pairs(s.Data) do
          if 
        Mys == s.Data[i]["Sora_Num"then
          m 
        s.Data[i]["Aya_text"]; if ~= " " then
          abou_belkiss 
        string.gsub (m".",istibdalate
          
        String.Find(abou_belkiss,result41false);
          if 
        g~= -1 then tol=tol+1;
          
        ListBox.AddItem("ListBox1"s.Data[i]["Sora_text"].."("..s.Data[i]["Aya_Num"]..")"s.Data[i]["Aya_text"].."\r\n".."\r\n"..s.Data[i]["Aya_Num"]);
          
        end end
          end
          end
            Label
        .SetText("Label1"tol);
          ----------------------
          
        end
        ---in man sor--------------
        elseif 
        CheckBox.GetChecked("CheckBox3") == true then

        for i,v in pairs(s.Data) do
          for 
        cop,com in pairs(Nsora) do ala ""..com;
             if 
        ala == s.Data[i]["Sora_Num"then
             m 
        s.Data[i]["Aya_text"]; if ~= " " then
             abou_belkiss 
        string.gsub (m".",istibdalate
             
        String.Find(abou_belkiss,result41false);
               if 
        g~= -1 then tol=tol+1;
               
        ListBox.AddItem("ListBox1"s.Data[i]["Sora_text"].."("..s.Data[i]["Aya_Num"]..")"s.Data[i]["Aya_text"].."\r\n".."\r\n".."الآية رقم "..s.Data[i]["Aya_Num"]);
              
        end end
            end
          end
         end 
        Label
        .SetText("Label1"tol);


        ------------------
        elseif 
        CheckBox.GetChecked("CheckBox2") == true then
        for i,v in pairs(s.Data) do
          
        s.Data[i]["Aya_text"]; if ~= " " then
          abou_belkiss 
        string.gsub (m".",istibdalate
          
        String.Find(abou_belkiss,result41false);
          if 
        g~= -1 then tol=tol+1;
          
        ListBox.AddItem("ListBox1"s.Data[i]["Sora_text"].."("..s.Data[i]["Aya_Num"]..")"s.Data[i]["Aya_text"].."\r\n".."\r\n".."الآية رقم "..s.Data[i]["Aya_Num"]);
          
        end end
        end
         
        Label
        .SetText("Label1"tol);
        end
        end

        Input
        .SetText("Input1""");
        Page.ClickObject("Hotspot2"); 
        الشكل بعد التعديل



        الملف المفتوح لمزيد من الايضاح

        https://top4top.io/downloadf-1537xlrca1-rar.html
        بالتوفيق

        تعليق


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

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





          ما العمل ؟

          سنضع ملف تكست txt فيه كل الكلمات ذات العلاقة بالموضوع يعني سنضع ملف و نضع فيه الحيوانات ( يمكن ان تجد موضوعات مشابهة في النت )



          من باب التعامل مع الملفات يكون بالعربية مزعجاغ نوعا ما ... سنضيف ملف تكست نسميه theme و نضع فيه المواضيع التي جمعنا الكلمات المتعلقة بكل واحد منها
          على ان نعيد تسمية ملفات تكست المواضيع برقم السطر في ملف theme
          يعني السطر الاول هو غزوات و معارك في السطر الاول ...الملف الخاص بالغزوات نسميه 1 ...... السطر الثاني أشجار ... ملف تكست الاشجار نسميها 2 و هكذا على هذا الشكل



          الملفات نضعها في ملف مستقل داخل docs نسميه theme

          الان ساحة العمل ... نضيف ChecBox4 وهو سيظهر لنا combobox يحتوي على الموايع المقترحة وهو نص التكست theme
          لما يختار المستخدم موضوعا سيقوم زر البحث بالبحث عن مفردات الموضوع في المصحف كله و سيظهر النتائج في ليسبوكس

          --------------
          كي لا ينتظر المستخدم سنضيف عنصر progress بحيث يظهر عملية تقدم البحث
          سنجعل طوله هو عدد اسطر جدول قاعدة الباينات اي عدد ايات المصحف كله


          و بالتالي سيزداد كود زر البحث تعقيدا

          كود PHP:
          Page.StopTimer();
          Progress.SetCurrentPos("Progress1"0);
          s=SQLite.QueryToTable(db"select * from Ncoran");
          Progress.SetRange("Progress1"0#s.Data);
          ListBox.DeleteItem("ListBox1"LB_ALLITEMS);
          Input.SetText("Input_Info_Display""");
          Label.SetText("Label1""");
          istibdalate={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
          ali Input.GetText("Input1"); 
          result4 string.gsub (ali".",istibdalate
          tol=0;
          ---------- 
          serch vide ----------
          if 
          ali == "" then
            Dialog
          .Message("ÊäÈíå","ÇßÊÈ ãÇ ÊÑíÏ ÇáÈÍË Úäå");
            
          Page.SetFocus("Input1");

          else


          ------- 
          tach  sora1----------------------------------------------------
          if  
          CheckBox.GetChecked("CheckBox1") == true then
            
          if Mys == "" then
            Dialog
          .Message("ÊäÈíå","ÇÎÊÑ ÓæÑÉ ãä ÞÇãÉ ÇáÓæÑ ÇáÊí ÊÑíÏ ÇáÈÍË ÝíåÇ");
            else
            ---------------------------
            for 
          i,v in pairs(s.Data) do
            
            if 
          Mys == s.Data[i]["Sora_Num"then
            m 
          s.Data[i]["Aya_text"]; 
               if 
          ~= " " then
            istibdalate
          ={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
            
          abou_belkiss string.gsub (m".",istibdalate
            
          String.Find(abou_belkiss,result41false);
            if 
          g~= -1 then tol=tol+1;
            
          ListBox.AddItem("ListBox1"s.Data[i]["Sora_text"].."("..s.Data[i]["Aya_Num"]..")"s.Data[i]["Aya_text"].."\r\n".."\r\n"..s.Data[i]["Aya_Num"]);
            
          end end 
            end 
              Progress
          .SetCurrentPos("Progress1"i);
            
          end
            end
              Label
          .SetText("Label1"tol);
            ----------------------
            
          ---  
          tach soar katira--------------
          elseif 
          CheckBox.GetChecked("CheckBox3") == true then

            
          for i,v in pairs(s.Data) do
            for 
          cop,com in pairs(Nsora) do ala ""..com;
               if 
          ala == s.Data[i]["Sora_Num"then
               m 
          s.Data[i]["Aya_text"]; 
               if 
          ~= " " then
               istibdalate
          ={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
               
          abou_belkiss string.gsub (m".",istibdalate
               
          String.Find(abou_belkiss,result41false);
                 if 
          g~= -1 then tol=tol+1;
                 
          ListBox.AddItem("ListBox1"s.Data[i]["Sora_text"].."("..s.Data[i]["Aya_Num"]..")"s.Data[i]["Aya_text"].."\r\n".."\r\n".."ÇáÂíÉ ÑÞã "..s.Data[i]["Aya_Num"]);
                
          end end
              end
             end 
            Progress
          .SetCurrentPos("Progress1"i);
            
          end 
            Label
          .SetText("Label1"tol);
          ------------- 
          theme -------------   
          elseif 
          CheckBox.GetChecked("CheckBox4") == true then

            
          for i,v in pairs(s.Data) do
            for 
          cop,ala in pairs(Mytheme) do 
             ---------------
               
          istibdalate={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
               
          ala string.gsub (ala".",istibdalate
                ---------
               
          s.Data[i]["Aya_text"]; 
               if 
          ~= " " then
               istibdalate
          ={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
               
          abou_belkiss string.gsub (m".",istibdalate
               
          String.Find(abou_belkiss,ala1false);
                 if 
          g~= -1 then tol=tol+1;
                 
          Progress.SetCurrentPos("Progress1"i);
                 
          ListBox.AddItem("ListBox1"s.Data[i]["Sora_text"].."("..s.Data[i]["Aya_Num"]..")"s.Data[i]["Aya_text"].."\r\n".."\r\n".."ÇáÂíÉ ÑÞã "..s.Data[i]["Aya_Num"]);
                
          end end
              end
             Progress
          .SetCurrentPos("Progress1"i);
             
          end 
             Label
          .SetText("Label1"tol);

          -------------
          tach  tous mashaf -----
          elseif 
          CheckBox.GetChecked("CheckBox2") == true then
          for i,v in pairs(s.Data) do
            
          s.Data[i]["Aya_text"]; 
            if 
          ~= " " then
            istibdalate
          ={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
            
          abou_belkiss string.gsub (m".",istibdalate
            
          String.Find(abou_belkiss,result41false);
            if 
          g~= -1 then tol=tol+1;
            
          Progress.SetCurrentPos("Progress1"i);
            
          ListBox.AddItem("ListBox1"s.Data[i]["Sora_text"].."("..s.Data[i]["Aya_Num"]..")"s.Data[i]["Aya_text"].."\r\n".."\r\n".."ÇáÂíÉ ÑÞã "..s.Data[i]["Aya_Num"]);
            
          end end
            Progress
          .SetCurrentPos("Progress1"i);
           
          end
           
          Label
          .SetText("Label1"tol);
          end ---------
          end
          -----------------------------------------------------
          Mys="";

          ListBox.SelectItem("ListBox1"1)
          ---
          Input.SetText("Input1""");
          ---
          Page.ClickObject("Hotspot2"); 
          الملف المفتوح لاكثر توضيح
          https://top4top.io/downloadf-1538t44sn1-rar.html

          بالتوفيق

          تعليق


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

            اليوم مع فكرة جديدة و خاصية جديدة

            وهي كيف يمكن البحث عن اكثر من كلمة او عبارة

            يعني اريد ان ابحث عن كلمة ( محمد ) سيظهر 4 نتائج
            و لما اريد ان ابحث عن كلمة (همزة) سيظهر نتيجة واحدة
            اريد ان ابحث عنهما جميعا (محمد همزة) ............. النتيجة 0
            اذن ما العمل ؟
            اولا البحث عن عبارة و ليس كلمة
            اي العبارة الاولى ( الحمد لله)22 نتيجة .. و الثانية ( سبحان الله ) 9نتائج ... و كلمة (محمد) 4 نتائج
            الان ما العمل معا الجميع ؟

            --------------------
            نطالب المستخدم بضرورة استعمال علامة معينة للفصل بين العبارات و لتكن علامة الناقص (-) في مجموعة الارقام
            سنجعل الكود يجمع العبارات منفصلة و ليضعها في مصفوفة اي مجموعة
            ---------------------------------
            الفصل بين العبارات بينها علامة (-)
            -------------------------------
            ملاحظة : هناك فرق بين البحث عن (يس) و عن ( يس) وهن ( يس ) ؟؟ ....... هل ادركت الفرق ؟ لا .....اشتري نظارة ...........
            الفرق في المسافة قبل و بعد الكلمة
            مثلا ( نفق) مع مسافة من الامام ------6 نتائج (نفقا -2 نفقة -نفقاتهم -نفقه -نفقد )
            (نفق ) مسافة فقط في الاخير .....8 نتائج ( 5 ينفق -2 أنفق - فلينفق )
            ( نفق ) مسافة من الامام و الخلف ......... 0 نتئجة
            -----------------

            الان سنعمل على كود فصل العبارات
            ----------------
            العمل :
            ضع انبوت + زر
            ضع في الزر الكود التالي :

            كود PHP:
             ali Input.GetText("Input1");
             
            PosWord={};  x=1
             
            repeat
             
            New = String.Find(ali"-"1);
             if New ~= -
            1 then  
             alla 
            String.Mid(ali1, New); 
             
            assia String.Mid(alla1,#alla-1);
             
            ali String.Replace(alialla"");  
             --------------
             
            repeat
             verf 
            String.Left(assia11); 
             if 
            verf == " " then   assia String.Mid(assia2#assia-1);end
             
            until verf ~= " ";
             --------------
            repeat
             verf 
            String.Right(assia1); 
             if 
            verf == " " then   assia String.Mid(assia1#assia-1);end
             
            until verf ~= " " ;

             -------------
            PosWord[x] = assia  x=x+1;   end
             until 
            New == -1;  

            repeat
             verf 
            String.Right(ali1); 
             if 
            verf == " " then   ali String.Mid(ali1#ali-1);end
             
            until verf ~= " " ;
             
            PosWord[x] = ali ;  
             
            ---  
            6red------------------------
            elhadi "";
            for 
            i,v in pairs(PosWord) do
            elhadi elhadi..v.."\r\n";
            end
            Dialog
            .Message("",elhadi); 
            جرب من اجل ( الحمد لله - محمد - سورة الحاقة - سبحانك) ...... سيفصل بينها مع الغاء المسافة قبل و بعد



            بالتوفيق متابعة جيدة

            تعليق


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

              الان سندمج الكود التالي في كود زر البحث و سيزداد طولا و غموضا لمن يراه للمرة الاولى
              اولا اذا كان الكلمة واحدة فقط اي لا وجود لعلامة (-) يعمي اننا نريد البحث عن العبارة كلها

              سنضيف شرطا اذا لم يجد علامة (-) فان المصفوفة مجموعة الكلمات ستحتوي فقط على عنصر واحد
              و الا فستضم المصفوفة كل العبارات بينها (-)

              ثم سنحدف منها التشكيل و نضيفها لمجموع الكود كله ليصبح هكذا

              كود PHP:
              Page.StopTimer();
              Progress.SetCurrentPos("Progress1"0);
              s=SQLite.QueryToTable(db"select * from Ncoran");
              Progress.SetRange("Progress1"0#s.Data);
              ListBox.DeleteItem("ListBox1"LB_ALLITEMS);
              Input.SetText("Input_Info_Display""");
              Label.SetText("Label1""");
              istibdalate={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
              ali Input.GetText("Input1"); 
              result4 string.gsub (ali".",istibdalate
              tol=0;
              ---------- 
              serch vide ----------
              if 
              ali == "" then
                Dialog
              .Message("ÊäÈíå","ÇßÊÈ ãÇ ÊÑíÏ ÇáÈÍË Úäå");
                
              Page.SetFocus("Input1");

              else
               ---------- 
              trouve "-" ---------------
               
              ali result4;
               
              PosWord={};  x=1hh=""f=1;
               
              sopi String.Find(ali"-"1);
               if 
              sopi ~= -1 then  
               
              --------------------------
                
              repeat
               
              New = String.Find(ali"-"1);
               if New ~= -
              1 then  
               alla 
              String.Mid(ali1, New); 
               
              assia String.Mid(alla1,#alla-1);
               
              ali String.Replace(alialla"");  
               ---
              dellet espace left-----------
               
              repeat
               verf 
              String.Left(assia11); 
               if 
              verf == " " then   assia String.Mid(assia2#assia-1);end
               
              until verf ~= " ";
               ---------
              dellet espace right-----
              repeat
               verf 
              String.Right(assia1); 
               if 
              verf == " " then   assia String.Mid(assia1#assia-1);end
               
              until verf ~= " " ;
               -------------
              PosWord[x] = assia  x=x+1;   end
               until 
              New == -1;  
              ------------- 
              espace rightfinal--------
              repeat
               verf 
              String.Right(ali1); 
               if 
              verf == " " then   ali String.Mid(ali1#ali-1);end
               
              until verf ~= " " ;
               
              PosWord[x] = ali ;  
               
               ------------
               else  
              PosWord= {} ; PosWord[1] = ali end
              ----------

               for 
              baka,Wword in pairs(PosWord) do
               
              ------- 
              tach  sora1----------------------------------------------------
              if  
              CheckBox.GetChecked("CheckBox1") == true then
                
              if Mys == "" then
                Dialog
              .Message("ÊäÈíå","ÇÎÊÑ ÓæÑÉ ãä ÞÇãÉ ÇáÓæÑ ÇáÊí ÊÑíÏ ÇáÈÍË ÝíåÇ");
                else
                ---------------------------
                for 
              i,v in pairs(s.Data) do
                
                if 
              Mys == s.Data[i]["Sora_Num"then
                 
              ----------------
                 
              s.Data[i]["Aya_text"]; 
                   if 
              ~= " " then
                istibdalate
              ={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
                
              abou_belkiss string.gsub (m".",istibdalate);
                -----------------
                 
              String.Find(abou_belkiss,Wword1false);
                if 
              g~= -1 then tol=tol+1;
                
              ListBox.AddItem("ListBox1"s.Data[i]["Sora_text"].."("..s.Data[i]["Aya_Num"]..")"s.Data[i]["Aya_text"].."\r\n".."\r\n"..s.Data[i]["Aya_Num"]);
                
              end end 
                end 
                  Progress
              .SetCurrentPos("Progress1"i);
                
              end
              Label
              .SetText("Label1"tol);
              end
              ---  tach soar katira--------------
              elseif 
              CheckBox.GetChecked("CheckBox3") == true then
                
                
              for i,v in pairs(s.Data) do
                for 
              cop,com in pairs(Nsora) do ala ""..com;
                   if 
              ala == s.Data[i]["Sora_Num"then
                   m 
              s.Data[i]["Aya_text"]; 
                   if 
              ~= " " then
                   istibdalate
              ={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
                   
              abou_belkiss string.gsub (m".",istibdalate
                   
              String.Find(abou_belkiss,Wword1false);
                     if 
              g~= -1 then tol=tol+1;
                     
              ListBox.AddItem("ListBox1"s.Data[i]["Sora_text"].."("..s.Data[i]["Aya_Num"]..")"s.Data[i]["Aya_text"].."\r\n".."\r\n".."ÇáÂíÉ ÑÞã "..s.Data[i]["Aya_Num"]);
                    
              end end
                  end end
                 
                Progress
              .SetCurrentPos("Progress1"i);
                
              end 
                Label
              .SetText("Label1"tol);
              ------------- 
              theme -------------   
              elseif 
              CheckBox.GetChecked("CheckBox4") == true then

                
              for i,v in pairs(s.Data) do
                for 
              cop,ala in pairs(Mytheme) do 
                 ---------------
                   
              istibdalate={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
                   
              ala string.gsub (ala".",istibdalate
                    ---------
                   
              s.Data[i]["Aya_text"]; 
                   if 
              ~= " " then
                   istibdalate
              ={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
                   
              abou_belkiss string.gsub (m".",istibdalate
                    
              String.Find(abou_belkiss,ala1false);
                     if 
              g~= -1 then tol=tol+1;
                     
              Progress.SetCurrentPos("Progress1"i);
                     
              ListBox.AddItem("ListBox1"s.Data[i]["Sora_text"].."("..s.Data[i]["Aya_Num"]..")"s.Data[i]["Aya_text"].."\r\n".."\r\n".."ÇáÂíÉ ÑÞã "..s.Data[i]["Aya_Num"]);
                    
              end end
                  end 
                 Progress
              .SetCurrentPos("Progress1"i);
                 
              end 
                 Label
              .SetText("Label1"tol);

              -------------
              tach  tous mashaf -----
              elseif 
              CheckBox.GetChecked("CheckBox2") == true then

               
               
              for i,v in pairs(s.Data) do
                
              s.Data[i]["Aya_text"]; 
                if 
              ~= " " then
                istibdalate
              ={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
                
              abou_belkiss string.gsub (m".",istibdalate
                 
              String.Find(abou_belkissWword1false);
                 if 
              g~= -1 then tol=tol+1;
                
              ListBox.AddItem("ListBox1"s.Data[i]["Sora_text"].."("..s.Data[i]["Aya_Num"]..")"s.Data[i]["Aya_text"].."\r\n".."\r\n".."ÇáÂíÉ ÑÞã "..s.Data[i]["Aya_Num"]);
                
              end end 
                Progress
              .SetCurrentPos("Progress1"i);
               
              end 
               Label
              .SetText("Label1"tol);

              ------------------------ 
              word --------------
              end -------elsecheckobox--
              end
              end
              -----------------------------------------------------
              ListBox.SelectItem("ListBox1"1)
              ---
              Input.SetText("Input1""");
              ---
              Page.ClickObject("Hotspot2"); 

              تعليق


              • #22
                الان سنجمع كل ما سبق في عملنا حول البحث في القران الكريم
                و سيصبح الشكل الاخير كالتالي



                الملف المفتوح المعدل بالخاصية الجديدة
                https://top4top.io/downloadf-1538feu7c1-rar.html

                بالتوفيق

                تعليق


                • #23
                  https://www.youtube.com/watch?v=Ugj5...ature=youtu.be

                  تعليق


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

                    كيف حالكم اليوم ؟ كورونا ووووووو تبقى في التاريخ

                    ----------------
                    اليوم مع خاصية جديدة و هي قراءة نص الاية التي وجدناها في قائمة البحث
                    ----------------
                    اولا ضروري يكون عندك ملف لكل ايات القران الكريم مقطعة بالايات
                    وفيه عمل جبار قام به الاخوة في الكثير من المواقع
                    اختر ما تشاء من المقرئين و حمله او حملها كلها كما تريد
                    فانت من تحدد باستعمال الكود
                    ------------------------
                    https://archive.org/details/6236-ful...older-114-file
                    للتحميل مباشرة
                    https://ia801901.us.archive.org/9/it...d-alghamdy.zip


                    هذا مثلا المصحف بصوت الشيخ سعد الغامدي
                    حمله و ضعه في فولدر في ملف Audio و سميه quran
                    سنعتمد طريقة التسمية في الكود لقاءة الصوت المطلوب
                    -------------------
                    اذن العمل :
                    سنضيف ليسبوكس 2 و نجعله مخفيا
                    في كود البحث لما يظهر في ليسبوكس1 الاول الايات
                    سيسجل ضمنيا في ليسبوكس2 رقم السورة ...و رقم الاية
                    وهو الذي سيعتمد عليه كود قراءة الايات

                    ---------------------
                    اعني اسفل تسجيل النتائج سنضيف سطر
                    كود PHP:
                       ListBox.AddItem("ListBox2"s.Data[i]["Sora_Num"], s.Data[i]["Aya_Num"]); 
                    ليصبح كود البحث الطويل كالاتي

                    كود PHP:
                    Page.StopTimer();
                    Audio.Stop(CHANNEL_NARRATION)
                    Progress.SetCurrentPos("Progress1"0);
                    s=SQLite.QueryToTable(db"select * from Ncoran");
                    Progress.SetRange("Progress1"0#s.Data);
                    ListBox.DeleteItem("ListBox1"LB_ALLITEMS);
                    ListBox.DeleteItem("ListBox2"LB_ALLITEMS);

                    Input.SetText("Input_Info_Display""");
                    Label.SetText("Label1""");
                    tol=0
                    istibdalate={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
                    ali Input.GetText("Input1"); 
                    result4 string.gsub (ali".",istibdalate); 

                    ---------- 
                    serch vide ----------
                    if 
                    ali == "" then
                      Dialog
                    .Message("ÊäÈíå","ÇßÊÈ ãÇ ÊÑíÏ ÇáÈÍË Úäå");
                      
                    Page.SetFocus("Input1");

                    else
                     ---------- 
                    trouve "-" ---------------
                     
                    ali result4;
                     
                    PosWord={};  x=1hh=""f=1;
                     
                    sopi String.Find(ali"-"1);
                     if 
                    sopi ~= -1 then  
                     
                    --------------------------
                      
                    repeat
                     
                    New = String.Find(ali"-"1);
                     if New ~= -
                    1 then  
                     alla 
                    String.Mid(ali1, New); 
                     
                    assia String.Mid(alla1,#alla-1);
                     
                    ali String.Replace(alialla"");  
                     ---
                    dellet espace left-----------
                     
                    repeat
                     verf 
                    String.Left(assia11); 
                     if 
                    verf == " " then   assia String.Mid(assia2#assia-1);end
                     
                    until verf ~= " ";
                     ---------
                    dellet espace right-----
                    repeat
                     verf 
                    String.Right(assia1); 
                     if 
                    verf == " " then   assia String.Mid(assia1#assia-1);end
                     
                    until verf ~= " " ;
                     -------------
                    PosWord[x] = assia  x=x+1;   end
                     until 
                    New == -1;  
                    ------------- 
                    espace rightfinal--------
                    repeat
                     verf 
                    String.Right(ali1); 
                     if 
                    verf == " " then   ali String.Mid(ali1#ali-1);end
                     
                    until verf ~= " " ;
                     
                    PosWord[x] = ali ;  
                     
                     ------------
                     else  
                    PosWord= {} ; PosWord[1] = ali end
                    ----------

                     for 
                    baka,Wword in pairs(PosWord) do
                     
                    ------- 
                    tach  sora1----------------------------------------------------
                    if  
                    CheckBox.GetChecked("CheckBox1") == true then
                      
                    if Mys == "" then
                      Dialog
                    .Message("ÊäÈíå","ÇÎÊÑ ÓæÑÉ ãä ÞÇãÉ ÇáÓæÑ ÇáÊí ÊÑíÏ ÇáÈÍË ÝíåÇ");
                      else
                      ---------------------------
                      for 
                    i,v in pairs(s.Data) do
                      
                      if 
                    Mys == s.Data[i]["Sora_Num"then
                       
                    ----------------
                       
                    s.Data[i]["Aya_text"]; 
                         if 
                    ~= " " then
                      istibdalate
                    ={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
                      
                    abou_belkiss string.gsub (m".",istibdalate);
                      -----------------
                       
                    String.Find(abou_belkiss,Wword1false);
                      if 
                    g~= -1 then 
                      ListBox
                    .AddItem("ListBox1"s.Data[i]["Sora_text"].."("..s.Data[i]["Aya_Num"]..")"s.Data[i]["Aya_text"].."\r\n".."\r\n"..s.Data[i]["Aya_Num"]);
                       
                    ListBox.AddItem("ListBox2"s.Data[i]["Sora_Num"], s.Data[i]["Aya_Num"]);
                      
                    tol tol+1;           
                      
                    end end 
                      end 
                        Progress
                    .SetCurrentPos("Progress1"i);
                      
                    end
                    Label
                    .SetText("Label1"tol);
                    end
                    ---  tach soar katira--------------
                    elseif 
                    CheckBox.GetChecked("CheckBox3") == true then
                      
                      
                    for i,v in pairs(s.Data) do
                      for 
                    cop,com in pairs(Nsora) do ala ""..com;
                         if 
                    ala == s.Data[i]["Sora_Num"then
                         m 
                    s.Data[i]["Aya_text"]; 
                         if 
                    ~= " " then
                         istibdalate
                    ={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
                         
                    abou_belkiss string.gsub (m".",istibdalate
                         
                    String.Find(abou_belkiss,Wword1false);
                           if 
                    g~= -1 then 
                           ListBox
                    .AddItem("ListBox1"s.Data[i]["Sora_text"].."("..s.Data[i]["Aya_Num"]..")"s.Data[i]["Aya_text"].."\r\n".."\r\n".."ÇáÂíÉ ÑÞã "..s.Data[i]["Aya_Num"]);
                           
                    tol=tol+1;
                          
                    ListBox.AddItem("ListBox2"s.Data[i]["Sora_Num"], s.Data[i]["Aya_Num"]);
                         
                    end end
                        end end
                       
                      Progress
                    .SetCurrentPos("Progress1"i);
                      
                    end 
                      Label
                    .SetText("Label1"tol);
                    ------------- 
                    theme -------------   
                    elseif 
                    CheckBox.GetChecked("CheckBox4") == true then

                      
                    for i,v in pairs(s.Data) do
                      for 
                    cop,ala in pairs(Mytheme) do 
                       ---------------
                         
                    istibdalate={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
                         
                    ala string.gsub (ala".",istibdalate
                          ---------
                         
                    s.Data[i]["Aya_text"]; 
                         if 
                    ~= " " then
                         istibdalate
                    ={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
                         
                    abou_belkiss string.gsub (m".",istibdalate
                          
                    String.Find(abou_belkiss,ala1false);
                           if 
                    g~= -1 then 
                           ListBox
                    .AddItem("ListBox1"s.Data[i]["Sora_text"].."("..s.Data[i]["Aya_Num"]..")"s.Data[i]["Aya_text"].."\r\n".."\r\n".."ÇáÂíÉ ÑÞã "..s.Data[i]["Aya_Num"]);
                          
                    ListBox.AddItem("ListBox2"s.Data[i]["Sora_Num"], s.Data[i]["Aya_Num"]);
                          
                    tol=tol+1;
                          
                    end end
                        end 
                       Progress
                    .SetCurrentPos("Progress1"i);
                       
                    end 
                       Label
                    .SetText("Label1"tol);

                    -------------
                    tach  tous mashaf -----
                    elseif 
                    CheckBox.GetChecked("CheckBox2") == true then

                     
                     
                    for i,v in pairs(s.Data) do
                      
                    s.Data[i]["Aya_text"]; 
                      if 
                    ~= " " then
                      istibdalate
                    ={["ó"] = "",["ð"] = "",["õ"] = "",["ö"] = "",["ú"] = "",["ø"] = "",["ö"] = "",["ñ"] = ""
                      
                    abou_belkiss string.gsub (m".",istibdalate
                       
                    String.Find(abou_belkissWword1false);
                       if 
                    g~= -1 then 
                      ListBox
                    .AddItem("ListBox1"s.Data[i]["Sora_text"].."("..s.Data[i]["Aya_Num"]..")"s.Data[i]["Aya_text"].."\r\n".."\r\n".."ÇáÂíÉ ÑÞã "..s.Data[i]["Aya_Num"]);
                       
                    ListBox.AddItem("ListBox2"s.Data[i]["Sora_Num"], s.Data[i]["Aya_Num"]);
                       
                    tol=tol+1;
                      
                    end end 
                      Progress
                    .SetCurrentPos("Progress1"i);
                     
                    end 
                     Label
                    .SetText("Label1"tol);

                    ------------------------ 
                    word --------------
                    end -------elsecheckobox--
                    end
                    end
                    -----------------------------------------------------
                    ListBox.SelectItem("ListBox1"1

                    نضيف في الاسفل زر و ضعه على شكل بوق مثلا


                    نضع فيه الكود التالي
                    كود PHP:
                    Raya =  ListBox.GetItemData("ListBox2"AudioAya);
                    Rsora ListBox.GetItemText("ListBox2"AudioAya);
                    ------------- 
                    name ayaettes -------------
                    if 
                    String.ToNumber(Rsora) < 10 then Rsora "00"..Rsora;
                    elseif  
                    String.ToNumber(Rsora) > and String.ToNumber(Rsora) < 100 then Rsora "0"..Rsora
                    elseif 
                    String.ToNumber(Rsora) > 99 then Rsora ""..Rsora;
                    end

                    if String.ToNumber(Raya) < 10 then Raya Rsora.."00"..Raya;
                    elseif  
                    String.ToNumber(Raya) > and String.ToNumber(Raya) < 100 then Raya Rsora.."0"..Raya
                    elseif  
                    String.ToNumber(Raya) > 99 then  Raya Rsora..Raya
                    end

                    Audio
                    .Load(CHANNEL_NARRATION"AutoPlay\\Audio\\quran\\"..Rsora.."\\"..Raya..".mp3"true); 
                    بالتوفيق سنرفع لكم الملف المفتوح لمن يحتاجه

                    شكرا

                    تعليق


                    • #25
                      لما تحمل ملف القران لمقرئ ما و تفط الضغط
                      ستجد الملفات على هذا الشكل و الترقيم



                      الملف المفتوح للتعديل
                      http://www.mediafire.com/file/2gjtm1...sherc.apz/file

                      ​​​​​​​بالتوفيق في اعمالكم

                      تعليق


                      • #26
                        لمن اراد المصحف الشريف مقسم ايات للعديد من المقرئين

                        https://archive.org/search.php?query...ort=-downloads

                        ​​​​​​​بالتوفيق

                        تعليق


                        • #27
                          السلام عليكم ورحمة الله وبركاته
                          متابع معكم مشروع برنامج بحث و عرض للايات القرآنية
                          ---------------
                          اليوم سنضيف
                          - خاصية القراءة المتزامنة للايات
                          - زر لعرض الاية السابقة
                          - زر لعرض الاية التالية

                          -----------


                          كما يظهر في الشكل في عنصر القراءة المتزامنة
                          سنفترض متغير lecture و نعطيه قيمة او نص ما و نضعه في onshow

                          كود PHP:
                          lecture "NSonAuto"
                          و نعني به لما يكون بهذا النص لن تشتغل القراءة المتزامنة
                          لكن اذا كانت
                          كود PHP:
                          lecture == "SonAuto"
                          يعني ان القراءة ستكون متزامنة .....كيف سنجعل اليسبوكس كلما غير المستخدم اختيار عنصر من القائمة اليا اوتماتيكيا سيغل البرنامج زر استظهار الصوت
                          اذن سنضيف عنصر CheckBox5 و عندما يكون مفعلا سيكون المتغير SonAuto و لما يكون غير مفعل ستصيح قيمة المتغير NSonAuto

                          --------------------------------------------------
                          الان مع زر عرض الاية التالية ....... سنعتمد على رقمالاختيار من اليسبوكس ... و بالتالي لما نغضط على هذا الزر سيضيف 1 الى السطر و يشغل اليسبوكس ........الاشكالية لما بصل الى الحد الاقصى لعنصر اليسبوكس و هي في مشوعنا tol التي نستخدمها في زر البحث ... سيذهب الى العنصر الاول .........و بالتالي كود الزر سيكون كالاتي
                          كود PHP:
                          if tSelected then
                          if tSelected[1] == tol then
                          ListBox
                          .SelectItem("ListBox1"1);
                          else
                          ListBox.SelectItem("ListBox1",tSelected[1]+1);
                          end
                          end 
                          الان العلمية ستكون عكسية مع زر الايات السابقة اي سنتعمل علامة - 1 .........و لما يصل الى العنصر الاول من اليسبوكس سيكون التالي هو tol اي قيمة عدد عناصر اليسبوكس

                          كود PHP:
                          if tSelected then
                          if tSelected[1] ==  1 then
                          ListBox
                          .SelectItem("ListBox1"tol);
                          else
                          ListBox.SelectItem("ListBox1"tSelected[1]-1);
                          end
                          end 
                          -------------------------------
                          ملاحظة : من اجل ان يظهر تعليق اسفل الزر بمجرد مرور الماووس ليخبرنا محتوى الزر على هذا الشكل



                          لذلك يجب ان تضغط على الزر مرتين لتظهر لنا خصاصه نختار منها الثانية Attributes في الاسفل نختار ToolTip



                          ----------------------------

                          الملف المفتوح جاهزا لتعديتكم و ابدعاتكم

                          http://www.mediafire.com/file/zec2ok...audio.apz/file

                          بالتوفيق

                          تعليق


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

                            نواصل معكم في مشروعنا الان مع خاصية نسخ المحتوى و تصديره في ملف تكست يختار المستخدم مكان حفظه
                            ----------------
                            خاصية نسخ نتائج البحث
                            ---------------
                            ببساطة نضيف زر جديد نسميه مثلا( نسخ النتائج ) او اي شكل تريده
                            نجمع من اليستبوكس من كل سطر اسم السورة ......و نص الاية الذي هو موجود في data
                            سنحفظ الناج في ملف نسميه باسم محتوى البحث اي input
                            نضيف له في الاعلى عنوان ( نتائج البحث عن .....)


                            كود PHP:
                            Titre "äÊÇÆÌ ÇáÈÍË Úä :"..Input.GetText("Input1");
                            CopyAyaettes "";

                            for 
                            =1,tol do
                            NaSora ListBox.GetItemText("ListBox1"i);
                            NaAya  ListBox.GetItemData("ListBox1"i);
                            CopyAyaettes CopyAyaettes ..NaSora .."\r\n"..NaAya .."\r\n" .."\r\n" .."\r\n";
                            end

                            CopyAyaettes 
                            Titre .."\r\n".. "\r\n"..CopyAyaettes ;
                            folder Dialog.FolderBrowse("ÇÎÊÑ ÇáãÌáÏ "_DesktopFolder);
                            TextFile.WriteFromString(folder.."\\"..Input.GetText("Input1")..".txt"CopyAyaettes);
                            File.Open(folder.."\\"..Input.GetText("Input1")..".txt"""SW_SHOWNORMAL); 




                            بالتوفيق

                            تعليق


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

                              عودة لمشروعنا حول البحث في القرآن الكريم
                              اليوم مع خاصية الاحزاب و الأجزاء و الارباع
                              نحن نعلم ان المصحف مقسم الى اجزاء كل جزء الى حزبين و كل حزب الى 4 ارباع
                              الاصل ان نعيد بناء قاعدة البيانات من جديد لكن سنتغل الموجود
                              الان مع التقسيم ........ بعد البحث في المواقع وجدت ملفا لتقسيم المصحف الى ارباع


                              الملف تكست للتحميل
                              https://top4top.io/downloadf-1545oa6ic1-rar.html

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


                              الان سنفككه الى 7 ملفات واحد للاجزاء و الاخر للاحزاب و اخر للارباع ثم السورة البداية - الاية بداية الربع - السورة النهاية - و ال ملف السابع لاخر اية من الربع

                              سنغير ملف البحث بحيث سيبحث عن رقم الاية في الملفات السابقة اي يبحث عن السورة ثم موقع الاية في اي ربع و يعرض النتائج في النتيجة اسفل الاية
                              و يكون الشكل الجديدي للمشروع


                              طبعا الشرط هذاسنضيفه قبل عرض النتائج في اليسبوكس
                              لاستدعاء القيم في مصفوفات متفرقة في اعلى كود البحث
                              (طبعا يمكن جمعها في كود واحد لكن اتجهت للاسهل )

                              كود PHP:
                              Hiz TextFile.ReadToTable("AutoPlay\\Docs\\CoranH.txt");
                              Joz TextFile.ReadToTable("AutoPlay\\Docs\\CoranJ.txt");
                              Rob TextFile.ReadToTable("AutoPlay\\Docs\\CoranR.txt");
                              Bsora TextFile.ReadToTable("AutoPlay\\Docs\\CoranBs.txt");
                              Baya TextFile.ReadToTable("AutoPlay\\Docs\\CoranBa.txt");
                              Nsora TextFile.ReadToTable("AutoPlay\\Docs\\CoranNs.txt");
                              Naya TextFile.ReadToTable("AutoPlay\\Docs\\CoranNa.txt"); 
                              نضيفه في كود البحث قبل اليسبوكس
                              كود PHP:
                              for j,bs in pairs(Bsora) do
                                
                                if 
                              tonumber(bs) == tonumber(s.Data[i]["Sora_Num"]) and tonumber(bs) == tonumber(Nsora[j]) 
                                and  
                              tonumber(s.Data[i]["Aya_Num"]) >= tonumber(Baya[j]) and tonumber(s.Data[i]["Aya_Num"]) <= tonumber(Naya[j]) then
                                Num_J 
                              Joz[j]; Num_H Hiz[j];NRR Rob[j]; 
                                
                                elseif 
                              tonumber(bs) == tonumber(s.Data[i]["Sora_Num"]) and tonumber(bs) < tonumber(Nsora[j]) and   tonumber(s.Data[i]["Aya_Num"]) >= tonumber(Baya[j]) 
                                or 
                              tonumber(Nsora[j]) == tonumber(s.Data[i]["Sora_Num"]) and tonumber(bs) < tonumber(Nsora[j]) and  tonumber(s.Data[i]["Aya_Num"]) <= tonumber(Naya[j]) then
                                Num_J 
                              Joz[j]; Num_H Hiz[j];NRR Rob[j]; 
                                
                              end 
                                end 
                              ----------------------------
                              الملف المعدل لمشروع البحث في القران الكريم
                              ( ملاحظة ..الملف لايحتوي على الملف الصوتي و قد سبق ان اشرنا له في مشاركة سابقة )
                              http://www.mediafire.com/file/geoohp...oran2.apz/file
                              بالتوفيق

                              تعليق


                              • #30
                                السلام عليكم ورحمة الله وبركاته
                                عودة الى مشروعنا حول البحث في القرآن الكريم
                                اليوم مع خاصية جديدة

                                البحث بواسطة الأجزاء



                                يعني انا اريد البحث عن كلمة معينة في جزء فقط او من الجزء1 الى الجزء 4
                                اي مثلا كلمة ( الحي القيوم ) من الجزء الاول الى الجزء الرابع
                                نضيف في الصفحة خيار checkBox 6 وهو سيعرض ديالوج جديد فيه 2 من الكومبوكس تعرض الاجزاء 30
                                الان كي لايختار المستخدم من الجزء 4 الى الجزء 3 ...... سنضع شرطا بحيث سيملا الكومبوكس 1 من 1 الى 30


                                الان لما يختار جزء معين سيفرغ الكومبوكس 2 و يكون اول رقم له هو اختيار الكوموبكس1
                                يعني لما يختار من الجزء 4 ..... سيمحى مضمون الكومبوكس 2 و سيبدا من جديد لكن اول رقم له هو 4 الى 30 ........
                                في الديالوج 2 سنضع في onshow

                                كود PHP:
                                 x=1;
                                repeat
                                ComboBox
                                .DeleteItem("ComboBox1"1);
                                x=x+1;
                                until x>60;
                                for 
                                i1,30 do
                                ComboBox.AddItem("ComboBox1"i"");
                                end
                                ComboBox
                                .SetSelected("ComboBox1"1
                                سنضع في الكومبوكس1 الكود التالي
                                كود PHP:
                                 x=1;
                                repeat
                                ComboBox
                                .DeleteItem("ComboBox2"1);
                                x=x+1;
                                until x>30;
                                ----------------------
                                DselC ComboBox.GetSelected("ComboBox1");
                                selC ComboBox.GetItemText("ComboBox1"DselC);
                                selC2selC;
                                for 
                                p=selC,30 do
                                ComboBox.AddItem("ComboBox2"p"")
                                end
                                ComboBox
                                .SetSelected("ComboBox2"1
                                لذلك لديك الكثير من الافكار لكن اخترت اسهلها طبعا
                                يعني ساعرض النتائج كلها في ليست بوكس 3
                                ثم ساختار فقط القيم بين الجزء البداية و الجزء النهاية وامحي ما سواهما في اليسبوكس1.2.3

                                ساضيف الشرط هذا في زر البحث
                                كود PHP:
                                function Azaa()
                                 
                                p=1repeat for i=1,ListBox.GetCount("List") do nn ListBox.GetItemText("List"i);
                                if  
                                String.ToNumber(nn) < selC or String.ToNumber(nn) > selC2  then
                                ListBox
                                .DeleteItem("List"i); ListBox.DeleteItem("ListBox1"i); ListBox.DeleteItem("ListBox2"i);
                                end end p=p+1until p 9  end 
                                سيكون الشكل التالي :



                                الملف المفتوح المعدل :

                                http://www.mediafire.com/file/loux46..._azaa.apz/file

                                بالتوفيق

                                تعليق

                                مواضيع تهمك

                                تقليص

                                المنتدى: القسم العام نشرت بواسطة: Reem2Rabeh الوقت: 04-23-2025 الساعة 04:27 PM
                                المنتدى: ضبط وتوكيد الجودة نشرت بواسطة: HeaD Master الوقت: 04-15-2025 الساعة 09:30 AM
                                المنتدى: التصنيع والانتاج نشرت بواسطة: HeaD Master الوقت: 04-11-2025 الساعة 01:08 PM
                                المنتدى: القسم العام نشرت بواسطة: نوال الخطيب الوقت: 03-19-2025 الساعة 03:07 AM
                                المنتدى: الكمبيوتر والإنترنت نشرت بواسطة: عوض السوداني الوقت: 03-18-2025 الساعة 07:22 AM
                                يعمل...
                                X