Contents Up Previous Next

Vue d'ensemble des boites de dialogues communes

Classes: wxColourDialog, wxFontDialog, wxPrintDialog, wxFileDialog, wxDirDialog, wxTextEntryDialog, wxPasswordEntryDialog, wxMessageDialog, wxSingleChoiceDialog, wxMultiChoiceDialog

Les classes et fonctions de boites de dialogues communes encapsulent les boites de dialogues les plus comunément utilisées. Elles sont toutes 'modales', gardant le contrôle jusqu'à ce que l'utilisateur ferme la boite de dialogue, pour les rendre facilement utilisables au sein d'une application.

Certaines boites de dialogue ont à la fois une implémentation dépendante de la plateforme, et une implémentation indépendante, de sorte que si le système de fenêtrage ne fourni pas la fonctionnalité requise, les classes et fonctions génériques prennent le relais. Par exemple, sous Ms Windows, wxColourDialog utilise le sélecteur de couleur standard. Il y a aussi un équivalent nommé wxGenericColourDialog pour d'autres plateformes, et une macro défini wxColourDialog comme étant le même que wxGenericColourDialog sur les plateformes non-MS Windows. Cependant, sous MS Windows, la boite de dialogue générique peut quand même être utilisée, pour tester ou pour toute autre raison.

Vue d'ensemble de wxColourDialog
Vue d'ensemble de wxFontDialog
Vue d'ensemble de wxPrintDialog
Vue d'ensemble de wxFileDialog
Vue d'ensemble de wxDirDialog
Vue d'ensemble de wxTextEntryDialog
Vue d'ensemble de wxPasswordEntryDialog
Vue d'ensemble de wxMessageDialog
Vue d'ensemble de wxSingleChoiceDialog
Vue d'ensemble de wxMultiChoiceDialog


Vue d'ensemble de wxColourDialog

Classes: wxColourDialog, wxColourData

La boite de dialogue wxColourDialog présente un sélecteur de couleur à l'utilisateur, et retourne les informations sur la couleur sélectionnée.

Le sélecteur de couleur de MS Windows

Sous Windows, le sélecteur de couleur natif est utilisé. Il se présente sous la forme d'une boite de diaogue avec trois zones principales : en haut à gauche, une palette de 48 couleurs les plus utilisées est affichée. En dessous, il y a une palette de 16 'couleurs presonnalisées' qui peuvent être définies par l'application si désiré. En plus, l'utilisateur peut ouvrir la boite de dialogue pour afficher un panel à droite contenant des contrôles pour sélectionner une couleur précise, et l'ajouter à la palette des couleurs personnalisées.

Le sélecteur de couleur générique

Sous les plateformes non-MS Windows, le sélecteur de couleur est une simulation de la plupart des fonctionnalités du sélecteur MS Windows. Deux palettes de 48 couleurs standards et 16 couleurs personnalisées sont présentées, avec une zone à droite contenant trois curseurs permettant à l'utilisateur de sélectionner une couleur personnalisée à partir de ses composantes rouge, verte et bleue. Cette couleur peut être ajoutée à la palette des couleurs personnalisées, et remplacera soit la couleur sélectionnée, soit la première dans la palette si aucune n'est sélectionnée. Les curseurs de couleur RGB ne sont pas optionnels dans le sélecteur de couleur générique. Le sélecteur générique de couleur est également disponible sous MS Windows; il a pour nom wxGenericColourDialog.

Exemple

Dans le répertoire samples/dialogs, il y a un exemple de l'utilisation de la classe wxColourDialog. Voici un extrait qui défini certains paramètres d'un objet wxColourData, incluant une échelle de gris pour les couleurs personnalisées. Si l'utilisateur n'annule pas la boite de dialogue, l'application retrouve la couleurs sélectionnée et l'utilise pour définir l'arrière plan d'une fenêtre.

  wxColourData data;
  data.SetChooseFull(true);
  for (int i = 0; i < 16; i++)
  {
    wxColour colour(i*16, i*16, i*16);
    data.SetCustomColour(i, colour);
  }
      
  wxColourDialog dialog(this, &data);
  if (dialog.ShowModal() == wxID_OK)
  {
    wxColourData retData = dialog.GetColourData();
    wxColour col = retData.GetColour();
    wxBrush brush(col, wxSOLID);
    myWindow->SetBackground(brush);
    myWindow->Clear();
    myWindow->Refresh();
  }

Vue d'ensemble de wxFontDialog

Classes: wxFontDialog, wxFontData

La boite de dialogue wxFontDialog présente un sélecteur de police de caractère à l'utilisateur, et retourne les informations de police et de couleur sélectionnées.

Le sélecteur de police de MS Windows

Sous Windows, le sélecteur de police natif est utilisé. Il se présente sous la forme d'une boite de dialogue avec des contrôles pour le nom de la police, la taille, le style, le poids, le soulignement, le 'barré' et la couleur d'écriture du texte. Un exemple de la police sélectionnée est affiché dans une zone blanche de la boite de dialogue. Notez que lors de la traduction d'une police MS Windows vers une police wxWidgets, l'attribut barré' est ignoré et une famille de police (telle que Swiss ou Modern) est déduite de l'actuel nom de police (tel que Arial ou Courier).

