RS_BS_CtrlEffect.dll Text- und Controleffekt-Bibliothek

    • Beta

    Es gibt 45 Antworten in diesem Thema. Der letzte Beitrag () ist von OnkelR.

      Hallo Tobias,

      also der Text wird ja in der Property "EffectText" übergeben. Somit weist du ja was drin steht und
      der Text ist als ganzes zu sehen. Ein Event gibt es bei dem Effekt nicht.

      Ich glaube du möchtest raus finden welcher Text grade aktuell sichtbar ist !?

      Beschreibe mal bitte was du vorhast ! Vielleicht ist da was machbar.

      Bernd

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Bernd“ ()

      Bernd: Genau, ich würde gerne den aktuell angezeigten Text auslesen.
      Ich hab ein Display, welches exakt 16 Zeichen darstellen kann, und würde darauf gerne Text scrollen. Die Lib hier wäre perfekt dafür.

      Danke,
      Manawyrm

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Manawyrm“ ()

      Dann muss ich aber noch etwas nachfragen.
      Welcher Effekt speziell soll es den sein ?
      Ich frage daher. Es sind wirklich alles verschiedene Dinger. Also nicht ein Effekt der irgenwie mit nem Switch geändert werden kann.

      Du meinst den Ticker !?

      Aber sollte der nicht einfach scrollen !
      Was passiert den bei deiner Anzeige ? Was läuft da schief ?

      Danke
      Bernd

      Ansonsten Adde mich mal bei Skype.

      Edit:
      der Ticker den kannst du doch in der Größe anpassen. Zieh ihn auf die Breite und gebe den Text an. Das sollte doch gehen.

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Bernd“ ()

      Danke für das Bild.
      Ja du meinst den Ticker Effekt.

      Ich habe mir das mal genau angesehen. Und ich muss das leider verneinen.
      Da der Text gezeichnet wird, reagiert das Event TextChanged natürlich nicht.
      Ein Paint Event gibt es nicht.

      also ich wüsste nicht wie man da so dran kommen soll.

      Ich schaue mir das in Ruhe an. Mal sehen ob wir da was einbauen können.
      Gefordert ist:
      jedesmal wenn der Text sich ändert ein Event auslösen.
      Genau da reden wir grade drüber.
      Er möchte wenn der Text sich ändert , genau bescheid wissen.
      also wenn er sich ändert und an welcher Position er steht.

      Ich spreche das gleich mit OnkelR ab. Ich denke das soll möglich sein.

      Bernd
      Hallo Manawyrm, Tobias.

      Mit dem TextChangedValueNow Event kommst Du jetzt an die "Nachricht" ran.
      Mit MyTextBox1.Nachricht.Substring(0, 16) erhälst Du Deine gewünschten 16 Zeichen.

      VB.NET-Quellcode

      1. Private Sub MyTextBox1_TextChangedValueNow(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyTextBox1.TextChangedValueNow
      2. Dim anzuzeigender_Text As String = MyTextBox1.Nachricht.Substring(0, 16)
      3. End Sub


      Saug Dir bitte die einzelne DLL aus dem Anhang im 1. Post.

      mfg Bernd und OnkelR
      Hallo Manawyrm.
      Hier mal ein kleines Beispiel mit einer MyTextBox, TextBox1, StartButton und StopButton.

      Du musst der MyTextBox1 auch einen Text zuweisen.
      Siehe Private Sub btn_StartTicker_Click(...)
      Sobald der Effekt in MyTextBox1 gestartet wird (Effekt_Enabled = True)
      bekommt die TextBox1 die ersten 16 Zeichen, die aktuell in MyTextBox1 angezeigt werden, zugewiesen,
      siehe Private Sub MyTextBox1_TextChangedValueNow(...).


      VB.NET-Quellcode

      1. Imports RS_BS_CtrlEffect
      2. Imports RS_BS_CtrlEffect.MyTextBox
      3. Public Class Form1
      4. Private Sub btn_StartTicker_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_StartTicker.Click
      5. With MyTextBox1
      6. .EffectType = eEffectType.TypeNewsticker
      7. .Effectdelay = 200
      8. .Text = "Dieser Text hat mehr als 16 Zeichen. Ich glaube sogar 57. "
      9. .Effekt_Enabled = True
      10. End With
      11. End Sub
      12. Private Sub MyTextBox1_TextChangedValueNow(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyTextBox1.TextChangedValueNow
      13. Dim meinNachrichtAusschnitt As String = MyTextBox1.Nachricht.Substring(0, 16)
      14. TextBox1.Text = meinNachrichtAusschnitt
      15. End Sub
      16. Private Sub btn_StopTicker_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_StopTicker.Click
      17. With MyTextBox1
      18. .Effekt_Enabled = False
      19. .Text = String.Empty
      20. End With
      21. TextBox1.Text = String.Empty
      22. End Sub
      23. End Class



      mfg Bernd und OnkelR
      Hallo Manawyrm.

      Behoben.
      Im Anhang Post 1 die DLL "RS_BS_CtrlEffect.dll" ist geupdatet.

      Im Designer:
      in die Eigenschaft "EffectText" schreibst Du deinen gewünschten Text
      und die Eigenschaft "Effekt_Enabled" auf True setzen.
      Jetzt siehst Du deinen Text in MyTextBox.

      Im Endeffekt ist Dein Wunsch sowieso nur per Code und nicht im Designer umsetzbar,
      sprich einen 16-stelligen Nachrichten-Ausschnitt zu ermitteln:
      MyTextBox1.Nachricht.Substring(0, 16)

      mfg Bernd und OnkelR
      Fein, nix zu danken, gern geschehn!

      Eins noch: Der Effekt stoppt ja ab und zu. Das ist aber mittem im Text. Sollte das nicht eher am Anfang sein?

      Hab ich bisher noch nicht beobachten können. Stoppt der komplett, oder sind es Aussetzer?
      Ich behalts mal im Auge.
      Ich hab mal zur Verdeutlichung einen kurzen Clip gemacht.

      Gerade nach dem Anfang des Strings, wenn der Titel des Interpreten (Cock Robin) durchläuft stoppt das. Ich dachte das sollte so, und hätte das auch gut gefunden.

      youtu.be/Vn4Vy2pZBOo

      Man möge mir verzeihen, dass ich dort mit C# arbeite... Ich versuche z.Z. umzusteigen.
      Jo Tobias, habs mir angeschaut. Wie gesagt, bei meinen Versuchen ist das so noch nicht vorgekommen, dieser Aussetzer.
      Könnte es sein, dass bei Dir in dem Moment sich irgendein Task vorgedrängelt hat? :D
      Ich behalts auf alle Fälle im Auge.

      Gruss OnkelR