Comment faire pour que la sortie sur un graphique soit en police monospace ?

 

Comment( ) - affiche les informations en police proportionnelle sur le graphique, mais a des difficultés avec le formatage des tableaux, par exemple.

Comment puis-je afficher les informations sur le graphique en police monospace à l'aide de Comment() ?

 
Yury Kirillov:

Comment() - affiche les informations en police proportionnelle sur le graphique, mais a des difficultés avec le formatage des tableaux, par exemple.

Comment puis-je afficher les informations sur le graphique en police monospace à l'aide de Comment() ?

SeulementOBJ_LABEL

 
Vitaly Muzichenko:

SeulementOBJ_LABEL


C'est un graphique, tout est clair.

 
Yury Kirillov:

C'est un graphique, tout est clair.

Il n'y a rien que vous puissiez faire à propos deComment, il a un but légèrement différent.

 
Vitaly Muzichenko:

Rien que vous puissiez faire à propos deComment, il a un but légèrement différent.


Comment la police est-elle définie dans Commentaire?

 
Yury Kirillov:

Qu'est-ce qui détermine la police de caractères dans Commentaire ?

Je n'ai pas vraiment compris, mais il semble prendre les paramètres système de l'OS

 
Vitaly Muzichenko:

Je n'ai pas vraiment compris, mais il semble prendre les paramètres du système d'exploitation.


Il semble qu'il s'agisse d'une police Terminal et qu'il soit apparemment impossible de la modifier.

 

c'est ce qu'on vous a dit, éditez-le vous-même, et à n'importe quel endroit et dans n'importe quelle police, trouvez une police monospace dans les vents

le couper du logiciel en direct, je pense que vous pouvez le découvrir.

bool CreateLabel(string name,int x,int y=10)
  {
   if(!ObjectCreate(0,name,OBJ_LABEL,0,0,0))
      return false;;
   ObjectSetInteger(0,name,OBJPROP_ANCHOR,ANCHOR_LEFT_LOWER);
   ObjectSetInteger(0,name,OBJPROP_CORNER,CORNER_LEFT_LOWER);
   ObjectSetInteger(0,name,OBJPROP_XDISTANCE,x);
   ObjectSetInteger(0,name,OBJPROP_YDISTANCE,y);
   ObjectSetInteger(0,name,OBJPROP_FONTSIZE,FontSize);
   ObjectSetInteger(0,name,OBJPROP_COLOR,FontColor);
   ObjectSetInteger(0,name,OBJPROP_SELECTABLE,true);
   ObjectSetString(0,name,OBJPROP_FONT,FontName);
   ChartRedraw();
   return true;
  }

// где-то выводим строку с именем
ObjectSetString(0,"SIP_"+lNames[2],OBJPROP_TEXT,lNames[2]+DoubleToString(sprd,_Digits)+",  RealSpread="+DoubleToString(Ask-Bid,_Digits));

**

 
Alexey Volchanskiy:

c'est ça, éditez-le vous-même, et à n'importe quel endroit et dans n'importe quelle police, trouvez une police monospace dans les vents

le couper du logiciel en direct, je pense que vous pouvez le découvrir.

**


Merci, Alexey ! Je n'ai aucun problème avec la sortie des polices graphiques. Je pensais pouvoir réparer les polices du système d'une manière ou d'une autre.

 
Yury Kirillov:

Merci, Alexey ! Je n'ai aucun problème avec la sortie des polices graphiques. J'ai pensé qu'il y avait peut-être un moyen de modifier les polices du système.


Ah, eh bien, je vais passer.

 
Yury Kirillov:

Comment() - affiche les informations en police proportionnelle sur le graphique, mais a des difficultés avec le formatage des tableaux, par exemple.

Comment puis-je afficher les informations sur le graphique en police monospace avec Comment() ?


Vous pouvez mesurer la largeur de chaque caractère en piskels (il y aura plusieurs groupes avec la même largeur). Écrivez une fonction qui ajoutera toute chaîne de caractères avec des espaces jusqu'à ce qu'elle atteigne une largeur donnée. Assemblez ensuite le commentaire à partir de ces sous-chaînes.

Si vous créez une telle fonction, postez-la sur kodobase, beaucoup vous remercieront. Et moi aussi. Je suis trop paresseux pour me déranger.

Dans ce cas, le symbole \x200A serait utile - largeur minimale de l'espace, pour un ajustement exact. Et remplacez les espaces normaux par le symbole /1 - espace large (après tout, la longueur du commentaire est limitée). Peut-être que d'autres espaces sont utiles, mais je ne les connais pas.

Raison: