2017-12-25 5 views
-2

Ich bin nicht sehr gut darin, aber ich habe eine Idee, und ich möchte hier fragen, ob es möglich ist. Also möchte ich machen, damit PictureBox größer wird, zu etwas Größe anwächst und dann wieder kleiner wird, und weiter so machen. Ich habe nur herausgefunden, wie man es macht, also wird es größer oder kleiner, aber ich kann nicht herausfinden, wie man es macht, so dass es eine bestimmte Größe erkennt und dann das Gegenteil tut. Der Code, den ich benutze.C# Größe der Bildbox mit Timer

Size size = pictureBox.Size; 
size.Height--; 
size.Width--; 
pictureBox.Size = size; 
+2

Ja, mit einem Timer ist eine gute Option. Suche, wie man sie benutzt und wenn Sie Probleme haben, stellen Sie eine gute Frage. – Steve

Antwort

0

Nur ein Beispiel, da Sie Ihr Kriterium zum Vergrößern und Verkleinern nicht angegeben haben. Initialisieren Sie Timer:

// set the interval you prefer 
System.Timers.Timer timer = new System.Timers.Timer(500); 
timer.Elapsed += OnElapsed; 
timer.AutoReset = true; 
timer.Enabled = true; 

eine Membervariable erstellen, ob die PictureBox steuert muss vergrößert oder verkleinert werden:

private Boolean m_Reducing = false; 

Und dann alles zusammen in Ihrer abonnierten Timer-Handler:

private static void OnElapsed(Object sender, ElapsedEventArgs e) 
{ 
    Size size = pictureBox.Size; 

    if (m_Reducing) 
    { 
     --size.Height; 
     --size.Width; 

     if ((size.Width == minimumWidth) && (size.Height == minimumHeight)) 
      m_Reducing = false; 
    } 
    else 
    { 
     ++size.Height; 
     ++size.Width; 

     if ((size.Width == maximumWidth) && (size.Height == maximumHeight)) 
      m_Reducing = true; 
    } 

    pictureBox.Size = size; 
} 
+0

Danke, Alter! Es ist genau das, was ich mir vorgestellt habe! –

+0

Pflege. weil das für deine Schnittstelle etwas intensiv sein kann ... –