صالح حمادي قام بنشر ديسمبر 6, 2019 قام بنشر ديسمبر 6, 2019 السلام عليكم عند استخدام أداة webbrowser في التصفح. عوض ظهور نافذة جديدة في الأداة. يقوم البرنامج بفتح صحفة في متصفح أنترنت أكسبلورر المطلوب هو هل يمكن فتح الصفحة الجديدة على نفس الأداة دون فتح الأنترنت أكسبلورر كما يوضح هذا المثال: ويب.accdb
محمد أبوعبدالله قام بنشر ديسمبر 7, 2019 قام بنشر ديسمبر 7, 2019 وعليكم السلام ورحمة الله وبركاته اعتقد استاذنا الفاضل ان الامر متعلق بكود البحث نفسه فاذا كنت تقصد موقع اوفيسنا تحديدا فكود البحث الموجود كالتالي <!--بداية كود البحث --> <style type="text/css"> @import url(//www.google.com/cse/api/branding.css); </style> <div class="cse-branding-bottom" style="background-color:#FFFFFF;color:#000000"> <div class="cse-branding-form"> <form action="http://www.google.ae" id="cse-search-box" target="_blank"> <div> <input type="hidden" name="cx" value="partner-pub-4958585055085854:7791406915" /> <input type="hidden" name="ie" value="UTF-8" /> <input type="text" name="q" size="55" /> <input type="submit" name="sa" value="Search" /> </div> </form> <script type="text/javascript" src="http://www.google.com/jsapi"></script> <script type="text/javascript">google.load("elements", "1", {packages: "transliteration"});</script> <script type="text/javascript" src="http://www.google.com/cse/t13n?form=cse-search-box&t13n_langs=ar"></script> </div> <div class="cse-branding-logo"> <img src="http://www.google.com/images/poweredby_transparent/poweredby_FFFFFF.gif" alt="Google" /> </div> <div class="cse-branding-text"> Custom Search </div> </div> <!--نهاية كود البحث --> والتعديل يكون كالتالي <form action="http://www.google.ae" id="cse-search-box" target="_self"> بدلاً من <form action="http://www.google.ae" id="cse-search-box" target="_blank"> تحياتي 2
صالح حمادي قام بنشر ديسمبر 7, 2019 الكاتب قام بنشر ديسمبر 7, 2019 11 ساعات مضت, محمد ابوعبد الله said: الامر متعلق بكود البحث نفسه فاذا كنت تقصد موقع اوفيسنا تحديدا أهلين أستاذ محمد شكرا على المداخلة أنا لا أقصد موقع أوفيسنا تحديدا وضعته كمثال فقط و هناك العديد من المواقع بها هذا الأمر. نحن لا نستطيع التعديل على أكواد الصفحة لأنها في كل مرة تفتحها تعود كما هي. أخي عندما يكون التصفح باستخدام فايرفوكس أو كروم يقوم بفتح الصفحة في تبويب جديد فهل هناك إمكانية فتح تبويب جديد في أداة ويب براوزر
أبوبسمله قام بنشر ديسمبر 7, 2019 قام بنشر ديسمبر 7, 2019 السلام عليكم ورحمه الله وبركاته ممكن اشارك معكم اخوانى اساتذتى لا اعلم ان كان هذا ما تقد اخى واستاذى @صالح حمادي عسى ان يكون ما تريد ان شاء الله MS Access VBA للحصول على بيانات من محتوى عنصر تحكم مستعرض الويب هذه ترجمه الاجابه هذا الصباح ، أنا حل المشكلة. لقد كنت مرتبكًا جدًا بسبب عدم عرض مستعرض الكائنات خاصية مستندات لعنصر تحكم مستعرض الويب الذي أضفته إلى نموذج Access الخاص بي. اتضح لي أنني قد قرأت في منشور آخر في مكان ما هناك أن الشخص قد بذل جهودًا كبيرة لذكر أنه لم يضف عنصر تحكم مستعرض ويب من مربع أدوات التحكم على شريط الشريط ، ولكنه أضاف مستعرض ويب ActiveX مراقبة. بمجرد حذف عنصر تحكم مستعرض الويب Access وإضافة عنصر تحكم مستعرض ويب ActiveX بدلاً من ذلك ، بدأت الأمور تعمل كما هو متوقع! كان عنصر تحكم مستعرض ActiveX خاصية .document وكنت قادراً على قراءة المعلومات من عنصر تحكم المستعرض في نموذج Access الخاص بي. إليك ما فعلته للحصول على هذا العمل: لإدراج عنصر تحكم مستعرض ويب ActiveX في نموذج MS Access: حدد "عناصر تحكم ActiveX" من القائمة المنسدلة "عناصر التحكم" في علامة التبويب "أدوات تصميم النموذج" / MS "أدوات الوصول إلى MS Access" على الشريط مرر القائمة لأسفل خلال القائمة وحدد "مستعرض ويب Microsoft" ثم انقر فوق [موافق] ثم ضع عنصر التحكم في النموذج في الحدث Form_Open ، أضف الكود المطلوب للانتقال إلى صفحة الويب المطلوبة ، على سبيل المثال ، باستخدام كائن مستعرض الويب ActiveX المسمى webView: Me.webView.Object.Navigate "http://www.yoururl.com لقراءة البيانات من صفحة الويب ، قمت بتعيين TimerInterval للنموذج على 100 (لكل 100 مللي ثانية) وأضع الكود هناك لجمع البيانات المطلوبة في متغيرات لاستخدامها لاحقًا ؛ بمجرد تشغيل حدث Timer ، قمت بتعيين TimerInterval على 0 بحيث لن يتم تشغيله مرة أخرى. على سبيل المثال ، في الحدث Form_Timer ومع متصفح الويب ActiveX المسمى webView: مع Me.webView.Object With Me.webView.Object While .Busy Or .ReadyState <> 4 'thanks to @ErikvonAsmuth for .ReadyState <> 4 DoEvents Wend SDate = .Document.getElementByID("SDate").innerText Omega = .Document.getElementByID("Omega").innerText End With Me.TimerInterval = 0 'turn off timer since we've got the data needed بعد ما سبق ، تمكنت من التحقق من قيم SDate و Omega في رمز VBA. بالطبع ، تحتاج إلى معرفة قيم معرّف العناصر ، ولكن يمكن للمنتديات الأخرى أن تعلمك كيفية العثور على قيم المعرف هذه. آمل أن يساعد هذا شخص آخر! طبتم واهتديتم
صالح حمادي قام بنشر ديسمبر 7, 2019 الكاتب قام بنشر ديسمبر 7, 2019 3 دقائق مضت, أحمد الفلاحجى said: ممكن اشارك معكم اخوانى اساتذتى مرحبا بك أخي على الرحب و السعة ليس هذا المطلوب. بل المطلوب هو عدم فتح روابط خارج الأداة يعني عندما أضغط على زر معين كما وضحت في المثال الأول لا يقوم البرنامج بفتح الرابط باستخدام مستعرض أنترنت أكسبلورر
أبوبسمله قام بنشر ديسمبر 7, 2019 قام بنشر ديسمبر 7, 2019 تسلم اخى واستاذى اها تمام فهمت ما تقصده الان ان شاء الله تتيسر الامور ولعل سؤال فى قسم الويب سوف يساعد تقبلوا تحياتى طبتم واهتديتم
رمهان قام بنشر ديسمبر 7, 2019 قام بنشر ديسمبر 7, 2019 استاذ @صالح حمادي اعتقد هناك حدث فتح نافذة جديده للمستعرض وهنا ويحتوي الكانسل كباراميتر .. انادي هذا الحدث وتمرير الالغاء بالموفقة وهنا ستم عدم فتحناذة جديده بعدها انادي اللينك الجديد كمصدر للمستعرض ةاعيد تحميله بناء على هذا اللينك ويمكن اصطياده بفكرتين 1 اعتقد حدث عند تغير حالة الحالة او معرفة اسم زر الامر واصياد اللينك تبعه عالعموم هذه مجرد مفاتيح وان شاء الله احاول اطبقها قريب ان شاء الله واعتقد الاستاذ ابو ابراهيم الغامدي اعمق منا في هذا المجال وان شاء الله يكرمنا بمروره تحياتي 3
صالح حمادي قام بنشر ديسمبر 7, 2019 الكاتب قام بنشر ديسمبر 7, 2019 أهلين أستاذ رمهان سعيد بمرورك 2 ساعات مضت, رمهان said: اعتقد هناك حدث فتح نافذة جديده للمستعرض وهنا ويحتوي الكانسل كباراميتر .. انادي هذا الحدث وتمرير الالغاء بالموفقة وهنا ستم عدم فتحناذة جديده لقد وجدت هذا الحدث في بعض المنتديات الأجنبية للفجوال بسيك لكنني لم أفلح في تطبيقها 2 ساعات مضت, رمهان said: 1 اعتقد حدث عند تغير حالة الحالة او معرفة اسم زر الامر واصياد اللينك تبعه هذه فكرة جيدة سوف أحاول تطبيقها 2 ساعات مضت, رمهان said: واعتقد الاستاذ ابو ابراهيم الغامدي اعمق منا في هذا المجال وان شاء الله يكرمنا بمروره ننتظر مشاركة الأستاذ @أبو إبراهيم الغامدي
صالح حمادي قام بنشر ديسمبر 7, 2019 الكاتب قام بنشر ديسمبر 7, 2019 6 ساعات مضت, رمهان said: اعتقد هناك حدث فتح نافذة جديده للمستعرض وهنا ويحتوي الكانسل كباراميتر .. انادي هذا الحدث وتمرير الالغاء بالموفقة وهنا ستم عدم فتحناذة جديده لقد نجحت في تطبيق هذا الجزء و إلغاء فتح النافذة الجديدة بقي إصطياد اللينك الآن و هذا هو الكود: Private Sub WebBrowser4_NewWindow2(ppDisp As Object, Cancel As Boolean) Cancel = True End Sub 2
أبو إبراهيم الغامدي قام بنشر ديسمبر 8, 2019 قام بنشر ديسمبر 8, 2019 أهلا بالجميع.. أهلا أ. @صالح حمادي ... أ. @رمهان يتعمد احراجي دائما.. الروابط في صفحة الويب لها تابع الروابط (Links) يمكن استهدافه والتعديل على خصائصه.. الرابط له خصيصة تدعى الهدف (TARGET) هي التي تتحكم في وجة الرابط.. يمكن التعرف عليها من الرابط التالي Anchor target Property الشفرة التالية تقوم بتغيير قيمة الخصيصة للفتح في الداخل.. Private Sub WebBrowser0_DocumentComplete(ByVal pDisp As Object, URL As Variant) Dim WD As Object Set WD = Me.WebBrowser0.Document For I = 0 To WD.links.length - 1 WD.links(I).Target = "_self" '//WD.links(I).Target = "_blank" Next End Sub يمكن التبديل مع السطر المعطل لمعرفة الفرق.. :: للفائد.. النماذج لها نفس الأسلوب مع التابع (Forms) :: المثال.. ويب.accdb 3
صالح حمادي قام بنشر ديسمبر 8, 2019 الكاتب قام بنشر ديسمبر 8, 2019 1 ساعه مضت, أبو إبراهيم الغامدي said: أ. @رمهان يتعمد احراجي دائما.. نريد تحفيزك على البحث و الإستفادة منك و أنت ايضا تستفيد من هذا السؤال ببحثك. لأنه لا حياء في العلم و لا حرج كذلك سوف أجرب المرفق و أخبرك 1
صالح حمادي قام بنشر ديسمبر 8, 2019 الكاتب قام بنشر ديسمبر 8, 2019 6 ساعات مضت, أبو إبراهيم الغامدي said: الشفرة التالية تقوم بتغيير قيمة الخصيصة للفتح في الداخل.. هذه الشفرة لم تنفذ الأمر فقمت بالتعديل عليها و أصبح الكود يغير الخاصية بشكل جيد و هذا شكل الكود بعد التعديل: Dim WD As Object Set WD = Me.WebBrowser4.Document For i = 0 To WD.links.length - 1 WD.all.Item(i).target = "_self" Next i بقي الحدث المناسب فهذا الحدث WebBrowser0_DocumentComplete لا يظهر دائما أحيانا ينفذ الأكواد و أحيانا أخرى لا يعني لا أدري ما هو السبب وراء ذلك 1
أبو إبراهيم الغامدي قام بنشر ديسمبر 8, 2019 قام بنشر ديسمبر 8, 2019 أ.صالح.. يمكن الوصول إلى ما تريد إذا شاركتنا الفكرة التي تريد الوصول إليها..
صالح حمادي قام بنشر ديسمبر 8, 2019 الكاتب قام بنشر ديسمبر 8, 2019 3 ساعات مضت, أبو إبراهيم الغامدي said: أ.صالح.. يمكن الوصول إلى ما تريد إذا شاركتنا الفكرة التي تريد الوصول إليها.. الفكرة هي إلغاء ظهور نوافذ جديدة في متصفح أنترنت أكسبلورر عند الضغط على زر في صفحة الويب (هذا الجزء تمكنت من حله) جلب رابط النافذة الجديدة التي منعنا ظهورها و فتحه في أداة webbrowser بالنموذج (هذا الجزء الكود الذي تفضلت به و عدلت عليه أنا يقوم بالواجب لكن بقي الحدث المناسب ليتم تنفيذ الكود دائما). 1
أبو إبراهيم الغامدي قام بنشر ديسمبر 8, 2019 قام بنشر ديسمبر 8, 2019 56 دقائق مضت, صالح حمادي said: الفكرة هي إلغاء ظهور نوافذ جديدة في متصفح أنترنت أكسبلورر عند الضغط على زر في صفحة الويب ما أقصده؛ لماذا تريد فتح صفحات الويب داخل Web Browser Object .. أريد أن أوضح هنا أن الحدث Document_Complete لا يقع إلا مرة واحدة عند اكتمال فتح الصفحة التي تم استدعاها عن طريق الإجراء Navigate. وللتخلص من هذه الإشكالية يمكن استخدام الحدث Download_Complete 1
صالح حمادي قام بنشر ديسمبر 8, 2019 الكاتب قام بنشر ديسمبر 8, 2019 5 دقائق مضت, أبو إبراهيم الغامدي said: ما أقصده؛ لماذا تريد فتح صفحات الويب داخل Web Browser Object لأنه عندما يفتح نافذة جديدة في مستعرض أنترنت أكسبلورر يطلب مني ادخال اسم المستخدم و كلمة المرور من جديد. و أنا لا أريد ذلك 9 دقائق مضت, أبو إبراهيم الغامدي said: .. أريد أن أوضح هنا أن الحدث Document_Complete لا يقع إلا مرة واحدة عند اكتمال فتح الصفحة التي تم استدعاها عن طريق الإجراء Navigate. وللتخلص من هذه الإشكالية يمكن استخدام الحدث Download_Complete فعلا الحدث Document_Complete يقع عند إكتمال الصفحة و قد جربته على منتدى أوفيسنا لكنه لا يعمل بالشكل المطلوب أحيانا يعمل و أحيانا لا فقمت بتجربته على موقع آخر و كانت النتائج رائعة و يعمل بشكل جيد. 1
صالح حمادي قام بنشر ديسمبر 8, 2019 الكاتب قام بنشر ديسمبر 8, 2019 13 ساعات مضت, أبو إبراهيم الغامدي said: الروابط في صفحة الويب لها تابع الروابط (Links) يمكن استهدافه والتعديل على خصائصه.. هل يمكن استخراج نص الرابط
أبو إبراهيم الغامدي قام بنشر ديسمبر 8, 2019 قام بنشر ديسمبر 8, 2019 52 دقائق مضت, صالح حمادي said: هل يمكن استخراج نص الرابط نعم يمكن.. الشفرة التالية تطبع نص الرابط في النافذة السريعة Sub OPEN_LINKS() Dim WD As Object Set WD = Me.WebBrowser0.Document Dim I As Integer For I = 0 To WD.links.length - 1 Debug.Print WD.links(I).innertext Next End Sub 1
صالح حمادي قام بنشر ديسمبر 9, 2019 الكاتب قام بنشر ديسمبر 9, 2019 الخاصية innertext تطبع النصوص الموجودة في جميع عناصر الصفحة 11 ساعات مضت, أبو إبراهيم الغامدي said: Sub OPEN_LINKS() أما هذا الحدث فلم يعمل معي
أبو إبراهيم الغامدي قام بنشر ديسمبر 9, 2019 قام بنشر ديسمبر 9, 2019 4 ساعات مضت, صالح حمادي said: الخاصية innertext تطبع النصوص الموجودة في جميع عناصر الصفحة أما هذا الحدث فلم يعمل معي أظن أنك تسأل عن النماذج (Forms) وليس الروابط (Links) ولهذا لم تلبي الشفرة متطلباتك.. من مراجعتي للمشاركات السابقة أرى اهتمامك منصب على نموذج نسجيل الدخول. لم لا تحدد موقعا معينا نقوم بالعمل عليه حتى نصل إلى النتيجة المرضية لك.. للعلم.. يعتمد الغرض Web Browser على محرك الاصدار السابع لــ Internet Explorer وهناك مواقع لا تقدم مساندة لهذا الإصدار.
صالح حمادي قام بنشر ديسمبر 9, 2019 الكاتب قام بنشر ديسمبر 9, 2019 أولا: أعتذر منك أخي إبراهيم لأنني أزعجتك بهذه الأسئلة 4 ساعات مضت, أبو إبراهيم الغامدي said: أظن أنك تسأل عن النماذج (Forms) وليس الروابط (Links) ولهذا لم تلبي الشفرة متطلباتك.. أنا أسأل عن الروابط و ليس النماذج 4 ساعات مضت, أبو إبراهيم الغامدي said: من مراجعتي للمشاركات السابقة أرى اهتمامك منصب على نموذج نسجيل الدخول. لا يا أستاذ ليس منصب على نموذج تسجيل الدخول أنا أستطيع التعامل جيدا مع النماذج من إرسال و إستقبال البيانات و كذلك الأزرار و مربعات النص و القوائم المنسدلة.. 4 ساعات مضت, أبو إبراهيم الغامدي said: لم لا تحدد موقعا معينا نقوم بالعمل عليه حتى نصل إلى النتيجة المرضية لك.. الموقع الذي أريد العمل عليه هو موقع محلي أو داخلي لا يشتغل من مكان آخر لذلك وضعت موقع أوفيسنا في المثال الأول 4 ساعات مضت, أبو إبراهيم الغامدي said: عتمد الغرض Web Browser على محرك الاصدار السابع لــ Internet Explorer وهناك مواقع لا تقدم مساندة لهذا الإصدار. نعم و أنا أستعمل IE 11 الخلاصة: لاستخراج الروابط الموجودة في الصفحة نغير في الكود الذي تقدمت به كالتالي: في مكان هذا السطر: WD.links(I).innerText نضع هذا السطر: WD.links(I).href لأن href هي المسؤولة على الروابط 2- الحدث Document_Complete يعمل بشكل ممتاز عندما طبقته على الموقع الخاص بي أو على موقع غوغل و العديد من المواقع الأخرى. 3- في ٨/١٢/٢٠١٩ at 09:02, أبو إبراهيم الغامدي said: Private Sub WebBrowser0_DocumentComplete(ByVal pDisp As Object, URL As Variant) Dim WD As Object Set WD = Me.WebBrowser0.Document For I = 0 To WD.links.length - 1 WD.links(I).Target = "_self" '//WD.links(I).Target = "_blank" Next End Sub عدلت على هذا الكود ليقوم بالمرور على جميع العناصر و يستخرج جميع الروابط الموجودة. لأنني وجدته ينفذ المطلوب مع جميع الصفحات بشكل جيد و أصبح شكله كالتالي: Private Sub WebBrowser4_DocumentComplete(ByVal pDisp As Object, URL As Variant) On Error Resume Next Dim WD As Object Set WD = Me.WebBrowser4.Document For i = 0 To WD.all.length WD.all.Item(i).target = "_self" Next i End Sub يعني أنا وصلت للمطلوب أو السؤال الذي وضعته في بداية الموضوع و الحمد لله و بارك الله فيك و في الأستاذ رمهان و جميع الإخوة المشاركين. و أردت أن أطبق فكرة الأستاذ رمهان كحل آخر و إثراء للموضوع و هي الحصول على رابط النافذة المنبثقة و نضعه مصدر لأداة ويب براوزر فقمت بالبحث و حصلت على التالي: 4- هذا الكود يقوم بعرض رابط الصفحة التي سوف تفتح في نفس الأداة باستخدام حدث BeforeNavigate2 Private Sub WebBrowser0_BeforeNavigate2(ByVal pDisp As Object, URL As Variant, Flags As Variant, TargetFrameName As Variant, PostData As Variant, Headers As Variant, Cancel As Boolean) MsgBox URL End Sub بقي الآن هل نستطيع الحصول على الرابط الذي سوف يفتح في النافذة المنبثقة. و هذا مثال لما شرحته: webbrowser.accdb 2
أبو إبراهيم الغامدي قام بنشر ديسمبر 10, 2019 قام بنشر ديسمبر 10, 2019 5 ساعات مضت, صالح حمادي said: يعني أنا وصلت للمطلوب أو السؤال الذي وضعته في بداية الموضوع إذا دعني أنهي مداخلتي في هذه المشاركة لأنك وصلت لطلبك.. إذا أرت إثراء الموضوع والتوسع في استخدام Web Browser Object فيمكنك فتح نقاش في حائط الموقع للتخلص من قيود السؤال والجواب..
صالح حمادي قام بنشر ديسمبر 10, 2019 الكاتب قام بنشر ديسمبر 10, 2019 4 ساعات مضت, أبو إبراهيم الغامدي said: إذا دعني أنهي مداخلتي في هذه المشاركة لأنك وصلت لطلبك.. بارك الله فيك و لك و جزاك الله عنا كل خير. 4 ساعات مضت, أبو إبراهيم الغامدي said: إذا أرت إثراء الموضوع والتوسع في استخدام Web Browser Object أنا لا أريد التوسع في web browser object لأنني أستخدمه منذ مدة و أتحكم فيه جيدا بالإضافة إلى أن هذا السؤال متعلق بالموضوع و ليس خارجه و سوف يكون حل أمثل و أفضل من الأول لو نستطيع الحصول على رابط النافذة المنبثقة يعني حاليا هذا ما عجزت عن فعله فقط في الأداة. و ربما سوف أفتح موضوع جديد و شامل أشرح فيه التعامل مع web browser object و خاصة النماذج و إرسال و إستقبال البيانات إذا سمح لي الوقت بذلك. على العموم شكرا جزيلا مجددا أستاذ و تقبل إعتذاري الشديد. و سوف أجري بعض التجارب و إذا توصلت لشيء سوف أخبرك به.
محمد سلامة قام بنشر ديسمبر 10, 2019 قام بنشر ديسمبر 10, 2019 (معدل) 16 ساعات مضت, أبو إبراهيم الغامدي said: إذا أرت إثراء الموضوع والتوسع في استخدام Web Browser Object فيمكنك فتح نقاش في حائط الموقع للتخلص من قيود السؤال والجواب.. عفواً ماهو حائط الموقع !؟ 12 ساعات مضت, صالح حمادي said: سوف أفتح موضوع جديد و شامل أشرح فيه التعامل مع web browser object و خاصة النماذج و إرسال و إستقبال البيانات إذا سمح لي الوقت بذلك. ياريت استاذ صالح هذا الموضوع مهم بارك الله فيك وفي الاستاذ ابراهيم الغامدي تم تعديل ديسمبر 10, 2019 بواسطه محمد سلامة
أبو إبراهيم الغامدي قام بنشر ديسمبر 11, 2019 قام بنشر ديسمبر 11, 2019 5 ساعات مضت, محمد سلامة said: عفواً ماهو حائط الموقع !؟ هو مدونات الفريق رابطها في أعلى الصفحة تحت تبويب [تصفح الموقع] 1
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.