c# - zeichnen Sie ein Rechteck auf eine picturebox?
Habe ich viele Bilder und die Koordinaten mit Breite und Höhe. Ein Bild in eine picturebox und ich sende die Koordinaten um das Rechteck zu zeichnen. Es gibt viele PictureBox hinzu, die auf einem panel.
Sende ich Ihre Wege, um ein PicturePanel
Klasse auch mit einigen Koordinaten und die Höhe/Breite Eigenschaften zum zeichnen eines Rechtecks. Aber mein problem ist, dass es, zieht es, und sofort löscht. Wenn ich nicht setzen eine messagebox nach jedem Bild sehe ich nicht ein, das Rechtecke. Hier ist der code;
if (IsRun())
{
MessageBox.Show("rontool true");
Rectangle ee = drawARectangle(xCoor, yCoor, MainScreen.tempR.wid / ratioOfx, MainScreen.tempR.heig / ratioOfy); //I wrote this, it only creates and returns the rectangle.
//MessageBox.Show("x : " + xCoor + " y: " + yCoor + " width : " + (MainScreen.tempR.wid /ratioOfx) + " height: " + (MainScreen.tempR.heig /ratioOfy));
using (Pen pen = new Pen(Color.Red, 2))
{
pictureBox.CreateGraphics().DrawRectangle(pen, ee);
//e.Graphics.DrawRectangle(pen, ee);
}
}
Dies ist in
private void PictureBox_Paint(object sender, PaintEventArgs e).
Einer for-Schleife ist in einer anderen Klasse, erstellt eine picturebox, und initialisiert seine x -, y-etc. jedoch zieht es, und sofort löscht. oder manchmal ist es gar nicht zeichnen.
Wenn ich nicht setzen eine messagebox nach jedem Bild, die ich nicht selbst sehen die Rechtecke. Können Sie mir helfen?
InformationsquelleAutor Ada | 2011-05-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Picturebox paint-Methode wird aufgerufen, wenn Windows will Sie, malen Sie Ihr Bild im Feld. Es sieht aus wie Sie nur ziehen das Rechteck etwas von der Zeit.
Ändern Sie Ihren code so, immer tun Sie Ihre Zeichnung.
d.h. Dieser code wird nicht ziehen Sie ein Rechteck. wo Ben ' s Beispiel.
InformationsquelleAutor Darryl Braaten
Ich bin mir nicht sicher, ich verstehe Ihre Frage, aber wenn alle Sie wollen, ist um ein Rechteck zu zeichnen, den folgenden code:
Sie wird zeigen müssen, mehr code, als du getan hast in deiner Frage. Genauer gesagt, was passiert ist in dieser Schleife.
InformationsquelleAutor Ben
Siehe code unten. Ich habe ein Rechteck statt einem Bild nur um zu zeigen code :
InformationsquelleAutor jdweng