vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: Textbox in PictureViewer coden 
Autor: Bazi
Datum: 20.03.15 21:54

mir ist schon klar was Du meinst. Im Prinzip habe ich es ja auch so.
#Region "Anmerkung"
    Friend Sub Anmerkung_Show(ByVal pt As Point, Optional ByVal sText As String _
      = Nothing)
        lbl_Anmerkung.BackColor = Color.FromArgb( _
        Dts.Figure.Current.PlanMassRow.LvItemRow.LineStyleRow.LineColor)
        Dim fsR = Dts.Figure.Current.PlanMassRow.LvItemRow.FontStyleRow
        Dim fnt = New Font(fsR.Name, fsR.Size, If(fsR.Style = "Regular", _
          System.Drawing.FontStyle.Regular, System.Drawing.FontStyle.Bold))
        If Not sText Is Nothing Then
            tbx_Anmerkung.Text = sText
            tbx_Anmerkung_TextChanged(Nothing, Nothing)
        Else
            tbx_Anmerkung.Text = ""
        End If
        pt.Y -= tbx_Anmerkung.Height
        tbx_Anmerkung.Location = pt
        tbx_Anmerkung.Font = fnt
        lbl_Anmerkung.Visible = True
        tbx_Anmerkung.Visible = True : tbx_Anmerkung.Focus()
    End Sub
    Private Sub tbx_Anmerkung_KeyPress(ByVal sender As Object, ByVal e As _
      System.Windows.Forms.KeyPressEventArgs) Handles tbx_Anmerkung.KeyPress
        If Not "" & _
        "abcdefghijklmnopqrstuvwxyzäüöABCDEFGHIJKLMNOPQRSTUVWXYZ?ÄÜÖß123456789" & _
        "+-*/.,_!§$%&/()=?`´#'@€²³{[]}\".Contains(e.KeyChar) Then
            If Asc(e.KeyChar) = 8 Or Asc(e.KeyChar) = 13 Then Return
            e.Handled = True
        End If
    End Sub
    Private Sub tbx_Anmerkung_LocationChanged(ByVal sender As Object, ByVal e _
      As System.EventArgs) Handles tbx_Anmerkung.LocationChanged
        lbl_Anmerkung.Left = tbx_Anmerkung.Left - 3
        lbl_Anmerkung.Top = tbx_Anmerkung.Top - 3
    End Sub
    Private Sub tbx_Anmerkung_TextChanged(ByVal sender As Object, ByVal e As _
      System.EventArgs) Handles tbx_Anmerkung.TextChanged
        Dim g = Graphics.FromHwnd(tbx_Anmerkung.Handle)
        Dim Text As String = tbx_Anmerkung.Text
        Dim Texte As String()
        Dim tWidth As Integer = 5
        Dim sz As SizeF
        If Text.Contains(Environment.NewLine) Then
            Texte = Text.Split(Environment.NewLine)
            For Each t In Texte
                sz = g.MeasureString(t, tbx_Anmerkung.Font)
                If sz.Width > tWidth Then tWidth = CInt(sz.Width + 5)
            Next
            tbx_Anmerkung.Width = tWidth + 5
            tbx_Anmerkung.Height = CInt(Texte.Length * (tbx_Anmerkung.Font.Size _
              + 12))
        Else
            sz = g.MeasureString(Text, tbx_Anmerkung.Font)
            tbx_Anmerkung.Width = CInt(sz.Width + 5)
        End If
    End Sub
    Private Sub tbx_Anmerkung_SizeChanged(ByVal sender As Object, ByVal e As _
      System.EventArgs) Handles tbx_Anmerkung.SizeChanged
        lbl_Anmerkung.Width = tbx_Anmerkung.Width + 6
        lbl_Anmerkung.Height = tbx_Anmerkung.Height + 6
    End Sub
    Friend Sub Anmerkung_Hide()
        If Dts.MeasureType.Current.Type = MeasureTypes.Anmerkung OrElse _
          Dts.MeasureType.CurrentType = MeasureTypes.None Then
            If tbx_Anmerkung.Visible = False Then Return
            If Not Dts.Figure.Current Is Nothing Then
                If tbx_Anmerkung.Text.Length > 0 Then
                    Dts.Figure.Current.Anmerkung = tbx_Anmerkung.Text
                Else
                    Dts.Figure.Current.Anmerkung = " "
                End If
                Dts.Figure.Current.ApplyChanges()
            End If
        End If
        With tbx_Anmerkung
            .Width = 50
            .Height = 20
            .Visible = False
        End With
        lbl_Anmerkung.Visible = False
    End Sub
#End Region
das funzt solange ich die "Anmerkung" nicht rotiere.

Mir ist schon klar, dass ich die Textbox auch wie in Deinem Beispiel statisch positionieren und bei jedem Text_Changed das Paint ausführen könnte, so wie in Deinem Beispiel. Das hatte ich auch schon mal so drin.

Ich habe jetzt die Möglichkeit ausgeschaltet die Anmerkung zu drehen, geht auch.

Danke für die Hilfe

Gruß Christian

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Textbox in PictureViewer coden1.644Bazi19.03.15 22:08
Re: Textbox in PictureViewer coden1.090Manfred X20.03.15 09:27
Re: Textbox in PictureViewer coden975Bazi20.03.15 15:16
Re: Textbox in PictureViewer coden1.006Manfred X20.03.15 17:52
Re: Textbox in PictureViewer coden1.039Bazi20.03.15 18:30
Re: Textbox in PictureViewer coden993Manfred X20.03.15 19:18
Re: Textbox in PictureViewer coden1.026Bazi20.03.15 19:44
Re: Textbox in PictureViewer coden987Manfred X20.03.15 19:58
Re: Textbox in PictureViewer coden1.001Bazi20.03.15 20:07
Re: Textbox in PictureViewer coden987Manfred X20.03.15 21:03
Re: Textbox in PictureViewer coden1.019Bazi20.03.15 21:54
Re: Textbox in PictureViewer coden987Kuno6021.03.15 09:18
Re: Textbox in PictureViewer coden994Bazi21.03.15 12:08
Picturebox als Textbox1.023Manfred X21.03.15 13:36
Re: Picturebox als Textbox1.054Bazi21.03.15 16:36
Re: Picturebox als Textbox1.000Manfred X21.03.15 16:53
Re: Picturebox als Textbox1.012Bazi21.03.15 17:12
Re: Picturebox als Textbox983Manfred X22.03.15 12:48
Re: Textbox in PictureViewer coden1.031Manfred X21.03.15 10:46
Re: Textbox in PictureViewer coden988Bazi21.03.15 12:09

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel