f0xi
Messages postés4205Date d'inscriptionsamedi 16 octobre 2004StatutModérateurDernière intervention12 mars 202237 14 janv. 2007 à 20:20
Meme pas besoin de fichiers INI!
tu prend une ComboBox, si on entre du contenus on ajoute la ligne a la combobox et on sauve le tout dans un fichier texte simple.
La ComboBox fonctionne exactement comme une barre d'addresse et se positionne automatiquement sur une donnée qui est identique a la saisie.
La propriété ReadOnly doit etre a False et la propriété AutoComplete doit etre a True.
Ouverture de l'appli :
procedure TForm1.FormCreate(Sender: TObject);
begin
CbxHistoryFile := ExtractFilePath(ParamStr(0))+'Temp\UrlHistory.hst');
if FileExists(CbxHistoryFile) then begin
ComboBox.Items.LoadFromFile(CbxHistoryFile);
ComboBox.ItemIndex := -1;
end;
ComboBox.Text := '';
end;
Fermeture de l'appli :
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
ComboBox.Items.SaveToFile(CbxHistoryFile);
end;
Saisie d'une nouvelle entrée puis "Entrer" ou "GoButton" :
procedure TForm1.AddHistory;
var Idx : integer;
begin
idx : = ComboBox1.Items.IndexOf(ComboBox.Text);
if (Idx = -1) and (ComboBox1.Text <> EmptyStr) then
ComboBox1.ItemIndex := ComboBox1.Items.Add(ComboBox1.Text);
end;
procedure TForm1.ComboBox1KeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then AddHistory;
end;
procedure TForm1.GoButtonClick(Sender: TObject);
begin
AddHistory;
end;
Suppression de l'historique :
procedure TForm1.ClearHistory;
begin
ComboBox1.Items.Clear;
ComboBox.Items.SaveToFile(CbxHistoryFile);
La meilleure solution est de créer un fichier Ini qui contient les URL que tu as visité. Au démarrage de l'appli si le fichier en question existe, tu le charges dans une listbox. Tu en as pou 10 lignes de codes
f0xi
Messages postés4205Date d'inscriptionsamedi 16 octobre 2004StatutModérateurDernière intervention12 mars 202237 15 janv. 2007 à 20:03
de rien, en fait, j'avais deja fait un petit navigateur web qui utilisé ce principe d'historique, on peu bien sur carrement ameliorer le truc en ajoutant un parametre de temps de l'historique avec effacement des url trop vieille.