vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 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 - Fortgeschrittene
Re: Übrigens... 
Autor: ModeratorDaveS (Moderator)
Datum: 12.03.04 10:32

Also, der Graphicscode ist alles in bester Ordnung! Es ging eher um die Bedienung,
z.B. mein Component setzt die verschiedenen Events. Es hat auch selber ein Event, um
die Anwendung (Form) zu benachrichtigen, dass etwas ausgewählt wurde, weil man
nicht unbedingt immer einfach das Bild ersetzen will, und arbeitet mit beliebigen
Controls und nicht nur mit PictureBox. Und die Logik zu erkennen wenn die Maus
bewegt wird oder Zeichnen fertig ist habe ich etwas geändert. Übrigens, ich schreibe
kaum Clientsoftware, und habe selber kaum Kenntnisse von GDI(+).

Der Aufruf sieht jetzt so aus, nachem RubberBoxComponent eingefügt würde, und
Control Property gesetzt:
 
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles MyBase.Load
        PictureBox1.Image = New Bitmap("F:\Work Dev\VSNet" & _
        "Dev\Test\firewks2.jpg")
    End Sub
 
    Private Sub RubberBoxComponent1_Selected(ByVal sender As Object, ByVal e As _
      RubberBoxComponent.RubberBoxEventArgs) Handles _
      RubberBoxComponent1.Selected
        Dim newImage As Image = RubberBoxComponent1.CutSelection( _
        PictureBox1.Image, PictureBox1.SizeMode = _
        PictureBoxSizeMode.StretchImage)
        RubberBoxComponent1.Clear()
        PictureBox2.Image = newImage
    End Sub
 
Imports System.ComponentModel
Imports System.Windows.forms
 
<DefaultEvent("Selected")> _
Public Class RubberBoxComponent
    Inherits System.ComponentModel.Component
 
#Region " Component Designer generated code "
 
    Public Sub New(ByVal Container As System.ComponentModel.IContainer)
        MyClass.New()
 
        'Required for Windows.Forms Class Composition Designer support
        Container.Add(Me)
    End Sub
 
    Public Sub New()
        MyBase.New()
 
        'This call is required by the Component Designer.
        InitializeComponent()
 
        'Add any initialization after the InitializeComponent() call
 
    End Sub
 
    'Component overrides dispose to clean up the component list.
    Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
        If disposing Then
            If Not (components Is Nothing) Then
                components.Dispose()
            End If
        End If
        MyBase.Dispose(disposing)
    End Sub
 
    'Required by the Component Designer
    Private components As System.ComponentModel.IContainer
 
    'NOTE: The following procedure is required by the Component Designer
    'It can be modified using the Component Designer.
    'Do not modify it using the code editor.
    <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
        components = New System.ComponentModel.Container
    End Sub
 
#End Region
 
    <Description("Notify that a box has been completely drawn"), _
    EditorBrowsable(EditorBrowsableState.Always)> _
    Public Event Selected(ByVal sender As Object, ByVal e As RubberBoxEventArgs)
 
    Private Drawing As Boolean = False
    Private Drawn As Boolean = False
    Private Position As Point
    Private Size As Size
    Private OriginalPosition As Point
    Private cut As Int16 = 1
    Private WithEvents ctl As System.windows.forms.Control
 
    Private x0 As Integer
    Private x1 As Integer
    Private y0 As Integer
    Private y1 As Integer
 
    <Browsable(True), _
    Category("Mouse"), _
    Description("Control in which to draw rubber box"), _
    EditorBrowsable(EditorBrowsableState.Always)> _
    Public Property Control() As System.Windows.Forms.Control
        Get
            Return ctl
        End Get
        Set(ByVal Value As System.Windows.Forms.Control)
            ctl = Value
        End Set
    End Property
 
    Private Sub Draw()
        Drawing = True
        ControlPaint.DrawReversibleFrame(New Rectangle(Position, Size), _
          Color.White, FrameStyle.Dashed)
    End Sub
 
    Private Sub Remove()
        If Drawn Or Drawing Then
            ControlPaint.DrawReversibleFrame(New Rectangle(Position, Size), _
              Color.White, FrameStyle.Dashed)
        End If
        Drawn = False
    End Sub
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Aus einer Grafik in einer Picture-Box ein Bereich auslesen3.052UR08.03.04 11:51
Re: Aus einer Grafik in einer Picture-Box ein Bereich ausle...2.556WaldiMaywood08.03.04 12:14
Re: Aus einer Grafik in einer Picture-Box ein Bereich ausle...2.440UR08.03.04 12:29
Re: Aus einer Grafik in einer Picture-Box ein Bereich ausle...2.888ModeratorDaveS08.03.04 12:20
Re: Aus einer Grafik in einer Picture-Box ein Bereich ausle...2.415UR08.03.04 12:26
Re: Aus einer Grafik in einer Picture-Box ein Bereich ausle...3.255leth11.03.04 08:14
Re: Aus einer Grafik in einer Picture-Box ein Bereich ausle...2.488UR11.03.04 11:17
Re: Aus einer Grafik in einer Picture-Box ein Bereich ausle...2.542leth11.03.04 11:29
Re: Aus einer Grafik in einer Picture-Box ein Bereich ausle...2.394UR11.03.04 13:23
Re: Aus einer Grafik in einer Picture-Box ein Bereich ausle...2.408leth11.03.04 13:43
Re: Aus einer Grafik in einer Picture-Box ein Bereich ausle...2.417UR11.03.04 14:22
Re: Aus einer Grafik in einer Picture-Box ein Bereich ausle...2.370leth11.03.04 14:30
Re: Aus einer Grafik in einer Picture-Box ein Bereich ausle...2.401UR11.03.04 14:51
Re: Aus einer Grafik in einer Picture-Box ein Bereich ausle...2.465leth11.03.04 15:32
Re: Aus einer Grafik in einer Picture-Box ein Bereich ausle...2.397UR12.03.04 00:39
Re: Aus einer Grafik in einer Picture-Box ein Bereich ausle...2.626leth12.03.04 08:18
Übrigens...2.458ModeratorDaveS11.03.04 22:36
Re: Übrigens...2.506UR11.03.04 22:44
Re: Übrigens...2.500leth12.03.04 08:03
Re: Übrigens...2.592WaldiMaywood12.03.04 08:38
Re: Übrigens...2.742ModeratorDaveS12.03.04 10:32
Re: Übrigens...2.490UR12.03.04 13:43
Re: Übrigens...2.403ModeratorDaveS12.03.04 14:08
Re: Übrigens...2.406UR12.03.04 14:24
Re: Übrigens...2.437ModeratorDaveS12.03.04 14:31
Re: Übrigens...2.418UR12.03.04 16:24
Re: Übrigens...2.386ModeratorDaveS12.03.04 16:35
Re: Übrigens...Teil II2.518ModeratorDaveS12.03.04 10:33
Danke!2.500leth12.03.04 10:37
Re: Übrigens...Teil II2.322leth12.03.04 10:44

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