delphi4arab منتديات دلفي للعرب

نسخة كاملة : لماذا يعرض TWebbrowser الصفحات خارج البرنامج
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله تعالى وبركاته
أعمل على برنامج دلفي به المكونات WebBrowser و ListView و TreeView.
المكونات ListView و TreeView بها عناصر عند النقر عليها تفتح صفحة html في WebBrowse, البرنامج يعمل جيدا, لكن أحيانا وبدون سابق إنذار يبدأ البرنامج بعرض صفحات html خارج البرنامج في Internet Explorer وليس في المكون WebBrowser, بحثت ولم أجد حلا لهذا المشكل, وكما قلت فإن هذا المشكل يظهر أحيانا قليلة فقط.
من العلم أنني أستعمل الدالة WebBrowser1.Navigate() لمناداة صفحة html.

شكرا على اهتمامكم مسبقا.
وعليكم السلام ورحمة الله

TWebbrowser ما هو الا تغليف ان صح التعبير لمتصفح مايكروزفت

في لغة الhtml وسم الروابط قد يحتوى على target وهي اين يظهر محتوى الرابط بعد النقر عليه
راجع
كود :
http://www.w3schools.com/tags/att_a_target.asp
ان كان مثلا _blank يتم اظهار نافذة جديدة
كنت سأسأل مثل هذا السؤال لكن من كثرة اسألتي بت اخجل

لكن سؤالي هو كيف يمكنني معرفة المدخل هو رابط ام لا واذا كان رابط تحويله لرابط فتح في نافذة جديده

ثانياً كيف يمكنني التعامل مع الرجيستري لمجرد الضغط على رابط سبق وتم ادخاله من قبلي

جزاك الله الخير
السلام عليكم ورحمة الله تعالى وبركاته
شكرا أخي B.M.AbdelAziZ على ردك, ولكن مشكلتي ليست في روابط html.
عند النقر على عنصر في TreeView تظهر صفحة html في WebBrowser يحدث هذا والبرنامج يعمل بشكل طبيعي, لكن أحيانا عند النقر على عنصر في TreeView تظهر صفحة html في Internet Explorer وليس في WebBrowser وهذا غير طبيعي
في الحدث OnClick لـ TreeView يوجد الأمر WebBrowser1.Navigate( html file name )
شكرا لكم.
ممكن ان تكون المشكلة في المتصفح الافتراضي :d والله اعلم
PHP كود :
TForm1.wb1NewWindow2(Sender: TObject; var ppDisp: IDispatch;
 var 
wb1:TWebBrowser;
begin
  wb1
:=TWebBrowser(Form1.sPageControl1.ActivePage.Controls[0]);
   
wb1.Navigate('http://www.google.com/search?ie=UTF-8&hl=fr&q='+edt1.Text); 
من مشروع قديم ( متصفح )

الان يفتح في صفحة جديدة
PHP كود :
procedure TForm1.btn1Click(Sender: TObject);
begin
 wb1
.Navigate('http://www.google.com/search?ie=UTF-8&hl=fr&q='+edt1.Text);
end;

procedure TForm1.wb1NewWindow2(Sender: TObject; var ppDisp: IDispatch;
  var 
Cancel: WordBool);
var
New: 
TForm1;
begin
New := TForm1.Create(Owner);
New.
Visible := true;
ppDisp := New.wb1.DefaultDispatch;
//NewApp.wb1.Navigate();
//cancel := true;
end;