Announcement

Collapse
No announcement yet.

Farbverlauf in Panel anzeigen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #31
    Ok, das mit den Standartwerten hat sich erledigt, ich speicher jetzt die Farbe ab und lade diese beim erneuten öffnen...

    In dem Projekt hast Du nur diese eine Datei, MyPanel.cs eingefügt, und das bereits vorhandenePanel übernimmt dann die dort gemachten Einstellungen?
    Oder muss ich dazu komplett ein eigenes Panel codieren?

    Comment


    • #32
      Das mit den Standartwerten hat sich soweit erledigt, ich speicher jetzt die zuletzt eingestellte Farbe beim schließen der Form in der .config Datei, und lade die Werte daraus beim öffnen...
      So wie ich das sehe, ist da nur diese eine MyPanel.cs Datei eingefügt worden, und halt der Timer entfernt... Was ist das für eine Datei, wie erstell ich die?

      Comment


      • #33
        In dem Projekt hast Du nur diese eine Datei, MyPanel.cs eingefügt, und das bereits vorhandenePanel übernimmt dann die dort gemachten Einstellungen?
        MyPanel ist ein eigenes Control, auch wenn es "nur" abgeleitet ist und muss auch als solches behandelt werden.
        Die "Einstellungen" werden nicht übernommen - ich hab nur das Paint-Ereignis neu zugewiesen und das MyPanel1 auf panel1 umbenannt so dass die Verweise wieder stimmen.

        Was ist das für eine Datei, wie erstell ich die?
        Diese Datei ist eine normale Quellcode-Datei. Sie beinhaltet wie jede zu kompilierende Datei eine (oder mehrer) Klasse(n)*.
        Erstellt wird die Datei mit
        1. Rechter Mausklick auf das Projekt im Projektmappen-Explorer (standardmäßig rechts, oberer Bereicht)
        2. Hinzufüen
        3. Neues Element
        4. Im Dialog Klasse auswählen (siehe Abbildung im Anhang)


        mfG Gü

        * Schnittstellen, Strukturen wurden hier außer Acht gelassen.
        Attached Files
        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

        Comment


        • #34
          Ah ok, weil das Symbol anders aussah als eine Klassendatei eigentlich. Habs grad gesehen, dass sich das automatisch ändert wenn man ableitet. Sorry für die vielen doofen Fragen...

          Ok, habs hinbekommen, gar nicht sooo schwer eigentlich...

          Jetzt fehlt mir eigentlich nur noch eines um das Ding komplett zu machen. Die jeweiligen RGB Werte, lass ich in Textboxen anzeigen, die sollen aber auch den Wert setzen können, wenn ich was eingebe... Mit Int32.Parse(textBox.Text) müsste das doch gehen oder? Aber so bekomm ich den Wert nicht gesetzt, ich denk ich müsste dazu noch die enter taste abfragen?
          Zuletzt editiert von brown78; 13.10.2008, 20:36.

          Comment


          • #35
            automatisch ändert wenn man ableitet
            aber nur dann wenn von einer Klasse abgeleitet wird deren Basis ein Control ist bzw. von Control erbt.
            "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

            Comment


            • #36
              Alles super ich habs hinbekommen (auch ohne Enter Abfrage)
              So ich dank Dir vielmals,für die geduldige und sehr lehrreiche Hilfe!
              Ich verabschiede mich für heute!

              Comment


              • #37
                Was ist dann der Unterschied zwischen OptimizedDoubleBuffer und DoubleBuffer. Beide gibt es in der Enumeration die in SetStyle verwendet wird?
                Ich glaube DoubleBuffer ist eine Altlast und sollte nicht mehr verwendet werden.
                Habe jetzt keine Quelle dafür aber versuch mal auf ControlStyles Intellisense aufzurufen du wirst DoubleBuffer nicht zu sehen bekommen. Wenn man sich ControlStyles im Reflector ansieht sieht man das es mit dem [EditorBrowsable(EditorBrowsableState.Never)] Attribut garniert ist.
                Warum es nicht gleich als Obsolete markiert ist und/oder gleich entsprechend in der Msdn dokumentiert ist mir dann auch ein Rätsel.

                Comment


                • #38
                  Das ist interessant. In der MSDN steht nämlich:
                  Das bevorzugte Verfahren zum Aktivieren der Doppelpufferung mit gleichem Ergebnis besteht jedoch darin, die DoubleBuffered-Eigenschaft für das Steuerelement auf true festzulegen.
                  Wahrscheinlich wiedermal ein Microsoft(R)-Chaos?!

                  Trotzdem Danke für den Erklärungsverusch.

                  mfG Gü
                  "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

                  Comment


                  • #39
                    Code:
                    Wahrscheinlich wiedermal ein Microsoft(R)-Chaos?!
                    Ja, aber anders als du gerade denkst bzw. das Chaos ist noch größer.
                    Hier ist die DoubleBuffered Property gemeint nicht der Enum-Wert.
                    Die DoubleBuffered Property selbst steuert wieder den OptimizedDoubleBuffered Enum-Wert.

                    Comment


                    • #40
                      Hier ist die DoubleBuffered Property gemeint nicht der Enum-Wert.
                      Da hab ich schon so verstanden - steht auch so in der MSDN.

                      Ja, mit der Bennenung habe sie in Redmond immer wieder Probleme

                      Konkret heißt das dass ein
                      [highlight=c#]
                      public class MyControl : Control
                      {
                      public MyControl()
                      {
                      base.DoubleBuffered = true
                      }
                      }
                      [/highlight]
                      reicht.

                      mfG Gü
                      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

                      Comment

                      Working...
                      X