Creation d'un expert : ajouter une option dans le menu "aide" de delphi

Soyez le premier à donner votre avis sur cette source.

Vue 6 479 fois - Téléchargée 343 fois

Description

Cet expert permet d'ajouter dans le menu "Aide" un lien vers le site Delphipage.

Pour créer cet expert, j'ai utilisé la classe TIExpert.
Il existe plusieurs formats d'experts : format DCU et format DLL. Cet exemple utilise le format DCU (fichier PAS compilé).

L'installation se réalise comme pour un composant classique, c'est à dire en allant dans le menu "Composant" de Delphi puis sur "Installer un composant...". On peut noter que la fenêtre "Installation de composants" est un aussi un expert.

Source / Exemple :


unit Expert;

//Programmé par Yoann
//http://delphipage.free.fr/

interface

uses
  Windows, ExptIntf, ShellAPI; //ShellAPI permet d'utitliser "ShellExecute"

type
 TMonExpert = class(TIExpert) //La classe "TIExpert" est la classe de base qui permet de construire un expert Delphi
 public
  function GetIDString: string; override; stdcall;
  function GetName: string; override; stdcall; //Renvoie un nom identifiant votre expert d'une maniere unique
  function GetStyle: TExpertStyle; override; stdcall; //Renvoie le type representation de l'expert "esStandard" (option dans le menu "Aide" de Delphi), "esForm" (option "Nouveau..." du menu "Fichier"), "esProject" (option "Nouveau..." du menu "Fichier") et "esAddIn" (insère des options de menu n'importe où)
  function GetMenuText: string; override; stdcall; //Renvoie le texte de l'option qui apparaitra dans le menu
  function GetState: TExpertState; override; stdcall; //Renvoie les valeurs "esChecked" (coche l'option) et "esEnabled" (l'option est disponible)
  procedure Execute; override; stdcall; //Lance l'expert (n'est pas appelé lorsque le style est "esAddIn")
 end;

{Suivant le style de l'expert, certaines fonction ne sont pas appelés.
Dans notre cas, c'est à dire le style "esStandard", les fonctions GetAuthor,
GetComment, GetPage et GetGlyph ne sont jamais appelés. Il n'est donc pas
nécessaire de les mettre.}

procedure Register;

implementation

procedure Register;
begin
RegisterLibraryExpert(TMonExpert.Create); //Enregiste l'expert
end;

function TMonExpert.GetIDString:string;
begin
result:='Delphipage.Expert';
end;

function TMonExpert.GetName:string;
begin
result:='Delphipage';
end;

function TMonExpert.GetStyle:TExpertStyle;
begin
result:=esStandard;
end;

function TMonExpert.GetMenuText:string;
begin
result:='Delphipage';
end;

function TMonExpert.GetState:TExpertState;
begin
result:=[esEnabled];
end;

procedure TMonExpert.Execute;
begin
ShellExecute(0,'open',PChar('http://delphipage.free.fr/'),nil,nil,SW_SHOW); //Lance le navigateur par défaut à l'adresse indiqué
end;

end.

Conclusion :


Plus d'information : http://delphipage.free.fr/

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
22
Date d'inscription
vendredi 30 juillet 2004
Statut
Membre
Dernière intervention
21 octobre 2004

j'ai esseyer déja cette méthode mais lorsque je click
avec le bouton droite il ya seulement ouvrir et non
ouvrir avec le problem que le system prend l'ouvertur
de tous les fichier zip par default avec l'excel

mais je vais esseyer d'installer le winzip
merci yoann
Messages postés
25
Date d'inscription
lundi 1 octobre 2001
Statut
Membre
Dernière intervention
28 juillet 2004

Salut,

- Dans l'explorateur Windows, clic droit sur un fichier ZIP pour ouvrir un menu deroulant.
Clic sur "Ouvrir avec...". Choisit l'application dans la liste. et coche "Toujours ouvrir avec ce programme".

- Tu peux réessayer d'installer WinZip ou autres logiciels équivalent pour décompresser le fichier.

En espérant que sa marche,
A+
Messages postés
22
Date d'inscription
vendredi 30 juillet 2004
Statut
Membre
Dernière intervention
21 octobre 2004

yoann j'ai problem avec le téléchargement des fichier
a chaque téléchargement d'un fichier zip
il s'ouvre avec le programme excel(logéciel)
est je n'arrive pas a le changer qel est la solution
merci

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.