void TscalePreviewLabel::changeStyle(Tnote::EnameStyle style) { // Tnote::toRichText() method returns only names in user preferred according to settings // To cheat it and force note name in any given style we are resetting pointer of is7th_B // then Tnote skips filtering of a style during name generation. bool* tmpPtr = TnameStyleFilter::is7th_B(); TnameStyleFilter::setStyleFilter(0, TnameStyleFilter::solfegeStyle()); QString c_majorScale = ""; QString accidsLine = ""; for (int i = 1; i < 8; i++) { Tnote tmpNote(i, 0, 0); c_majorScale += tmpNote.toRichText(style) + " "; } if (m_withAccids) { accidsLine = "<br>"; Tnote tmpNote(1, 0, 1); // Ces accidsLine += tmpNote.toRichText(style) + " "; tmpNote = Tnote(2, 0, -1); // Des accidsLine += tmpNote.toRichText(style) + " "; tmpNote = Tnote(6, 0, -1); // Ais accidsLine += tmpNote.toRichText(style) + " "; tmpNote = Tnote(7, 0, -1); // Bb or Hb accidsLine += tmpNote.toRichText(style); } setText(QString("<p style=\"font-size: x-large;\">") + c_majorScale + accidsLine + "</p>"); TnameStyleFilter::setStyleFilter(tmpPtr, TnameStyleFilter::solfegeStyle()); // restore is7th_B settings }
int main(void) { setlocale(LC_ALL, ".1251");// Русификация // Создание входящего потока и его открытие ifstream inStream("readme.txt"); // Проверка на открытие файла if (!inStream.is_open()) { cout << "Ошибка открытия файла file.txt" << endl; system("pause"); exit(1); } // Создание динамического массива NOTE NOTE *notes = new NOTE[8]; char tmpSurname[200];// Временная переменная фамилии int tmpPhoneNumber(0);// Временная переменная номера телефона int tmpBirthday[3] = { 0 };// Временная переменная даты рождения char tmpSeparator(' ');// Символ разделяющий дату рождения // Цикл чтения из файла for (int i = 0; i < 8; i++) { // Считывание данных во временные переменные inStream >> tmpSurname >> tmpPhoneNumber >> tmpBirthday[0] >> tmpSeparator >> tmpBirthday[1] >> tmpSeparator >> tmpBirthday[2]; // Создание временного объекта NOTE NOTE tmpNote(tmpSurname, tmpPhoneNumber, tmpBirthday[0], tmpBirthday[1], tmpBirthday[2]); // Вставка временного объекта в массив notes notes[i] = tmpNote; } // Закрываем поток inStream.close(); /* Вывод массива до сортировки */ cout << endl << "Вывод массива до сортировки: " << endl << endl; for (int i = 0; i < 8; i++) notes[i].show(); // Сортируем массив NOTE selectSort(notes, 8); /* Вывод массива после сортировки */ cout << endl << "Вывод массива после сортировки: " << endl << endl; for (int i = 0; i < 8; i++) notes[i].show(); // Ввод месяца cout << "Введите пожалуйста фамилию для сравнения: "; cin >> tmpSurname; // Преобразование символов из иероглифов в русскую раскладку OemToCharA(tmpSurname, tmpSurname); // Очистка экрана system("cls"); // Поиск информации for (int i = 0, count = 0; i <= 8; i++) { // Если пройдясь по всем записям и не нашлось ни одного совпадения if ((i == 8) && count == 0) cout << "Нет соответствующей записи" << endl; // Если прошлись по всем записям и нашлись совпадения else if (i == 8 && count != 0) break; // Если не закончились записи, ищем совпадения else if (notes[i] == tmpSurname) { // Вывод notes[i].show(); // Увеличение счётчика count++; } } // Приостановка программы для просмотра результата system("pause"); return NULL;// Передача управления операционной системе }