Компоненты отображения графической информации План


Рисунок 1. Форма программы "Слайд-шоу" Таблица



бет4/8
Дата26.09.2022
өлшемі456.68 Kb.
#461398
1   2   3   4   5   6   7   8
Lek - 17 Компоненты отображения графической информации

Рисунок 1. Форма программы "Слайд-шоу"


Таблица 4. Значения свойств компонента PictureBox

Свойство

Значение

Dock

Fill

SizeMode

Zoom




private:
String^ aPath; // путь к файлам иллюстраций
// список иллюстраций список строк
System::Collections::Generic::List ^imgList;
int cImg; // номер списке) отображаемой иллюстрации
// конструктор
Form1(void)
{
InitializeComponent();
// получить имя каталога "Мои рисунки"
DirectoryInfo^ di; // каталог
di = gcnew DirectoryInfo(Environment::GetFolderPath( Environment::SpecialFolder::MyPictures));
aPath = di->FullName; this->Text = aPath;
imgList = gcnew System::Collections::Generic::List;
// сформировать список иллюстраций
FillList(aPath);
}


private: void ShowPicture(String^ aPicture) {
pictureBox1->Image = gcnew Bitmap(aPath + "\\" +imgList[cImg]);


this->Text = "Слайд-шоу: " + aPath + "\\" + imgList[cImg];


pictureBox1->Visible = true;
}


private: System::Boolean FillList(String^ aPath) {
// информация о каталоге
DirectoryInfo^ di = gcnew DirectoryInfo(aPath);
// информация о файлах
array ^fi = di->GetFiles("*.jpg");
// очистить список
imgList->Clear();
button2->Enabled = true; button3->Enabled = true;
// Добавляем в список имена jpg-файлов, содержащихся в каталоге aPath
for each (FileInfo^ fc in fi) {
imgList->Add(fc->Name);
}


this->Text = aPath;
if (imgList->Count == 0)
return false; else
{
cImg = 0;
ShowPicture(aPath + "\\" + imgList[cImg]);
// сделать недоступной кнопку Предыдущая
button2->Enabled = false;
// Если в каталоге один jpg-файл, сделать недоступной кнопку Следующая
if (imgList->Count == 1) button3->Enabled = false;
this->Text = "Слайд-шоу: " + aPath + "\\" + imgList[cImg];
return true;
}
}


// щелчок на кнопке Папка
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
// FolderBrowserDialog окно Обзор папок
FolderBrowserDialog^ fb = gcnew FolderBrowserDialog();
fb->Description = "Выберите папку,\n" + "в которой находятся иллюстрации"; fb->ShowNewFolderButton = false;
fb->SelectedPath = aPath;
// Отобразить окно Обзор папок и проверить, щелчком на какой кнопке пользователь закрыл его
if (fb->ShowDialog() == System::Windows::Forms::DialogResult::OK) {
// пользователь выбрал каталог и щелкнул на кнопке OK
aPath = fb->SelectedPath;
this->Text = aPath;
if (!FillList(fb->SelectedPath))
// в каталоге нет файлов иллюстраций
pictureBox1->Image = nullptr;
}
}


// щелчок на кнопке Предыдущая
private: System::Void button2_Click(System::Object^ sender, System::EventArgs^ e) {
// если кнопка Следующая недоступна, сделаем ее доступной
if (!button3->Enabled) button3->Enabled = true;
if (cImg > 0) {
cImg--;
ShowPicture(aPath + "\\" + imgList[cImg]);
// отображается первая иллюстрация
if (cImg == 0) {
// теперь кнопка Предыдущая недоступна
button2->Enabled = false;
}
}
}


// щелчок на кнопке Следующая
private: System::Void button3_Click(System::Object^ sender, System::EventArgs^ e) {
if (!button2->Enabled) button2->Enabled = true;
If (cImg < imgList->Count) {
cImg++;
ShowPicture(aPath + "\\" + imgList[cImg]);


IF (cImg == imgList->Count -1) {
button3->Enabled = false;
}
}
}


Элемент управления Chart


Элемент управления Chart позволяет создавать диаграммы для сложного статистического или финансового анализа. Этот элемент поддерживает следующие функциональные возможности:

  • ряды данных, области диаграммы, оси, условные обозначения, метки и заголовки;

  • привязку данных;

  • операции с данными: копирование, разбиение, слияние, выравнивание, группирование, сортировку, поиск, фильтрацию и т. д.;

  • статистические и финансовые формулы;

  • расширенную настройку внешнего вида диаграммы: трехмерную графику, сглаживание, освещение и перспективу;

  • события и индивидуальную настройку.

С помощью компонента Chart (чертеж) удобнее всего выполнять построение графиков функции по уравнению на промежутке.
Построение графика функции:

  1. нужно добавить компонент Chart на форму;

  2. щелкнуть левой кнопкой по пункту «Series» окна «Свойства» (рис. 2);




Рисунок 2 – Окно «Свойства»



  1. в результате увидим окно редактора коллекции Series (рис. 3);


Рисунок 3 – Диалоговое окно «Редактор коллекции Series»



  1. чтобы на одном компоненте Chart построить несколько графиков функции, нужно выбрать страницу Series (левая часть окна) и щелкнуть по кнопке Добавить (если нужно построить несколько графиков на одной координатной плоскости, то нужно сделать соответствующее количество Series);

  2. в правой части окна для каждой Series можно сделать индивидуальные настройки, основные из них:

  • ChartType – тип диаграммы для представления данных;

  • XValueType – тип значений, хранимых на оси ОХ;

  • YValueType – тип значений, хранимых на оси ОY;

  • Color – цвет точки данных;

  • BorderColor – задает цвет границ;

  • ShadowColor – задает цвет тени;

  • Font – шрифт точки данных;

  • LabelBackColor – задает цвет фона метки;

  • LabelForeColor – задает цвет метки;

  • IsVisibleInLegend – включает/выключает отображение легенды;

Многие из этих параметров можно также задавать программно, например:
Series^ plot1 = chart1->Series [0];
if (colorDialog1->ShowDialog()==System::Windows::Forms::DialogResult::OK)
plot1-> Color = colorDialog1-> Color;
В данном случае изменяется цвет графика функции при выборе цвета в диалоговом окне «ColorDialog».
Если графики функций нужно распечатать, то на черно-белом принтере линии будут неразличимыми. В этом случае нужно использовать возможности страницы Series и из списка опций BorderdashStyle выбрать другую прорисовку линии (например, точками) или в опции BorderWidth выбрать большую толщину линии (по умолчанию стоит значение 1).

Свойства элемента управления Chart


Основные свойства элемента управления Chart отображены в таблице 5.


Таблица 5 – Основные свойства Chart



Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет