Первая версия класса расположена по web-ссылке: RichTextBox_LoggedClass
Во вторую версию одноименного класса добавлено:
1. Логирование отладочного текста (*.log_dbg), по умолчанию оранжевого цвета (*.col_dbg). При логировании строки в компоненте RichTextBox не используется (timestamp( )) в начале добавляемого текста и не используются символы перевода строки ("\r\n") в конце текста.
2. Добавление текста в компонент RichTextBox выполнена через *.InvokeRequired, позволяющего работать из другого потока;
3. Также пространство имен в классе "Framework". Исключено имя разрабатываемого проекта (projectname.Framework);
Остальные методы работы остались без изменений:
Остальные методы работы остались без изменений:
Пример использования класса:
---------------------
...
using Framework;
...
class Class_Name {
RichTextBoxLogClass log;
public Class_Name() {
log = new RichTextBoxLogClass(rtbLog);
}
...
public void button_click(...) {
log.log_msg("Начало выполнения операции.");
log.log_err("Ошибка выполнения операции");
log.log_tx("ASCII CMD SEND TEXT");
log.log_rx("ASCII CMD RECIVED TEXT");
log.log_tx(new byte [] {0x01, 0x20, 0x44, 0x55});
log.log_rx(new byte [] {0x01, 0x20, 0x44, 0x55});
log.log_dbg("dbg chars " + BitConverter.ToString(new byte[] {0x01, 0x02, 0x03 }).Replace("-", " ");
}
}
---------------------
...
using Framework;
...
class Class_Name {
RichTextBoxLogClass log;
public Class_Name() {
log = new RichTextBoxLogClass(rtbLog);
}
...
public void button_click(...) {
log.log_msg("Начало выполнения операции.");
log.log_err("Ошибка выполнения операции");
log.log_tx("ASCII CMD SEND TEXT");
log.log_rx("ASCII CMD RECIVED TEXT");
log.log_tx(new byte [] {0x01, 0x20, 0x44, 0x55});
log.log_rx(new byte [] {0x01, 0x20, 0x44, 0x55});
log.log_dbg("dbg chars " + BitConverter.ToString(new byte[] {0x01, 0x02, 0x03 }).Replace("-", " ");
}
}
Настраиваемые параметры:
------------------------
log.col_msg - цвет текста сообщения, по умолчанию, Color.Gray;
log.col_err - цвет текста сообщения об ошибке, по умолчанию, Color.Black;
log.col_tx - цвет текста отправляемых данных, по умолчанию, Color.Red;
log.col_rx - цвет текста принимаемых данных, по умолчанию, Color.Blue;
log.log_dbg - цвет текста отладочного сообщения, по умолчанию, Color.Orange;
log.timestampFormat - формат вывода времени, например, "HH:mm:ss.ff";
log.bytes_in_line - количество байт в строке, например, 16;
log.hex_to_ascii_space - расст между hex и ascii строк, напр. 8;
------------------------
log.col_msg - цвет текста сообщения, по умолчанию, Color.Gray;
log.col_err - цвет текста сообщения об ошибке, по умолчанию, Color.Black;
log.col_tx - цвет текста отправляемых данных, по умолчанию, Color.Red;
log.col_rx - цвет текста принимаемых данных, по умолчанию, Color.Blue;
log.log_dbg - цвет текста отладочного сообщения, по умолчанию, Color.Orange;
log.timestampFormat - формат вывода времени, например, "HH:mm:ss.ff";
log.bytes_in_line - количество байт в строке, например, 16;
log.hex_to_ascii_space - расст между hex и ascii строк, напр. 8;
Скачать: RichTextBox_LoggedClass (2)