PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Zoom fenêtre
Zoom fenêtre
Débuté par Nicolas Brandt, 14 juin 2021 17:25 - 4 réponses
Membre enregistré
203 messages
Posté le 14 juin 2021 - 17:25
Bonjour

j'ai mis ce code en fin d'initialisation des fenêtres :
(pour s'adapter à la taille des écrans des utilisateurs de mon appli)

Résolution_Ecran est une chaîne
nHauteur_Ecran est un numérique
nLargeur_Ecran est un numérique
nHauteur_Fenetre est un numérique
nLargeur_Fenetre est un numérique
xCoef_Zoom_Hauteur est un numérique
xCoef_Zoom_Largeur est un numérique

Résolution_Ecran = SysRésolutionEcran()
//Trace("Résolution Largeur =" + ExtraitChaîne(ChaîneRes, 1) + RC + ...
//"Résolution Hauteur =" + ExtraitChaîne(ChaîneRes, 2) + RC + ...
//"Nb bits par pixel = " + ExtraitChaîne(ChaîneRes, 3) + RC + ...
//"Taux de rafraîchissement =" + ExtraitChaîne(ChaîneRes, 4))

nHauteur_Fenetre = MoiMême..HauteurInitiale
nLargeur_Fenetre = MoiMême..LargeurInitiale
nHauteur_Ecran = Val(ExtraitChaîne(Résolution_Ecran, 2))
nLargeur_Ecran = Val(ExtraitChaîne(Résolution_Ecran, 1))
xCoef_Zoom_Hauteur = (nHauteur_Ecran / nHauteur_Fenetre) * 93
xCoef_Zoom_Largeur = (nLargeur_Ecran / nLargeur_Fenetre) * 93

MoiMême..Zoom = Min(xCoef_Zoom_Hauteur,xCoef_Zoom_Largeur)

ca fonction bien
par contre les libellés des boutons qui sont 2 lignes, ça coupe le mot du bas

Auriez vous une idée pour éviter que les mots soient coupés

Merci

--
Nicolas Brandtfr
Membre enregistré
311 messages
Popularité : +3 (5 votes)
Posté le 14 juin 2021 - 20:39
https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windev/250186-adaptation-taille-police-caractere-dans-etiquettes/read.awp
Tu peux adapter cette fonction
Bon dev

--
Développeur freelance en PHP laravel et produit PCSOFT.En cas de besoin veuillez me contacter (senitdev@gmail.com).
Membre enregistré
203 messages
Posté le 15 juin 2021 - 10:20
merci
mais ça ne fonctionne pas pour les libellés des boutons

--
Nicolas Brandtfr
Membre enregistré
3 881 messages
Popularité : +227 (347 votes)
Posté le 15 juin 2021 - 10:21
Bonjour,
Il faut regarder du côté de TexteHauteur
Un truc du style
chChampTest est Champ
nHauteurBouton est entier

//Texte hauteur n'est valable que pour les champ de saisie et les libellés
chChampTest<-ChampCrée("SAI_Bidon",typTexte,30,200,140,20)
nHauteurBouton=TexteHauteur("SAI_Bidon",BTN_Multiligne..Libellé,tMultiligne)
SI nHauteurBouton>HAUTEUR_DEFAUT ALORS
BTN_Multiligne..Hauteur=nHauteurBouton+15 //15 pour les marges
FIN
ChampSupprime(chChampTest)

On aura pris soin de définir les constantes :
CONSTANTE
HAUTEUR_DEFAUT=24
LARGEUR_DEFAUT=80
FIN


--
Il y a peut être plus simple, mais, ça tourne
Membre enregistré
203 messages
Posté le 15 juin 2021 - 11:57
j'ai mis ce code
ça correspond à ce que je souhaite


i est un entier = 1
NomChamp est une chaîne = EnumèreChamp(Nom_Fenêtre, i)

TANTQUE NomChamp <> ""
i++

// Modifie la taille de la police des Boutons
SI Gauche(NomChamp,3) = "BTN" ALORS
nTaille_Police_NomChamp est un entier = {NomChamp + "..PoliceTaille"}
{NomChamp + "..PoliceTaille"} = (nTaille_Police_NomChamp*gxCoef_Zoom)/100
FIN

// Modifie la taille de la police des Interrupteurs
SI Gauche(NomChamp,3) = "INT" ALORS
nTaille_Police_NomChamp est un entier = {NomChamp + "..PoliceTaille"}
{NomChamp + "..PoliceTaille"} = (nTaille_Police_NomChamp*gxCoef_Zoom)/100
FIN

NomChamp = EnumèreChamp(Nom_Fenêtre, i)
FIN

--
Nicolas Brandtfr