Bonjour,
J'ai cette Uni. Je veux utiliser moins de lignes, l'icône mise en place.
Bonjour,
J'ai cette Uni. Je veux utiliser moins de lignes, l'icône mise en place.
Bonjour,
Essaye d'ajouter cette procedure :
ton "TForm1.FormShow" devient alors :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 procedure do_work(val:string); var myini : TIniFile; myIcon: TIcon; rasp: string; Filter: Word; begin Filter:= 0; myIcon:= TIcon.Create; myini:=TIniFile.Create(ExtractFilePath(Application.EXEName) + 'Micoane.ini'); rasp:=myini.ReadString('Default',val, ''); myicon.Handle:= ExtractAssociatedIcon(hInstance, PChar(rasp), Filter); val.Picture.Icon:= myIcon; val.Hint:=ExtractFileName(rasp); val.ShowHint:=True; myIcon.Free; myini.Free; end;
Bon Codage
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 procedure TForm1.FormShow(Sender: TObject); begin for i:=1 to 89 do begin do_work('img'+i); end; end;![]()
Bonjour,
@Kanzarih :
en ligne 7 tu veux dire :
A+
Code : Sélectionner tout - Visualiser dans une fenêtre à part do_work('img'+IntToStr(i));
Charly
Bonjour,
Procédure do_work(val:string); doit être écrit 89 fois?
FormShow procédure ne fonctionne pas à PageControl avec plus tabsheet
Bonjour Charly910,
Effectivement
Lia : Explique un peut! la procédure est utilisé dans une boucle "for" de 1 à 89! donc elle sera exécuté 89 fois.
Une erreur. Est-ce la vraie Unit.
Image de l'application
Je pense que quelque chose comme ceci devrait fonctionner (non testé) , j'ai juste ajouté une boucle et un FindComponent
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 procedure TForm1.FormShow(Sender: TObject); var icolist: TStringList; i : word; Img : TImage; begin icolist:=TStringList.Create; try icolist.LoadFromFile(ExtractFilePath(Application.ExeName) +'icofile.sav'); for i:=1 to 89 do begin Img:=TImage(FindComponent('Img'+inttostr(i))); img.Picture.LoadFromFile(icolist.Strings[i-1]); img.Hint:=ChangeFileExt(ExtractFileName(icolist.Strings[i-1]),''); end; finally icolist.Free; end; end;
M. SergioMaster,
J'ai essaye, et parfait.
Peut-être. comment passer une path icône dans iconfile,sav
Voici un .pas:
procedure TForm1.btn6Click(Sender: TObject);
ne functionne pas.
Image de programme.
Botton OK Copiaza Icoana. Ne fonctionne pas
, cela ne provoquerait pas une Indice Hors Limite ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part F.Strings[i]:=edt2.Text;
Sinon, je ne vois pas à quoi c'est ce code, tu crée une liste, tu ajoutes un élement puis tu libère la liste, étrange
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 idx = F.Add(edt2.Text); if idx >= 0 then ShowMessage(F[idx]);
Toute la procédure TForm1.btn6Click(Sender: TObject); doivent être supprimé, est erroné. Vouloir un pour copie Edit.Text en Icofile.sav
Parfois, mettre des messages, pour voir où le programme a été.
Si i est ok , alors je pense que la demande c'est de sauvegarder le nouvel intitulé , donc faire un SaveToFile
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 procedure TForm1.btn6Click(Sender: TObject); var F: TStringList; i: Integer; begin i:=cbb2.ItemIndex; // Clipboard.AsText:=edt2.Text; // inutile F:=TStringList.Create; try F.LoadFromFile(ExtractFilePath(Application.ExeName) + 'icofile.sav'); F.Strings[i]:=edt2.Text; F.SaveToFile(ExtractFilePath(Application.ExeName) + 'icofile.sav'); finally F.Free; end; end;
Bonjour,
M. SergioMaster, J'ai essaye, et parfait.
Merci.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager