Private Class MedicalViewerForm : Inherits Form
Private _medicalViewer As MedicalViewer
Private Sub MedicalViewerForm_SizeChanged(ByVal sender As Object, ByVal e As EventArgs)
_medicalViewer.Size = New Size(Me.ClientRectangle.Right, Me.ClientRectangle.Bottom)
End Sub
Public Sub New()
RasterCodecs.Startup()
Dim _codecs As RasterCodecs = New RasterCodecs()
Dim _image As RasterImage
AddHandler SizeChanged, AddressOf MedicalViewerForm_SizeChanged
_medicalViewer = New MedicalViewer(1, 2)
_medicalViewer.Location = New Point(0, 0)
_medicalViewer.Size = New Size(Me.ClientRectangle.Right, Me.ClientRectangle.Bottom)
_medicalViewer.AddAction(MedicalViewerActionType.AnnotationRectangle)
_medicalViewer.AddAction(MedicalViewerActionType.AnnotationEllipse)
_medicalViewer.AddAction(MedicalViewerActionType.AnnotationHilite)
_medicalViewer.SetAction(MedicalViewerActionType.AnnotationRectangle, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active Or MedicalViewerActionFlags.RealTime)
_medicalViewer.SetAction(MedicalViewerActionType.AnnotationEllipse, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active Or MedicalViewerActionFlags.RealTime)
_medicalViewer.SetAction(MedicalViewerActionType.AnnotationHilite, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active Or MedicalViewerActionFlags.RealTime)
_image = _codecs.Load(LeadtoolsExamples.Common.ImagesPath.Path + "xa.dcm")
_medicalViewer.Cells.Add(New MedicalViewerCell(_image, True, 1, 1))
_medicalViewer.Cells(0).SetTag(2, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.UserData, "EX. ID 230-36-5448")
_medicalViewer.Cells(0).SetTag(4, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Frame)
_medicalViewer.Cells(0).SetTag(6, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Scale)
_medicalViewer.Cells(0).SetTag(2, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.WindowLevelData)
_medicalViewer.Cells(0).SetTag(1, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.FieldOfView)
_image = _codecs.Load(LeadtoolsExamples.Common.ImagesPath.Path + "mr.dcm")
_medicalViewer.Cells.Add(New MedicalViewerCell(_image, True, 2, 2))
_medicalViewer.Cells(1).SetTag(2, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.UserData, "EX. ID 230-36-5448")
_medicalViewer.Cells(1).SetTag(4, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Frame)
_medicalViewer.Cells(1).SetTag(6, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Scale)
_medicalViewer.Cells(1).SetTag(2, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.WindowLevelData)
_medicalViewer.Cells(1).SetTag(1, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.FieldOfView)
RasterCodecs.Shutdown()
Controls.Add(_medicalViewer)
End Sub
Public ReadOnly Property Viewer() As MedicalViewer
Get
Return _medicalViewer
End Get
End Property
End Class
Private Function GetMedicalControl() As MedicalViewerForm
Return New MedicalViewerForm()
End Function
<Test> _
Public Sub MedicalViewerAnnotationClickedExample()
Dim myForm As MedicalViewerForm = GetMedicalControl()
Dim medicalViewer As MedicalViewer = myForm.Viewer
AddHandler medicalViewer.AnnotationClicked, AddressOf medicalViewer_AnnotationClicked
myForm.ShowDialog()
End Sub
Private Sub medicalViewer_AnnotationClicked(ByVal sender As Object, ByVal e As MedicalViewerAnnotationClickedEventArgs)
Dim viewer As MedicalViewer = CType(sender, MedicalViewer)
Dim attribute As MedicalViewerAnnotationAttributes = viewer.Cells(e.CellIndex).GetSelectedAnnotationAttributes(e.SubCellIndex)
Select Case attribute.Type
Case MedicalViewerActionType.AnnotationRectangle, MedicalViewerActionType.AnnotationEllipse, MedicalViewerActionType.AnnotationHilite
viewer.Cells(0).ConvertAnnotationToRegion(RasterRegionCombineMode.Or, True)
End Select
End Sub |