Erreurs, bugs, questions - page 1349

 

Admins, faites quelque chose avec les amis fictifs qui demandent constamment des amis ! Parce que ces demandes viennent périodiquement de ceux qui ont déjà été rejetés !

J'en ai marre de leurs pages de publicité ! Peut-être devrions-nous ajouter un bouton supplémentaire, comme "interdiction" ou "plainte", aux boutons qui ont déjà "accepter" et "rejeter" ?

 

Il y a un autre bug que je vois depuis longtemps, mais je n'arrive pas à en trouver la raison.

L'essence du bogue concerne OBJPROP_TOOLTIP lors de la création d'un objet, comme les boutons lorsque vous spécifiez OBJPROP_TOOLTIP est parfois tout simplement pas écrit ...

Par exemple, je crée 10-15 boutons, 10 d'entre eux obtiennent OBJPROP_TOOLTIP, mais 5 ne l'obtiennent pas ... Je ne sais pas ce que c'est ...

 
Vladimir Pastushak:

Il y a un autre bug que je vois depuis longtemps, mais je n'arrive pas à en trouver la raison.

L'essentiel du bogue concerne OBJPROP_TOOLTIP : lors de la création d'un objet tel qu'un bouton, lorsque l'on spécifie OBJPROP_TOOLTIP, il arrive que OBJPROP_TOOLTIP ne soit tout simplement pas écrit ...

Par exemple, je crée 10 à 15 boutons, 10 ont OBJPROP_TOOLTIP et 5 ne l'ont pas... Je n'arrive pas à comprendre...

J'ai découvert quand ce bug se produit ! !!

Si le nom de l'objet contient un fragment de texte "Com", OBJPROP_TOOLTIP ne fonctionne pas ......

 
Aide. Je ne comprends pas pourquoi et comment le conseiller ne fonctionne pas.
Dossiers :
 
MSI357 Михаил:
Je ne comprends pas pourquoi et comment l'EA ne fonctionne pas.

Pour commencer, veuillez prescrire

#property strict
, réparez tous les avertissements. Et décrivez ensuite plus en détail ce qui ne fonctionne pas.
 
MSI357 Михаил:
Aide. Je ne comprends pas pourquoi ou comment l'EA ne fonctionne pas.
Le code est écrit dans l'ancien style, c'est-à-dire qu'il n'a pas de contrôle d'erreur strict, pour cela vous devez prescrire au début du code :
#property strict

Il est également nécessaire de mettre en conformité toutes les fonctions de traitement des événements, consultez l'aide de cette section et regardez le code - remplacez toutes les fonctions obsolètes par de nouvelles.

Il est souhaitable de remplacer les variables globales présentes dans le code de l'EA et utilisées uniquement dans les fonctions utilisateur par des variables locales. Cette étape évitera de nombreuses erreurs "enfantines", et le code sera plus facile à lire.

Il est obligatoire d'examiner les changements dans les priorités des opérations (le fichier d'aide correspondant), certaines opérations dans l'ancien style ont changé leurs priorités, respectivement, vous pouvez avoir besoin de changer les conditions dans la logique.

Après cela, s'il y a des erreurs, demandez avec une description détaillée de ce qui ne fonctionne pas.

 

Question sur le sujet. Le recompilateur de MT4 à MT5 et vice versa a-t-il déjà été levé ? Et quels sont les résultats ?

Par un conseiller pour transférer vers un autre terminal.

 
Vladimir Pastushak:

J'ai trouvé quand ce bug se produit ! !!

Si le nom de l'objet contient le fragment de texte "Com", OBJPROP_TOOLTIP ne fonctionne pas ......

Com ! =Com

tout fonctionne

void OnStart()
{
        const string object_name = "Сom";
        ::ObjectCreate( 0, object_name, OBJ_BUTTON, 0, 0, 0 );
                          ::ObjectSetString( 0, object_name, OBJPROP_TOOLTIP, object_name );
        const string tt = ::ObjectGetString( 0, object_name, OBJPROP_TOOLTIP );
        Print( "tt=", tt );
}
 
A100:

Com != Com

tout fonctionne

Pas d'erreur avec le texte russe, le tickst russe est rougeoyant...

Vous créez un objet différent pour moi, 20 objets...

Pourquoi mettez-vous : : devant la fonction ?

 
Vladimir Pastushak:

Il n'y a pas d'erreurs dans le texte russe, le ticktock russe est rougeoyant...

Non éclairé entre guillemets