2016-10-17 4 views
-1

Je veux définir la position de richtextbox en prenant la position de la souris à l'heure actuelle. Je sais déjà comment prendre la position de la souris. Mais je ne sais pas comment définir la position de richtextbox. Bien sûr, la position de richtextbox avec le bureau n'est pas avec le formulaire.Puis-je définir la position de richtextbox?

J'ai essayé l'emplacement, cela n'a pas fonctionné. Résultat attendu:

enter image description here

+1

Vous pouvez utiliser 'richtextBox1.Location = emplacement;' mais on ne sait pas ce que 'location' ne vous attendez. * Cela n'a pas fonctionné * ne nous aide pas à vous aider. Qu'est-ce que l'image essaie de décrire? Et quel est le code que vous avez utilisé pour faire le travail? –

+0

Voulez-vous juste que la zone de texte suive la souris? – Brandon

+0

La photo signifie cela. Après avoir reçu du texte (bonjour), je vais montrer la riche zone de texte qui a le sens de bonjour. Je veux le montrer à côté de la souris. Bien sûr, la souris peut se déplacer partout, pas dans la forme. –

Répondre

0

Vous pouvez utiliser une autre forme sans frontières avec RichTextBox imposées. Et changer la position du formulaire par minuterie.

Exemple simple:

using System; 
using System.Drawing; 
using System.Windows.Forms; 

namespace WindowsFormsApplication1 
{ 
    public partial class Form1 : Form 
    { 
     Timer timer; 
     Form form; 
     RichTextBox richTextBox; 

     public Form1() 
     { 
      //InitializeComponent(); 
      form = new Form 
      { 
       Size = new Size(50, 20), 
       FormBorderStyle = FormBorderStyle.None, 
       TopMost = true, 
       ShowInTaskbar = false 
      }; 
      richTextBox = new RichTextBox { Parent = form, Dock = DockStyle.Fill }; 
      timer = new Timer { Interval = 10, Enabled = true }; 

      timer.Tick += Timer_Tick; 
      form.Show(); 
     } 

     private void Timer_Tick(object sender, EventArgs e) 
     { 
      form.Location = new Point(MousePosition.X + 10, MousePosition.Y - 20); 
     } 
    } 
}