Oust Posted November 23, 2010 Report Posted November 23, 2010 Salut, tot incerc sa fac un "browser" si fac butoanele tot pac-pac, dau compilare ,il compileaza si cand apas pe butonul foward imi da eroarea asta... Quote
Flubber Posted November 23, 2010 Report Posted November 23, 2010 Cu siguranta nu te va ajuta mai nimeni daca nu arati si sursa cod, nu cred ca o sa isi dea nimeni seama din codul ASM care ar fi problema. Quote
Krisler12™ Posted November 23, 2010 Report Posted November 23, 2010 Prima poza nush ce vrei sa zici cu ea ca nu inteleg...La a doua poza si din ceea ce zici tu as putea doar sa iti zic ca e vorba de un bug, de asta ti-l si compileaza.Nu stiu Delphi si nu prea am cum sa te ajut insa vezi ca poate trebuia sa faci un while care sa faca butonul forward disponibil/vizibil doar atat timp cat mai ai la ce sa dai forward ptr. ca daca nu mai ai la ce ori iti crashuieste ori iti da vreo eroare. Quote
xact Posted November 23, 2010 Report Posted November 23, 2010 Baga aici procedura de la ButtonXClick(Sender:....) sa vada ochiul, poate-mi dau seama.E posibil ca tu sa n-ai pur si simplu forward? Fa un scurt exercitiu:- pune un contor global, initializeaza cu 0 la form1.oncreate;- butonul de forward pune-l default pe Enable:false;- cand se da click pe "Back" sa pui "Forward" pe Enable:=true; si incrementezi contorul cu 1, contor := contor+1;- atunci cand se apasa pe "Go" dezactivezi "Forward", Enabled := false;- la un click pe "Go" faci contorul din nou 0 si dezactivezi butonul "Forward".- la click pe "Forward" sa verifici daca respectivul contor e 0; daca nu, executi codul si decrementezi contorul. Atunci cand a ajuns 0, dezactivezi butonul.Vezi pur si simplu cum functioneaza forward-ul oricarui browser si cloneaza behavior-ul in programul tau.Dupa ce faci toate astea, vezi daca mai apare eroare. Daca da, posteaza codul. Quote
Oust Posted November 24, 2010 Author Report Posted November 24, 2010 Wtf xact , in romana poti vorbi? Nu am cunostintele tale in delphi , totusi am rezolvat cu programul l-am compilat asa , http://rstcenter.com/forum/28277-cel-mai-rapid-si-stabil-browser.rst#post188893 Quote
xact Posted November 24, 2010 Report Posted November 24, 2010 Posteaza si tu codul intreg, Unit1.pas si ti-l modific sa vezi despre ce vorbesc. Quote
Oust Posted November 24, 2010 Author Report Posted November 24, 2010 unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, OleCtrls, SHDocVw;type TForm1 = class(TForm) WebBrowser1: TWebBrowser; Edit1: TEdit; Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button2Click(Sender: TObject);beginwebbrowser1.GoBack;end;procedure TForm1.Button3Click(Sender: TObject);beginwebbrowser1.Refresh;end;procedure TForm1.Button4Click(Sender: TObject);beginwebbrowser1.GoForward;end;procedure TForm1.Button1Click(Sender: TObject);beginwebbrowser1.Navigate(edit1.text);end;end. Quote
mike_vio Posted November 25, 2010 Report Posted November 25, 2010 Si eu am unul simplist facut, codul e identic cu al tau si merge forward de mai multe ori. Chestia sa navighezi inainte cateva pagini sa stie browserul ce pagina e forward. Cred ca aia nu faceai tu. Quote
xact Posted November 26, 2010 Report Posted November 26, 2010 unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, OleCtrls, SHDocVw;type TForm1 = class(TForm) WebBrowser1: TWebBrowser; Edit1: TEdit; Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form1: TForm1;implementation{$R *.dfm}var counter:integer=0;procedure TForm1.Button2Click(Sender: TObject);begincounter := counter + 1;Button4.enabled := true;webbrowser1.GoBack;end;procedure TForm1.Button3Click(Sender: TObject);begincounter := 0;button4.enabled := false;webbrowser1.Refresh;end;procedure TForm1.Button4Click(Sender: TObject);beginif counter > 0 then begin webbrowser1.GoForward; counter := counter-1; end;if counter < 1 then button4.enabled := false;end;procedure TForm1.Button1Click(Sender: TObject);begincounter := 0;button4.enabled := false;webbrowser1.Navigate(edit1.text);end;end.Inlocuieste cu codul asta. In plus, mergi pe fereastra ta, da click pe butonul "Forward" (Button4), mergi in proprietatile lui, cauta "Enabled" si seteaza pe "false". Quote