программирование qt список числа форматы учебное игра спам маразм реклама деньги провайдеры картинка c++ графика random время общество политика россия сон чат ошибка люди музыка избранное кыштовка php сервис textprocessing дата javascript погода html сервер ссылки математика памятка шахматы фото видео история жпрезы коммуникатор протоколы опсосы android статистика блог flash все теги все комментарии все ссылки свежие изменения
[1-15] [16-30] ... [3091-3105] [3106-3112]
Прикреплённое сообщение, правила и всё такое
Encoding: UTF-8 (Unicode). Primary language: Russian. Для полноценной работы блога нужны включённые в браузере картинки + Javascript + Cookies. Ссылки, открывающие новое окно (вкладку), везде подсвечены.
Даже по законам Эрефии этот блог - не СМИ, все сообщения выражают личную точку зрения своих авторов и являются оценочными суждениями, при этом любые совпадения мест, имён, названий и действующих лиц далеко не случайны. В блоге нет файлов, способных нанести вред Вашему компьютеру или мобильному устройству. Если Вам не исполнилось 18+, срочно отвалите отсюда, прикиньтесь ветошью и не отсвечивайте покиньте этот ресурс. Учтите, что посещая его, Вы вторгаетесь на мою личную территорию :) далее...
19.01.2038, 15:15 [16875 просмотров]
Qt: редактируем список вещественных чисел с валидацией в ячейке QTableWidget
Мы хотим написать виджет Qt на основе класса QWidget
, позволяющий ввести в табличный компонент из одного столбца вещественные числа с валидацией ввода, а затем по нажатию кнопки "Обработать" подсчитать их арифметическое среднее, моду и медиану.
Используем для размещения данных удобный виджет QTableWidget
, основанный на элементах и не требующий отдельной модели. В нашем случае таблице хватит одного столбца.
Весь код поместим в файл widget.h
(как любят делать нейросети), а в widget.cpp
напишем только
#include "widget.h"
Поскольку обычно нужно редактировать не что угодно, а тот или иной формат данных, покажем, как использовать стандартный QDoubleValidator
для работы с данными ячейки QTableWidgetItem
. Мы просто подменяем виджет ячейки на QLineEdit
методом setCellWidget
, а затем возвращаем полученное в QLineEdit
значение в таблицу из метода getData
, ранее назначенного слотом для сигнала returnPressed
(нажатие Enter) от QLineEdit
.
У нас это делается однократно при создании ячейки из метода addRow, но можно аналогично подключать стандартный или свой (библиотека QValidator
) валидатор каждый раз, когда QTableWidgetItem
переходит к режиму редактирования ячейки. Правда, тогда становится логичней написать отдельный класс-делегат для редактирования ячейки таблицы QTableWidget
, потому что у неё множество сигналов, связанных с изменением состояния элементов.
Таким образом, при нажатии кнопки "Обработать" мы получаем числа из тех ячеек, в которых уже нет полей ввода QLineEdit
и обрабатываем их. Учитывается текущая локаль при получении числа, так как её учитывает QDoubleValidator
.
Ячейки можно сортировать, удалить или "занулить" нажатием клавиши F2. Ниже показан весь код в работе, прикреплён архив проекта и скриншот. далее...
14.12.2024, 13:05 [16 просмотров]
Qt: простой класс для игрового поля размерностью 3x3
По просьбе трудящегося, как я понял, ноги растут отсюда.
Реализуем класс для поддержки игрового поля размерностью 3*3, каждый квадрат поля может находиться в одном из 3 состояний – "занято полностью", "занято наполовину", "свободно". Переключение состояний каждого квадрата возможно только по цепочке "свободно" – "занято наполовину" – "занято полностью" – "занято наполовину" – "свободно".
Задачу визуализируем, показав управление состояниями полей средствами GUI. далее...
14.12.2024, 13:03 [12 просмотров]
Родиться, оформить кабальную карту, заплатить репетитору, сделать эпиляцию и околеть
Получается, в заголовке - почти полный список дел, для которых рождается рассеянец. :)
Новоелеком тихо и единовременно поднял абонентку с 860 до 980 деревянных в месяц за провод 100 Мбит (если что, стандартный провод больше и не проводит, любые предложения выше - маркетинг), взамен - "выберите подарок, у вас 5 минут". Простите, я все 5 минут смеялся. А так как особо некогда, скиду сюда текстлог супер-списка из 138 бредложений, чтоб потом использовать где-нибудь ещё.
Да, не забыть поставить роботу автоответчик "Этот абонент околел. Обращайтесь к его наследникам. Если Вы и есть наследник - обращайтесь за завещанием через предусмотренные законом полгода". далее...
10.12.2024, 16:20 [28 просмотров]
Полноэкранный режим виджета в Qt и обновление экрана по таймеру
Ставим полноэкранный режим сразу из main.cpp
методом showFullScreen()
(см. в листинге), а потом его можно менять, например, программно, у нас клавиша Escape управляет переключением между окном и полноэкранным видом.
Перерисовка будет, соответственно, при смене режима или "ручном" изменении размеров окна с помощью стандартных кнопок или границы. Всё остальное время объекты-прямоугольники немного ёжатся смещаются раз в секунду и меняют размеры, но не "уходят" далеко от своего начального положения, установленного в методе initData()
. Учитывается отступ от краёв экрана padding
.
Ну а почему в листинге numRects = 45;
, догадайтесь сами, по ссылке есть в рамочке. Подумал даже, может скрин приложения и сделать следующими "обоями года", как-то мне вот-так видится пока. далее...
01.12.2024, 13:15 [50 просмотров]
Что было главным в этом году? Мы поняли как, оказывается, всегда достигались великие победы. В полноте заботы о потерях и правдивой информации. Но год ещё на закончен, поэтому как и в прошлом месяце, мы надеемся создавать иногда иллюзии смысла в мире, похожем на что угодно, только не на его описание в школьных учебниках и российских новостях.
Все мы персонажи снов, недавно мне прислали, что и я тоже, речь, очевидно, о "замке-университете", где бывают в ночной реальности многие и многие:
Под конец сна видел сон: идём с тобой по какому то коридору, типа второго или третьего этажа. На университет похожа обстановка. Дверь в кабинет открыта, стоит много копировальной техники, ты говоришь: вот здесь они научную литературу печатают. Ого, как классно! Потом дошли примерно до середины длинного коридора, слева стоит столик круглый пластиковый, коричневый или синий, присели на стулья. Напротив дверь в кабинет была открыта. Две дородные бабы лет 35 под сорок о чём-то спорили. Хорошо одетые, стройные, не страшные, скорее умные, с улыбками на лице спрашивают: а вы чего тут забыли? Да так, просто присели отдохнуть, - это ты отвечаешь... И надо же было проснуться. Где и что до этого было - убей, не помню.
Вот из этого и исходим. далее...
01.12.2024, 10:56 [92 просмотра]
Qt6: графический парсер с простым построителем графика функции одной переменной в заданных пределах
Забытый проект ковидного 21-го, делался как чисто учебный, зато все исходники (разбор выражения и построение графика) локальные, а в качестве графопостроителя используется qcustomplot
отсюда.
Сам парсер - это набор классов, поддерживает не много операций, но 4 арифметических и базовые тригонометрические функции - да. далее...
27.11.2024, 06:34 [47 просмотров]
Лучший бард в НСО, конечно, и мой хороший друг, которого, я искренне уважаю. Сергей Иваныч. Личные данные с согласия. В блоге уже есть несколько ссылок, по мере появления времени добавлю их сюда, остальное тоже позднее.
Пока что, давно ждал полную версию "Синей кошки". Одевай колготки, Звезда по имени Солнце! далее...
25.11.2024, 19:50 [53 просмотра]
Javascript: ещё один элемент для календаря событий
По просьбам трудящихся. Старый мидлет EverydayNotes получал с сервера на мобильный телефон небольшой текстовый файл, соответствующий текущему дню в формате ММДД (месяц и следом день двумя цифрами, например, 0111 для 11 января или 1101 для 1 ноября) и содержащий информацию о некоторых светских и религиозных праздниках, святцах, приметах, именинниках этого дня (список мракобесия на этом закончен).
Трудно ли переделать такое в замыкание Javascript, которое потом можно встроить на любую web-страницу?
Нет, это совсем легко. Качаем по ссылке архив с txt-файлами мидлета, разворачиваем, например, в папку data
на локальном хосте. С помощью небольшого скрипта на PHP получим Javascript-объект, содержащий ассоциативный массив со всей информацией, вот код с комментариями: далее...
24.11.2024, 02:57 [46 просмотров]
Javascript: подстановка нового адреса сайта с отсчётом времени до перехода
Тема избитая, поэтому я лишь приведу использованное сегодня решение и кратко сошлюсь на альтернативы.
Наш подход уместен, когда мы можем легко внедрить нужную разметку и код в шаблон страниц сайта.
В простейшем случае достаточно такого Javascript-кода:
<script> setTimeout(function(){ window.location.href = "http://new-site.com"; // Задержка может предотвратить проблемы, связанные с немедленной переадресацией }, 3000); // 3 секунды </script>
или же
window.location.replace("http://new-site.com");
если мы не хотим, чтобы старый линк оставался в истории браузера. далее...
23.11.2024, 21:24 [39 просмотров]
Файлы завалялись от эпохи мидлетов, подумал - почему бы не выложить эту "шпаргалку" сюда, тема-то всегда актуальна.
Справочник максимально компактен, только лёгкие по объёму (так как предназначались для телефонов) картинки с формулами и всплывающие подписи при наведении мыши. Разделы: тригонометрия, преобразования со степенями, корнями и логарифмами, прогрессии, квадратное и простые тригонометрические уравнения, интегралы, производные, простейшее исследование функций, в общем, вся школота. Более подробное оглавление есть в начале документа.
Страница опубликована по показанной ниже статической ссылке, если вы нашли в документе неточности или недостающие разделы - Welcome в комменты. далее...
20.11.2024, 14:36 [50 просмотров]
Дин Лижэнь - Гукеш Доммараджу: матч на первенство мира по шахматам-2024
Время и место проведения: 20 ноября - 15 декабря 2024 г., Сингапур, курорт Resorts World Sentosa. Расписание:
25.11, пн: 01 тур |
26.11, вт: 02 тур |
27.11, ср: 03 тур |
28.11, чт: выходной |
29.11, пт: 04 тур |
30.11, сб: 05 тур |
01.12, вс: 06 тур |
02.12, пн: выходной |
03.12, вт: 07 тур |
04.12, ср: 08 тур |
05.12, чт: 09 тур |
06.12, пт: выходной |
07.12, сб: 10 тур |
08.12, вс: 11 тур |
09.12, пн: 12 тур |
10.12, вт: выходной |
11.12, ср: 13 тур |
12.12, чт: 14 тур |
13.12, пт: тай-брейк |
14.12, сб: закрытие |
Начало игр: 17:00 местного времени (UTC+8), 09:00 по Гринвичу, 12:00 по Москве, 16:00 по Новосибирску.
Трансляции: chesspro (ссылки "ChessPro Live" или текущая с главной страницы); chess.com (ссылка без VPN); chessopen.ru; lichess.org (во время партий есть список стримов, онлайн-Стокфиш, свои ходы); "глубокий анализ" от sesse.net (во время партий); живая LCZero.
Видео: Левитов; FIDE (twitch); chess.com; chess24 (twitch); lichessdotorg (twitch); подшипникам (ссылки на недозаблокированный Ютуб могут потребовать доступа по VPN).
Матч состоит из 14 классических партий с контролем времени 120 минут на первые 40 ходов, затем 30 минут на оставшуюся часть партии с добавлением 30 секунд начиная с 41-го хода.
Игрок, набравший 7,5 очков или более, выигрывает матч. Если счет после 14 партий равный, то проводятся тай-брейки.
Организация матча оценивается в $8,5 млн, из которых $2,5 млн пойдут на призовой фонд, а $1,1 млн в FIDE на лицензионные сборы. Спонсор не кто иной, как Гугель.
Страницы матча: Вики (ру); Wiki (en); FIDE. Регламент. Рейтинги Дина и Гукеша. Напомним, что действующий чемпион 32-летний Дин Лижэнь представляет Китай, а претендент 18-летний Гукеш Доммараджу - Индию. Дин выступает неудачно практически всё время после победы над Непомнящим и он только 23-й в ноябрьском рейтинге по классике (2728), Гукеш - 5-й (2783). далее...
20.11.2024, 02:11 [355 просмотров]
Qt6: простой редактор списка в MVC
Делаем примерно то же самое, но без делегата, который почему-то вызывает у трудящихся обучающихся ужас. Пример сознательно не закончен, интерфейс взят отсюда, но с кошерным QListView
и MVC (стандартная модель QStringListModel
) вместо неправославного QListWidget
, основанного на элементах, а не на модели.
Регулярка re
следит за корректностью данных (исключаются строки, не содержащие хотя бы одного алфавитно-цифрового символа или любые символы, кроме букв, цифр и пробелов), всё сохраняется и восстанавливается автоматически в текстовом файле data.txt
из папки приложения.
Элементы списка проверяются на уникальность, а сам код проверялся в Qt 6.X актуальной версии, основные действия закомментированы в листинге. далее...
19.11.2024, 17:13 [26 просмотров]
История шахмат в редких и занимательных видео
Все материалы предоставлены ув. Алексеем, если не оговорено иного. В статье много ссылок на YouTube, который в настоящее время не заблокирован в РФ официально, но "замедляется" настолько, что смотреть без VPN или браузерного расширения (особенно на десктопе, а не на смартфоне) бывает невозможно.
Но мы надеемся, что такие средства у вас есть, так что Welcome. Кроме того, в последние дни YouTube начинает периодически "размедляться", вражеские каналы объясняют почему, но мы им не верим. :) далее...
17.11.2024, 11:24 [81 просмотр]
Как убрать значок VoLTE со смартфона?
Назойливый значок появился на днях на экранах миллионов абонентов, стон стоит по земле уже нерусской.
VoLTE - очередная технология-заглушка, призванная изображать прогресс, а именно, "технологию скоростной передачи голоса в HD-качестве". В реальности ничего, кроме лишнего расхода аккума, замедления мобильного интернета и облегчения извлечения ваших разговоров тов. майором там нет.
Кстати, если у абонента на другом конце "воздушного пути" мулька не подключена, то качество голосовой (с)вязи уйдёт скорее в "минус", чем в "плюс".
С технической точки зрения недопротокол LTE к четвёртому поколению мобильной связи 4G не относится, он основан на протоколах передачи данных GSM/EDGE и UMTS/HSPA, имеющих принадлежность к технологии мобильной связи 3G.
Росоператоры не соблюдают требование отключать эту услугу по USSD-команде *111*6*0# [вызов]
, а максимально запутывают ситуацию, помещая в ответ менюшки с выбором анекдотов, безумных опций и т.п. далее...
15.11.2024, 23:43 [44 просмотра]
[1-15] [16-30] ... [3091-3105] [3106-3112]