6
votes

Windows et Conseils à Delphes

Ce matin, je me suis enfin décidé et j'ai décidé de vous demander de l'aide. Le problème est que dans mon application Delphi, aucune indication n'est affichée du tout ... J'ai lu sur le problème de Thintact, j'ai lu des guides / des didacticiels / manuels, essayé manuellement d'appeler manuellement des fenêtres d'indice (manutentionnaires d'événements de tir), mais rien n'a fonctionné. Ils ne montrent juste pas. J'ai manqué d'idées ...

J'ai essayé de: définir les parent showhints sur les composants, les formulaires, des gestionnaires d'événements, l'application ActivateHint () ...

Y a-t-il une autre façon de le faire (à l'exception des appels d'API, bien sûr)?


2 commentaires

Utilisez-vous des bibliothèques non standard? J'ai eu le même problème une fois et il s'est avéré être un composant tiers qui détournent la gestion de l'indice.


HMM, pourrait être, mais cela nécessite des recherches. Je vais y penser! Merci pour le conseil ...


7 Réponses :


6
votes

Tout d'abord, quelle version de Delphi utilisez-vous?

Deuxièmement, je vous recommande d'essayer de créer une application simple à partir de zéro, avec une seule forme et dites un bouton d'outil (ou tout autre contrôle pouvant afficher des allumettes), avec des spectateurs activés et voir si cela le montre. Si une application aussi simple, vous n'obtiendrez aucune astuce, je vous recommanderais de réinstaller Delphi, peut-être que quelque chose dans votre installation est vissé ...


4 commentaires

NOP, comme je l'ai déjà essayé - Toute propriété, que ce soit de runétime et de design du temps, n'invoque pas la fenêtre de l'indice ... aussi - J'ai eu ce problème avant et la réinstallation a aidé, mais je veux vraiment l'éviter ....


Si au niveau le plus simple, vous ne pouvez pas montrer des allusions, je devinerais quelque chose est vraiment vêtu de votre installation ou de votre environnement.


Merde. MH, OK, dois réinstaller ... il semble que la solution soit assez codée et peu fiable, :(


J'ai abandonné - c'est la raison. La solution consiste à interférer directement avec OS API, mais je n'ai pas beaucoup de connaissances sur les notes. Aussi - il y a peu de solutions basées sur Winapi sur le Web, mais cela rendrait mon application d'application à Big alors j'ai décidé d'ajouter des allusions lorsque j'aurai plus de temps pour me concentrer sur l'interface graphique que possible ... ou même jamais implémenter. Dans la base qu'il est assez simple - je pourrais créer des fichiers stresslist et charger le bonheur nécessaire par index / étiquette / étiquette / émetteur ... Peu importe, mais c'est juste un moyen de boiteux s'il y a une propriété spéciale dans Object Brwser, même s'il y a un bug dans l'IDE ...



1
votes

Avez-vous essayé d'ajouter application.Showhint à votre fichier de projet?

Le fichier de projet ressemblerait à quelque chose comme celui-ci xxx


3 commentaires

Pas besoin de devenir frustré. Si tout ce que vous avez mentionné est l'application, il n'ya aucun moyen de savoir que vous avez essayé ce que j'ai suggéré.


Oh, désolé, je ne l'ai pas fait comme frustration. Juste ce bogue d'indice commençant un peu ....


Aucune offense prise, croyez-moi, je sais ce que vous voulez dire.



0
votes

Quelques conseils:

  • Vérifiez si vous ou un autre composant / unité a défini une classe d'indice personnalisée. Si oui, trouvez ce composant / unité et retirez-le.
  • Compilez votre application avec débogage DCUS et mettez des points d'arrêt aux endroits appropriés de Forms.Pas. Puis à travers le code et vois ce qui se passe.

0 commentaires

3
votes

Je parie que vous êtes sur XP et votre installation est plutôt ancienne.

Un de mes amis avait ce problème exact dans sa machine. Aucune astuce VCL se présentait dans sa machine. Cela inclut les applications qu'il a construites, le Delphi Ide utilisé (7 AfAicr) et toute autre application construite Delphi qu'il avait sur sa machine. Nous avions donc conclu en blâmant son instance WinXP qui a été sur la course depuis 2 ans avec beaucoup de déchets (probablement c'était une application qu'il a installée à un moment d'accrocher des messages à un moment donné, ce qui entraîne ce comportement étrange). Cela pourrait être votre cas aussi.

ps. Un autre point intéressant - les astuces apparaissaient si vous définissez Application.hintpause sur une valeur basse comme 100-200. Vous voudrez peut-être essayer cela aussi.


2 commentaires

Oui, ça a fonctionné. Enfin! Je tiens également à souligner que cela pourrait alterner le mésange crochet / intercepter avec un délai de demi-seconde ou un peu moins de seconde :) La chose que je pouvais remarquer est que parfois mon bureau rafraîchi sans escrochir avec environ un deuxième intervalle lorsque j'ai utilisé SE PC Suite 5.0 avec mon téléphone pendant l'écriture de code. II est possible que certains services utilisent simplement certains messages spécifiques qui provoquent des fenêtres d'indice d'indice «oaudred» ou un module de notification est verrouillé par le service ... Je commence à penser que nous devrions faire un rapport / commentaires de bugs à ce sujet. .


Travaillé aussi pour moi! Mon application était en cours d'exécution sur de nombreuses machines, mais une seule n'a pas montré l'indice. Définir l'application.hintpause à "100" corrigé. Merci!



0
votes

ok - comme je suis récemment mis à niveau vers la version 2010 (14.x), j'étais certainement sûr que ce problème d'indice est un bogue dans l'IDE.

Seules SOLUTIONS est: - changer la propriété hintpause - Essayez de réinstaller IDE


0 commentaires

1
votes

Je viens de connaître ce problème sur Delphi-5, "L'application d'exécution n'affiche pas les indications sur la souris-Hover". Cela fonctionne bien sur mes autres applications.

Je l'ai traqué sur ce qui suit: Projet | Options | Compilateur | Débogage | Utilisez DEBUG DCUS Ceci a été vérifié, décocher et re-compilation permet mes notes.


0 commentaires

0
votes

Je rencontre aussi mon PC (Win10) ne peut pas montrer mon indice de mon AP (fait par Delphi 7). Travaillez à nouveau après avoir mis la ligne suivante dans le fichier .DPR: 100 est un nombre magique, 500 ou 1000 ne fonctionnant pas.

begin
  Application.Initialize;
  Application.ShowHint := True;
  Application.HintPause:=100;
  Application.Run;
end.


0 commentaires