C#
VB
C++
Optional delegate method for additional processing.
public event EventHandler<MedicalViewerChangingWindowLevelEventArgs> ChangingWindowLevel
Public Event ChangingWindowLevel As EventHandler(Of MedicalViewerChangingWindowLevelEventArgs)
public:
event EventHandler<MedicalViewerChangingWindowLevelEventArgs^>^ ChangingWindowLevel
The event handler receives an argument of type MedicalViewerChangingWindowLevelEventArgs containing data related to this event. The following MedicalViewerChangingWindowLevelEventArgs properties provide information specific to this event.
Property | Description |
---|---|
Center | Gets the value that indicates the new window center. |
OldCenter | Gets the value that indicates the previous window center. |
OldWidth | Gets the value that indicates the previous window width. |
SubCellIndex | Gets the value that indicates the index of sub-cell that contains the image which to be affected by the window level action. |
Width | Gets the value that indicates the new window width. |
using Leadtools;
using Leadtools.Codecs;
using Leadtools.MedicalViewer;
class MedicalViewerForm : Form
{
private MedicalViewer _medicalViewer;
public MedicalViewerForm()
{
RasterCodecs _codecs = new RasterCodecs();
RasterImage _image;
this.SizeChanged += new EventHandler(MedicalViewerForm_SizeChanged);
// Create the medical viewer and adjust the size and the location.
_medicalViewer = new MedicalViewer(1, 2);
_medicalViewer.Location = new Point(0, 0);
_medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom);
// Load an image and then add it to the control.
_image = _codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "xa.dcm"));
MedicalViewerMultiCell cell = new MedicalViewerMultiCell(_image, true, 1, 1);
// add window level action that will be used to change the properties of the images inside the control.
cell.AddAction(MedicalViewerActionType.WindowLevel);
// assign the added actions to a mouse button, meaning that when the user clicks and drags the mouse button, the associated action will be activated.
cell.SetAction(MedicalViewerActionType.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active);
_medicalViewer.Cells.Add(cell);
// adjust some properties of the cell and add some tags.
_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);
Controls.Add(_medicalViewer);
_medicalViewer.Dock = DockStyle.Fill;
}
void MedicalViewerForm_SizeChanged(object sender, EventArgs e)
{
_medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom);
}
public MedicalViewer Viewer
{
get { return _medicalViewer; }
}
}
MedicalViewerForm GetMedicalControl()
{
return new MedicalViewerForm();
}
// When the user uses the window level tool, this example displays the previous and new window level values.
public void MedicalViewerAnnotationCreatedExample()
{
MedicalViewerForm myForm = GetMedicalControl();
MedicalViewer medicalViewer = myForm.Viewer;
MedicalViewerMultiCell cell = (MedicalViewerMultiCell)(medicalViewer.Cells[0]);
cell.ChangingWindowLevel += new EventHandler<Leadtools.MedicalViewer.MedicalViewerChangingWindowLevelEventArgs>(medicalViewer_ChangingWindowLevel);
myForm.ShowDialog();
}
void medicalViewer_ChangingWindowLevel(object sender, Leadtools.MedicalViewer.MedicalViewerChangingWindowLevelEventArgs e)
{
string msg = string.Format("\nSub Cell Index: {0}\nPrevious Window Center: {1}\nPrevious Window Width: {2}\nNew Window Center: {3}\nNew Window Width{4}",
e.SubCellIndex,
e.OldCenter,
e.OldWidth,
e.Center,
e.Width);
Console.WriteLine(msg);
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.MedicalViewer
Private Class MedicalViewerForm
Inherits Form
Private _medicalViewer As MedicalViewer
Public Sub New()
Dim _codecs As New RasterCodecs()
Dim _image As RasterImage
AddHandler SizeChanged, AddressOf MedicalViewerForm_SizeChanged
' Create the medical viewer and adjust the size and the location.
_medicalViewer = New MedicalViewer(1, 2)
_medicalViewer.Location = New Point(0, 0)
_medicalViewer.Size = New Size(Me.ClientRectangle.Right, Me.ClientRectangle.Bottom)
' Load an image and then add it to the control.
_image = _codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "xa.dcm"))
Dim cell As New MedicalViewerMultiCell(_image, True, 1, 1)
' add window level action that will be used to change the properties of the images inside the control.
cell.AddAction(MedicalViewerActionType.WindowLevel)
' assign the added actions to a mouse button, meaning that when the user clicks and drags the
' mouse button, the associated action will be activated.
cell.SetAction(MedicalViewerActionType.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active)
_medicalViewer.Cells.Add(cell)
' adjust some properties of the cell and add some tags.
_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)
Controls.Add(_medicalViewer)
_medicalViewer.Dock = DockStyle.Fill
End Sub
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 ReadOnly Property Viewer() As MedicalViewer
Get
Return _medicalViewer
End Get
End Property
End Class
Private Function GetMedicalControl() As MedicalViewerForm
Return New MedicalViewerForm()
End Function
' When the user uses the window level tool, this example displays the previous and new window level values.
Public Sub MedicalViewerAnnotationCreatedExample()
Dim myForm As MedicalViewerForm = GetMedicalControl()
Dim medicalViewer As MedicalViewer = myForm.Viewer
Dim cell As MedicalViewerMultiCell = CType(medicalViewer.Cells(0), MedicalViewerMultiCell)
AddHandler cell.ChangingWindowLevel, AddressOf medicalViewer_ChangingWindowLevel
myForm.ShowDialog()
End Sub
Private Sub medicalViewer_ChangingWindowLevel(ByVal sender As Object, ByVal e As Leadtools.MedicalViewer.MedicalViewerChangingWindowLevelEventArgs)
Dim msg As String = String.Format(Constants.vbLf & "Sub Cell Index: {0}" & "Previous Window Center: {1}" & Constants.vbLf &
"Previous Window Width: {2}" & Constants.vbLf & "New Window Center: {3}" & Constants.vbLf &
"New Window Width{4}", e.SubCellIndex, e.OldCenter, e.OldWidth, e.Center, e.Width)
Console.WriteLine(msg)
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET