| auteur : Geronimo | Pour changer l'icône de votre programme, utilisez Projet/Options.... Allez dans l'onglet Application et en cliquant sur le bouton Charger icône..., vous pourrez charger une nouvelle icône qui doit être au format.ico. Si vous souhaitez dessiner une nouvelle icône, utilisez l'éditeur d'images disponible dans le menu Outils de l'IDE.
|
| auteur : Neo41 |
Le code suivant permet de désactiver le bouton Close d'une fenêtre, en retirant le menu correspondant du menu système.
L'appel à SetWindowPos permet de prendre en charge les modifications apportées à la fiche.
HMENU hmenu;
hmenu = GetSystemMenu (this - > Handle, false );
if (hmenu ! = NULL )
RemoveMenu (hmenu, SC_CLOSE, NULL );
}
SetWindowPos (this - > Handle, NULL , 0 , 0 , 0 , 0 , SWP_NOSIZE | SWP_NOMOVE | SWP_NOZORDER | SWP_DRAWFRAME);
|
Toutefois faites attention au fait que cette méthode n'empêche pas la fermeture de la fenêtre avec la combinaison ALT+F4 ou l'option Fermer (clic droit sur l'icône de la fiche dans la barre de tâches). Pour empêcher la fermeture d'une fenêtre, voyez le lien donné ci-dessous.
|
lien : Comment empêcher qu'une fiche soit fermée ?
lien : Comment ajouter un élément au menu système ?
|
| auteurs : Neo41, JEG | Cette solution permet d'empêcher la fermeture d'une fiche via les moyens classiques (bouton Close dans la barre de titre, option Fermer dans le menu système de la fenêtre). C'est ainsi à l'utilisateur d'implémenter son propre code et sa propre gestion pour autoriser cette fermeture (par exemple, saisie d'un mot de passe avant de pouvoir fermer).
Lorsqu'une fenêtre est fermée, les évènements suivants sont appelés dans l'ordre:
- OnCloseQuery
- OnClose
- OnDestroy
L'évènement OnDestroy n'est appelé que lorsque la fenêtre est détruite réellement. En fait, appeler la méthode Close sur une fiche ne la détruit pas mais la cache uniquement. Pour détruire la fenêtre il faut agir sur le paramètre Action dans l'évènement OnClose.
Pour intercepter la demande de fermeture d'une fiche il faut implémenter l'évènement OnCloseQuery de la façon suivante:
void __fastcall TForm1:: FormCloseQuery (TObject * Sender, bool & CanClose)
{
...
if (condition)
{
CanClose = false ;
}
}
|
|
| auteur : Neo41 |
Pour supprimer les boutons Maximize, Minimize ou Close d'une fenêtre, il faut agir sur la propriété BorderIcons de la forme.
- Pour supprimer les trois boutons et le menu système, il faut mettre biSystemMenu à false
- Pour désactiver seulement le bouton Maximize, il faut mettre biMaximize à false
- Pour désactiver seulement le bouton Minimize, il faut mettre biMinimize à false
Il n'est pas possible de supprimer le bouton Close indépendamment des autres. En revanche, il est possible de le désactiver (lien ci-dessous).
|
lien : Comment désactiver le bouton de fermeture d'une fenêtre ?
|
| auteur : Geronimo | Un splash screen est un écran qui est affiché pendant le chargement d'un logiciel (l'image que vous voyez quand vous démarrez C++Builder par exemple).
Pour en afficher un pendant le démarrage de votre programme, créez une nouvelle fiche (Fichier | Nouvelle fiche), positionnez sa propriété BorderStyle à bsNone et FormStyle à fsStayOnTop. Nommez votre fiche Splash_dlg. Utilisez les options (Projet | Options) pour ne pas créer la fiche automatiquement au démarrage. Ensuite, affichez la fonction WinMain de votre projet (Fichier | Voir le source). Avant les instructions Application->CreateForm(/*...*/), placez le code suivant :
Splash_dlg= new TSplash_dlg (NULL );
Splash_dlg- > Show ();
Splash_dlg- > Repaint ();
|
Après les instructions Application->CreateForm(/*...*/), placez le code suivant :
Ainsi, la fiche splash screen sera affichée pendant la création des autres fiches.
N.B. N'oubliez évidemment pas d'inclure le .h de votre Splash_Form dans le module principal de votre application.
|
| auteur : Geronimo |
Utilisez le code suivant :
BorderStyle = bsNone;
Left = 0 ;
Top = 0 ;
Width = Screen- > Width;
Height = Screen- > Height;
|
BorderStyle = bsNone permet de faire disparaître la barre de titre. Les deux lignes suivantes sont aisément compréhensibles, n'oubliez pas que nous sommes dans une classe fiche, donc que Left et Top sont les positions de la fiche. Enfin, il suffit de faire coïncider la largeur et la hauteur de la fiche avec celle de l'écran, ce que font nos deux dernières lignes. Bien sûr, ce code se place dans le constructeur de votre fiche, ou dans l'évènement OnCreate.
Evitez tout de même de mettre une application qui n'en a pas besoin en plein écran !
|
| auteur : Geronimo |
Utilisez la fonction ShellExecute de la manière suivante :
ShellExecute (Handle, " open " , " mailto:adresse@provider.ex?subject=Titre_du_message&body=Corps du message " , 0 , 0 , SW_SHOWNORMAL);
|
|
| auteur : Geronimo |
Utilisez la fonction ShellExecute de la manière suivante :
ShellExecute (Handle, " open " , " http://www.google.com " , 0 , 0 , SW_SHOWNORMAL);
|
|
| auteurs : blondelle, Nono40 |
Pour animer l'apparition d'une fenêtre, il faut utiliser la méthode AnimateWindow :
int typeAnimate = 1 ;
TForm* Form2 = new TForm (NULL );
Form2- > Show ();
Form2- > Hide ();
AnimateWindow (Form2- > Handle, 1000 , typeAnimate);
Form2- > Close ();
delete Form2;
|
Voici la liste des codes d'animation :
- 0 => rien ;
- 1 => de Gauche à droite ;
- 2 => de droite à gauche ;
- 3 => de Gauche à droite ;
- 4 => de haut en bas ;
- 5 => du coin haut gauche ;
- 6 => du coin haut droit ;
- 7 => du coin haut gauche ;
- 8 => du bas vers le haut ;
- 9 => du coin bas gauche ;
- 10 => du coin bas droit ;
- 11 => du coin bas gauche ;
- 12 => du haut vers le bas ;
- 13 => du coin haut gauche ;
- 14 => du coin haut droit ;
- 15 => du coin haut gauche.
|
Consultez les autres F.A.Q.
|
|