Свойства
|
Название |
Описание |
Chars |
Берет символ из указанной позиции в текущем объекте String. |
|
Length |
Определяет количество символов в текущем объекте String. |
Событие – изменение текста в окне текстового редактора
Для установки этого события требуется, находясь в режиме редактора формы, выделить с помощью мыши нужный объект формы - RichTextBox и открыть для него окно среды - Properties нажав Alt+Enter или левую кнопку мыши – в появившемся окне выбрать нижнюю строку Properties.
В открывшемся окне Properties выбрать список событий, для чего необходимо нажать значок «молния» в заголовке окна. Два раза щёлкнуть мышью по пустому полю справа от поля TextChanged. В результате будет сгенерирован обработчик события:
private:
System::Void richTextBox1_TextChanged(System::Object^ sender, System::EventArgs^ e)
{
}
В текст этого обработчика необходимо включить строку изменения флага flag -
flag=1;
Cледующие строки взяты из MSDN для данного обработчика:
try
{
// Convert the text to a Double and determine if it is a
// negative number.
if ( Double::Parse( richTextBox1->Text ) < 0 )
{
// If the number is negative, display it in Red.
richTextBox1->ForeColor = Color::Red;
}
else
{
// If the number is not negative, display it in Black.
richTextBox1->ForeColor = Color::Black;
}
}
catch ( Exception^ )
{
// If there is an error, display the text using the system colors.
richTextBox1->ForeColor = SystemColors::ControlText;
}
Кроме обработчиков событий в файле Form1.h инициализируютя включенные в форму компоненты – InitializeComponent.
void InitializeComponent(void)
{
this->menuStrip1 = (gcnew System::Windows::Forms::MenuStrip());
this->toolStripMenuItem1 = (gcnew system::Windows::Forms::ToolStripMenuItem());
this->toolStripMenuItem2 = (gcnew System::Windows::Forms::ToolStripMenuItem());
this->toolStripMenuItem3 = (gcnew System::Windows::Forms::ToolStripMenuItem());
this->saveToolStripMenuItem = (gcnew System::Windows::Forms::ToolStripMenuItem());
this->openFileDialog1 = (gcnew System::Windows::Forms::OpenFileDialog());
this->saveFileDialog1 = (gcnew System::Windows::Forms::SaveFileDialog());
this->richTextBox1 = (gcnew System::Windows::Forms::RichTextBox());
this->menuStrip1->SuspendLayout();
this->SuspendLayout();
//
// menuStrip1
//
. . .
//
// toolStripMenuItem1
//
. . .
//
// toolStripMenuItem2
//
. . .
//
// toolStripMenuItem3
//
. . .
//
// saveToolStripMenuItem
//
. . .
//
// openFileDialog1
//
. . .
//
// saveFileDialog1
//
. . .
//
// richTextBox1
//
. . .
//
// Form1
//
. . .
}
Многоточие заменяет строки, которые можно посмотреть в сгенерированном листинге.
Система делает многое, но некоторые строки необходимо включить в листинг вручную:
- к строкам using необходимо добавить следующие:
using namespace System::IO;
using namespace System::Text;
- для получения возможности контролировать изменение файла необходимо включить глобальную переменную flag в поле public класса Form1:
public ref class Form1 : public System::Windows::Forms::Form
{
public:
int flag;//флаг для обозначения факта изменения текста в окне редактора текста
Form1(void)
{ …