PictureBox Конструктор
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Инициализирует новый экземпляр класса PictureBox.
public:
PictureBox();
public PictureBox ();
Public Sub New ()
Примеры
В следующем примере кода показано использование PictureBox элементов управления и ListView . Инициализируется PictureBox путем задания BorderStyle свойств и SizeMode с помощью перечислений BorderStyle и PictureBoxSizeMode соответственно. Заполняется ListView рисунками из каталога Примеры рисунков. Метод ListView.GetItemAt используется при обработке MouseDown события элемента управления, ListView чтобы определить, выбран ли элемент. Если элемент выбран, обработчик событий отображает выбранный файл, задав Image свойство . Для этого примера требуется наличие JPG-файлов, расположенных в каталоге C:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures. Чтобы запустить пример, вставьте код в форму и вызовите InitializePictureBox
методы и PopulateListView
в конструкторе формы или Load методе обработки событий. Убедитесь, что все события связаны с их методами обработки событий.
private:
void PopulateListView()
{
ListView1->Width = 270;
ListView1->Location = System::Drawing::Point( 10, 10 );
// Declare and construct the ColumnHeader objects.
ColumnHeader^ header1;
ColumnHeader^ header2;
header1 = gcnew ColumnHeader;
header2 = gcnew ColumnHeader;
// Set the text, alignment and width for each column header.
header1->Text = "File name";
header1->TextAlign = HorizontalAlignment::Left;
header1->Width = 70;
header2->TextAlign = HorizontalAlignment::Left;
header2->Text = "Location";
header2->Width = 200;
// Add the headers to the ListView control.
ListView1->Columns->Add( header1 );
ListView1->Columns->Add( header2 );
// Specify that each item appears on a separate line.
ListView1->View = View::Details;
// Populate the ListView.Items property.
// Set the directory to the sample picture directory.
System::IO::DirectoryInfo^ dirInfo = gcnew System::IO::DirectoryInfo( "C:\\Documents and Settings\\All Users"
"\\Documents\\My Pictures\\Sample Pictures" );
// Get the .jpg files from the directory
array<System::IO::FileInfo^>^files = dirInfo->GetFiles( "*.jpg" );
// Add each file name and full name including path
// to the ListView.
if ( files != nullptr )
{
System::Collections::IEnumerator^ myEnum = files->GetEnumerator();
while ( myEnum->MoveNext() )
{
System::IO::FileInfo^ file = safe_cast<System::IO::FileInfo^>(myEnum->Current);
ListViewItem^ item = gcnew ListViewItem( file->Name );
item->SubItems->Add( file->FullName );
ListView1->Items->Add( item );
}
}
}
void InitializePictureBox()
{
PictureBox1 = gcnew PictureBox;
// Set the location and size of the PictureBox control.
this->PictureBox1->Location = System::Drawing::Point( 70, 120 );
this->PictureBox1->Size = System::Drawing::Size( 140, 140 );
this->PictureBox1->TabStop = false;
// Set the SizeMode property to the StretchImage value. This
// will shrink or enlarge the image as needed to fit into
// the PictureBox.
this->PictureBox1->SizeMode = PictureBoxSizeMode::StretchImage;
// Set the border style to a three-dimensional border.
this->PictureBox1->BorderStyle = BorderStyle::Fixed3D;
// Add the PictureBox to the form.
this->Controls->Add( this->PictureBox1 );
}
void ListView1_MouseDown( Object^ /*sender*/, MouseEventArgs^ e )
{
ListViewItem^ selection = ListView1->GetItemAt( e->X, e->Y );
// If the user selects an item in the ListView, display
// the image in the PictureBox.
if ( selection != nullptr )
{
PictureBox1->Image = System::Drawing::Image::FromFile( selection->SubItems[ 1 ]->Text );
}
}
private void PopulateListView()
{
ListView1.Width = 270;
ListView1.Location = new System.Drawing.Point(10, 10);
// Declare and construct the ColumnHeader objects.
ColumnHeader header1, header2;
header1 = new ColumnHeader();
header2 = new ColumnHeader();
// Set the text, alignment and width for each column header.
header1.Text = "File name";
header1.TextAlign = HorizontalAlignment.Left;
header1.Width = 70;
header2.TextAlign = HorizontalAlignment.Left;
header2.Text = "Location";
header2.Width = 200;
// Add the headers to the ListView control.
ListView1.Columns.Add(header1);
ListView1.Columns.Add(header2);
// Specify that each item appears on a separate line.
ListView1.View = View.Details;
// Populate the ListView.Items property.
// Set the directory to the sample picture directory.
System.IO.DirectoryInfo dirInfo =
new System.IO.DirectoryInfo(
"C:\\Documents and Settings\\All Users" +
"\\Documents\\My Pictures\\Sample Pictures");
// Get the .jpg files from the directory
System.IO.FileInfo[] files = dirInfo.GetFiles("*.jpg");
// Add each file name and full name including path
// to the ListView.
if (files != null)
{
foreach ( System.IO.FileInfo file in files )
{
ListViewItem item = new ListViewItem(file.Name);
item.SubItems.Add(file.FullName);
ListView1.Items.Add(item);
}
}
}
private void InitializePictureBox()
{
PictureBox1 = new PictureBox();
// Set the location and size of the PictureBox control.
this.PictureBox1.Location = new System.Drawing.Point(70, 120);
this.PictureBox1.Size = new System.Drawing.Size(140, 140);
this.PictureBox1.TabStop = false;
// Set the SizeMode property to the StretchImage value. This
// will shrink or enlarge the image as needed to fit into
// the PictureBox.
this.PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
// Set the border style to a three-dimensional border.
this.PictureBox1.BorderStyle = BorderStyle.Fixed3D;
// Add the PictureBox to the form.
this.Controls.Add(this.PictureBox1);
}
private void ListView1_MouseDown(object sender, MouseEventArgs e)
{
ListViewItem selection = ListView1.GetItemAt(e.X, e.Y);
// If the user selects an item in the ListView, display
// the image in the PictureBox.
if (selection != null)
{
PictureBox1.Image = System.Drawing.Image.FromFile(
selection.SubItems[1].Text);
}
}
Private Sub PopulateListView()
ListView1.Width = 270
ListView1.Location = New System.Drawing.Point(10, 10)
' Declare and construct the ColumnHeader objects.
Dim header1, header2 As ColumnHeader
header1 = New ColumnHeader
header2 = New ColumnHeader
' Set the text, alignment and width for each column header.
header1.Text = "File name"
header1.TextAlign = HorizontalAlignment.Left
header1.Width = 70
header2.TextAlign = HorizontalAlignment.Left
header2.Text = "Location"
header2.Width = 200
' Add the headers to the ListView control.
ListView1.Columns.Add(header1)
ListView1.Columns.Add(header2)
' Specify that each item appears on a separate line.
ListView1.View = View.Details
' Populate the ListView.Items property.
' Set the directory to the sample picture directory.
Dim dirInfo As New System.IO.DirectoryInfo _
("C:\Documents and Settings\All Users" _
& "\Documents\My Pictures\Sample Pictures")
Dim file As System.IO.FileInfo
' Get the .jpg files from the directory
Dim files() As System.io.FileInfo = dirInfo.GetFiles("*.jpg")
' Add each file name and full name including path
' to the ListView.
If (files IsNot Nothing) Then
For Each file In files
Dim item As New ListViewItem(file.Name)
item.SubItems.Add(file.FullName)
ListView1.Items.Add(item)
Next
End If
End Sub
Private Sub InitializePictureBox()
PictureBox1 = New PictureBox
' Set the location and size of the PictureBox control.
Me.PictureBox1.Location = New System.Drawing.Point(70, 120)
Me.PictureBox1.Size = New System.Drawing.Size(140, 140)
Me.PictureBox1.TabStop = False
' Set the SizeMode property to the StretchImage value. This
' will shrink or enlarge the image as needed to fit into
' the PictureBox.
Me.PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage
' Set the border style to a three-dimensional border.
Me.PictureBox1.BorderStyle = BorderStyle.Fixed3D
' Add the PictureBox to the form.
Me.Controls.Add(Me.PictureBox1)
End Sub
Private Sub ListView1_MouseDown(ByVal sender As Object, _
ByVal e As MouseEventArgs) Handles ListView1.MouseDown
Dim selection As ListViewItem = ListView1.GetItemAt(e.X, e.Y)
' If the user selects an item in the ListView, display
' the image in the PictureBox.
If (selection IsNot Nothing) Then
PictureBox1.Image = System.Drawing.Image.FromFile _
(selection.SubItems(1).Text)
End If
End Sub
Комментарии
В следующей таблице представлены исходные значения свойств для экземпляра класса PictureBox.
Элемент | Описание |
---|---|
Image | null |
SizeMode | Normal |