Вопрос один - КАК? Пожалуйста не вбивайте в гугле так как я нихчего не нашёл кроме ведра говна в лицо.
А по нормальному как сделать чтобы Form1->Refresh(); обновляло Form1_Paint?
Код:
#pragma once
namespace SnippingTool {
using namespace System;
* * using namespace System::ComponentModel;
* * using namespace System::Collections;
* * using namespace System::Windows::Forms;
* * using namespace System::Data;
* * using namespace System::Drawing;
/// <summary>
* * /// Сводка для Form1
* * /// </summary>
* * public ref class Form1 : public System::Windows::Forms::Form
* * {
* * public:
* * * * Form1(void)
* * * * {
* * * * * * InitializeComponent();
* * * * * * //
* * * * * * //TODO: добавьте код конструктора
* * * * * * //
* * * * }
protected:
* * * * /// <summary>
* * * * /// Освободить все используемые ресурсы.
* * * * /// </summary>
* * * * ~Form1()
* * * * {
* * * * * * if (components)
* * * * * * {
* * * * * * * * delete components;
* * * * * * }
* * * * }
protected:
private:
* * * * /// <summary>
* * * * /// Требуется переменная конструктора.
* * * * /// </summary>
* * * * System::ComponentModel::Container ^components;
#pragma region Windows Form Designer generated code
* * * * /// <summary>
* * * * /// Обязательный метод для поддержки конструктора - не изменяйте
* * * * /// содержимое данного метода при помощи редактора кода.
* * * * /// </summary>
* * * * void InitializeComponent(void)
* * * * {
* * * * * * this->SuspendLayout();
* * * * * * //
* * * * * * // Form1
* * * * * * //
* * * * * * this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
* * * * * * this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
* * * * * * this->BackgroundImageLayout = System::Windows::Forms::ImageLayout::None;
* * * * * * this->ClientSize = System::Drawing::Size(284, 261);
* * * * * * this->Name = L"Form1";
* * * * * * this->Text = L"Form1";
* * * * * * this->TransparencyKey = System::Drawing::Color::Transparent;
this->Load += gcnew System::EventHandler(this, &Form1::Form1_Load);
* * * * * * this->Paint += gcnew System::Windows::Forms::PaintEventHandler(this, &Form1::Form1_Paint);
* * * * * * this->Resize += gcnew System::EventHandler(this, &Form1::Form1_Resize);
* * * * * * this->ResumeLayout(false);
}
#pragma endregion
* * private: System::Void Form1_Load(System::Object^ *sender, System::EventArgs^ *e) {
}
* * private: System::Void Form1_Paint(System::Object^ *sender,
* * * * * * * * *System::Windows::Forms::PaintEventArgs^ *e)
* * * * * * *{
* * * * * * * * *// Событие перерисовки экранной формы:
* * * * * * * * *//this->ClientSize = System::Drawing::Size(240, 200);
* * * * * * * * *// Устанавливаем вершины треугольника:
* * * * * * * * *Point p1 = Point(1, 1);
* * * * * * * * *Point p2 = Point(this->Height, 1);
* * * * * * * * *Point p3 = Point(1, 254);
* * * * * * * * *Point p4 = Point(this->Height, this->Width);
* * * * * * * * *// Инициализируем массив точек:
* * * * * * * * *array<Point> ^ Точки = { p2, p1, p3, p4 };
// Рисуем закрашенный цветом ControlDark многоугольник:
* * * * * * * * *e->Graphics->FillPolygon(gcnew SolidBrush(
* * * * * * * * * * *SystemColors::ControlDark), Точки);
* * * * * * * * *// Задаем цвет, который будет выглядеть прозрачным:
* * * * * * * * *this->TransparencyKey = SystemColors::ControlDark;
* * * * * * *}
private: System::Void Form1_Resize(System::Object^ *sender, System::EventArgs^ *e) {
* * * * * * * * //Form1_Paint(nullptr, nullptr);
* * * * * * * * *Form1->Refresh();
* * * * * * *}
* * };
}
Помогите пожалуйста