Le sélecteur de police générique

Sous les plateformes non-MS Windows, le sélecteur de police est plus simple. Il contient des contrôles pour le nom de la famille de police, la taille, le style, le poids, le soulignement et la couleur du texte, et un exemple est affiché en dessous sur un fond blanc. Le sélecteur de police générique est également disponible sous MS Windows, il a pour nom wxGenericFontDialog.

Exemple

Dans le répertoire samples/dialogs, il y a un exemple de l'utilisation de la classe wxFontDialog. l'application utilise la police obtenue et sa couleur pour dessiner du texte sur un canevas. Voici un extrait:

  wxFontData data;
  data.SetInitialFont(canvasFont);
  data.SetColour(canvasTextColour);
      
  wxFontDialog dialog(this, &data);
  if (dialog.ShowModal() == wxID_OK)
  {
    wxFontData retData = dialog.GetFontData();
    canvasFont = retData.GetChosenFont();
    canvasTextColour = retData.GetColour();
    myWindow->Refresh();
  }

Vue d'ensemble de wxPrintDialog

Classes: wxPrintDialog, wxPrintData

Ces classes représentent les boites de dialogue commune d'impression et d'aperçu avant impression. Vous pouvez obtenir un contexte de périphérique wxPrinterDC depuis une fermeture avec succès de la boite de dialogue d'impression.

L'exemple samples/printing montre comment l'utiliser : voir vue d'ensemble de l'impression pour un extrait de cet exemple.


Vue d'ensemble de wxFileDialog

Classes: wxFileDialog

Affiche une boite de sélection de fichier. Sous Windows et GTK2.4+, il s'agit de la boite de dialogue habituelle de sélection de fichier. Sous X, il s'agit d'une boite de dialogue de sélection de fichier avec un peu moins de fonctionnalités. Le chemin et le nom de fichier sont des éléments distincts d'un emplacement de fichier complet. Si le chemin est "", le répertoire courant sera utilisé. Si le nom du fichier est "", aucun nom de fichier par défaut ne sera fourni. Le jocker détermine quels fichiers sont affichés dans le sélecteur, et l'extension fourni l'extension type pour le nom de fichier requis. Le style de la boite de dialogue peut être une combinaison entre wxFD_OPEN, wxFD_SAVE, wxFD_OVERWRITE_PROMPT, wxFD_FILE_MUST_EXIST, wxFD_MULTIPLE, wxFD_CHANGE_DIR ou 0.

Les versions X et Windows implémentent toutes les deux le filtre par jocker. Saisir un nom de fichier contenant des jockers (*, ?) dans l'élément texte du nom de fichier et cliquer sur Ok fera que seuls les fichiers correspondants au filtre seront affichés. Dans la version X, ne pas donner de nom par défaut fera en sorte que le filtre sera inséré dans le champ texte du nom de fichier; le filtre est ignoré si un nom par défaut est spécifié.

Le joker peut être une spécification pour de multiples types de fichiers avec une description pour chacun, comme par exemple :

 "Fichiers BMP (*.bmp)|*.bmp|Fichiers GIF (*.gif)|*.gif"

Vue d'ensemble de wxDirDialog

Classes: wxDirDialog

Cette boite de dialogue affiche une boite de sélection de répertoire, permettant à l'utilisateur de sélectionner un simple dossier.


Vue d'ensemble de wxTextEntryDialog

Classes: wxTextEntryDialog

il s'agit d'une boite de dialogue avec un champ permettant de saisir du texte. La valeur que l'utilisateur a entré peut être obtenue en utilisant wxTextEntryDialog::GetValue.


Vue d'ensemble de wxPasswordEntryDialog

Classes: wxPasswordEntryDialog

Il s'agit d'un boite de dialogue avec un champ de saisie de mot de passe. La valeur que l'utilisateur a entré peut être obtenue en utilisant wxTextEntryDialog::GetValue.


Vue d'ensemble de wxMessageDialog

Classes: wxMessageDialog

Cette boite de dialogue affiche un message, ainsi que des boutons pouvant être choisis parmi Ok, Annuler, Oui et non. Sous windows, une icône optionnelle peut être affichée, telle qu'un point d'exclamation, d'interrogation.

La valeur retournée par wxMessageDialog::ShowModal indique quel bouton a été pressé.


Vue d'ensemble de wxSingleChoiceDialog

Classes: wxSingleChoiceDialog

Cette boite de dialogue affiche une liste de choix, ainsi qu'un bouton Ok et un bouton (optionnel) Annuler. L'utilisateur ne peut sélectionner qu'un seul élément. La sélection peut être obtenue depuis la boite de dialogue comme un index, une chaine de caractère ou une donnée cliente.


Vue d'ensemble de wxMultiChoiceDialog

Classes: wxMultiChoiceDialog

Cette boite de dialogue affiche une liste de choix, ainsi qu'un bouton Ok et un bouton (optionnel) Annuler. L'utilisateur peut sélectionner un ou plusieurs éléments.