Combobox de selection d'une police

Soyez le premier à donner votre avis sur cette source.

Snippet vu 11 969 fois - Téléchargée 32 fois

Contenu du snippet

Coller le code suivant dans un fichier de classe, il ne vous plus qu'a l'utiliser comme une combobox :)

Source / Exemple :


using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Windows.Forms;
using System.Drawing.Text;

namespace Crazyht.C.Windows.Forms
{
	/// <summary>
	/// Combobox contenant les Fonts installé sur le système
	/// </summary>
	[ToolboxBitmap(typeof(Crazyht.C.Windows.Forms.ComboFont),"ComboFont.bmp")]public class ComboFont : System.Windows.Forms.ComboBox
	{
		public ComboFont ()
		{
			InstalledFontCollection fonts =new System.Drawing.Text.InstalledFontCollection();
			FontFamily [] fontfamill = fonts.Families;
			
			for (long i = fontfamill.GetLowerBound(0);i<=fontfamill.GetUpperBound(0);i++)
				this.Items.Add(fontfamill[i].Name);
        
			fontfamill = null;
			fonts = null;
			this.SelectedIndex = 0;
		}

		protected override void OnKeyPress (KeyPressEventArgs args)
		{
			Int32 key = Convert.ToInt32(args.KeyChar);
			if (!( (key == 13) || (key == 27) || (key==8)))
			{
				string sCherche = this.Text.ToLower();
				foreach (Object obj in this.Items)
				{
					if ( obj.ToString().ToLower().StartsWith(sCherche))
					{
						this.Text = obj.ToString();
						this.SelectionStart = sCherche.Length;
						this.SelectionLength = obj.ToString().Length - sCherche.Length;
						this.SelectedItem = obj;
						args.Handled = true;
						break;
					}
				}
			}
			base.OnKeyPress(args);
		}
	}
}

Conclusion :


Bonne prog

A voir également

Ajouter un commentaire

Commentaires

Messages postés
15
Date d'inscription
samedi 2 janvier 2010
Statut
Membre
Dernière intervention
27 août 2011

Bonjours j'aimerais savoir comment ensuite attribué le chois de la police comme police du richTextBox et comment créer ensuite un comboBox avec les taille de la police choisis, car les polices n'utilise pas toutes les même taille7
merci d'avance
Messages postés
1522
Date d'inscription
mardi 18 décembre 2001
Statut
Modérateur
Dernière intervention
21 août 2010
5
Ouep mais j'aime pas utiliser DataSource :) Surement des reste de VB6 :(
Messages postés
9
Date d'inscription
dimanche 2 février 2003
Statut
Membre
Dernière intervention
15 mai 2003

Autre moyen de récupérer les polices installées dans un ComboBox:

votreComboBox.DataSource = (new InstalledFontCollection()).Families;
votreComboBox.DisplayMember = "Name";

Les objets Items que vous récupérez dans la Combo sont alors directement les objets Font.

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.