Политика конфиденциальностиКонтактыО сайтеОтзывыGitHubDonate
© EVILEG 2015-2018
Рекомендует хостинг
TIMEWEB
25 июля 2018 г. 18:10

Qt

OpenCV, Qt

Введение
Хотел бы выразить благодарность Евгению за этот замечательный сайт и за то что он помогает начинающим программистом и не только развиваться. Хотел бы попросить и других пользователей внести свой вклад в развития данного проекта) Спасибо всем)
Ниже описанные действие были сделаны мной когда я устанавливал для себя OpenCV . Хотелось бы подчеркнуть что в интернете нет ПОЛНОЙ статьи на эту тему. Так как когда я это устанавливал выходили ошибки а ответы приходилось искать то в рунете то у американцев то черти знает у кого.

18 июля 2018 г. 7:14

Qt

C++, Qt5, bind, Python

Сегодня мы взглянем, как вы можете создавать привязки для собственного проекта.

В Qt Company рады сообщить, что Qt для Python будет также включать в себя Shiboken  - ваш основной инструмент создания привязки.

Прочтите материал ниже, и вы получите представление о том, как создавать привязки Python для простой библиотеки C ++.

Будем надеяться, это способствует тому, что вы сделаете тоже самое с собственными пользовательскими библиотеками.

Как и в любом проекте Qt мы рады представить статьи по Shiboken, тем самым улучшая его понимание для всех.

Пример библиотеки

Основными целями этого поста  будет использование нами немного бессмысленной пользовательской библиотеки под названием Universe. Она предусматривает два класса: Icecream (мороженое) и Truck (грузовик).

16 июля 2018 г. 7:15

Django

Social, Google, Django, Google API

Второй социальной сетью, через которую можно будет аутентифицироваться на сайте, будет Google+.

Я не буду вдаваться во все подробности настройки и установки батарейки Python Social Auth Django, поскольку об этом было рассказано в предыдущей статье . Но отмечу, что на этот раз подключение заняло всего пол часа.

Однако настройка доступа через API Google была более сложной, чем для VKontakte.

13 июля 2018 г. 7:17

Django

django, Social

По рекомендации пользователей сайта начал добавлять авторизацию через социальные сети на сайт. Первой такой социальной сетью стала ВКонтакте, как наиболее популярная социальная сеть у пользователей моего сайта.

Django сам по себе имеет необходимый функционал по работе с протоколом OAuth 2.0, который мог используется в API ВКонтакте для авторизации пользователей на сторонних ресурсах (и не только для авторизации). Но в данном случае я не стал писать свой велосипед, используя голую поддержку OAuth в Django, а нашёл очень хорошую батарейку, которая пожалуй достаточно известна среди разработчиков сайтов на Django, которая позволила внедрить авторизацию через ВКонтакте всего за пару часов.

Эта батарейка называется Python Social Auth Django .

Давайте пошагово разберёмся, что нам нужно сделать, чтобы подключить авторизацию через ВКонтакте на сайт с Django

9 июля 2018 г. 10:14

Qt

QtDesigner, Widget, Qt

Периодически возникают вопросы связанные с наследованием виджетов и применении наследованных виджетов в рамках графического дизайнера Qt Designer.

Если применение виджета в рамках кода в целом является понятным, то как прикрутить кастомный виджет к ui форме на первый взгляд не понятно.

Давайте посмотрим на примере наследованной кнопки QPushButton.

6 июля 2018 г. 8:26

C++

factorial, lambda, C++, лямбда функция, факториал

В предыдущей статье мы ознакомились со структурой лямбда функций, а теперь поиграем с лямбдами, вычислим факториал, и рассмотрим, как для этого можно применить лямбда функцию.

Рассмотрим для начала обычный вариант вычисления факториала, а также уточним, что такое рекурсивная функция.

Рекурсивная функция

Рекурсивной функцией является та функция, которая вызывает саму себя. Это означает, что внутри функции присутствует вызов самой себя и может случиться бесконечная рекурсия, если в коде функции отсутствуют условия по выходу из рекурсии.

Вот пример такой бесконечной рекурсивной функции, программа с которой завершается аварийно из-за переполнения стека вызовов.

#include <iostream>

using namespace std;

void infiniteRecursiveFunction()
{
    cout << "Hello World!" << endl;
    infiniteRecursiveFunction();
}

int main()
{
    infiniteRecursiveFunction();
    return 0;
}
5 июля 2018 г. 7:05

Django

Django, template, content, Search

Постоянные посетители сайта, которые пользуются поиском на сайте, наверняка заметили, что отображение статей отличается от отображения комментариев в поисковой выдаче сайта. Это было достигнуто тем, что каждый тип контента имеет собственный шаблон для отрисовки, которые подставляется при рендеринге странице в зависимости от того, какой контент был найден в поиске.

Посмотрим на пример выдачи.

Видите, здесь представление комментария отличается от статьи, однако они выводятся в рамках одной поисковой выдачи, как было сделано в предыдущей статье.

Но это сделано гораздо более изящно, чем выбор через if else . Честно, мне самому очень нравится это решение.

4 июля 2018 г. 6:38

Django

Search, QuerySet, Django, Model

В предыдущих статьях мы рассматривали, как сделать поиск на сайте на сайте. А именно:

Но что если у вас больше, чем один тип контента. У вас могут быть статьи, комментарии, форум и сообщения на форуме. Как тогда быть?

Если Вы хотите сделать всё самостоятельно, без применения сторонних библиотек, то тогда нужно будет сделать поиск по всем необходимым моделям и объединить результат. У меня сделано точно также на сайте.

2 июля 2018 г. 18:24

Qt

Qt, ui, C++, Form

В некоторых случаях может потребоваться создавать классы форм виджетов, у которых будет кастомный базовый класс. То есть класс формы виджета будет наследован от вашего класса, а не напрямую от QWidget , QDialog или QMainWindow .

Естественно, что для этого ваш кастомный класс должен быть наследован от одного из этих трёх классов. Но при этом у вас будет собственный базовый класс для какого-либо специфичного функционала, не важно для какого. Не будем делать Холивар о том, насколько удобно или неудобно использовать Qt Designer или лучше писать всё вручную в коде. Знаю, что у некоторые программисты не приемлют использование Qt Designer. Но остановимся на том, что для меня он удобен, как и для части других программистов.

Создадим два класса форм FirstForm и SecondForm , которые будут наследованы от виджета BaseWidget , который в свою очередь наследован от QWidget .

Внешний вид окна приложения будет таким.

2 июля 2018 г. 7:49

EVILEG

EVILEG

Добрый день, Дорогие Пользователи EVILEG!

30 июня произошёл сбой с базой данных. Часть данных за последние 3 дня была утеряна, за что приношу свои извинения!

Благодаря кешу Bing удалось восстановить часть сообщений и комментариев, а также последнюю статью.

Постараюсь впредь не допускать такой проблемы и внимательнее относиться к резервированию базы данных.

Спасибо за понимание!

18 ноября 2018 г. 19:19
cyrillwork

Qt - Тест 001. Сигналы и слоты

  • Результат:78баллов,
  • Очки рейтинга2
16 ноября 2018 г. 19:09
Илья Завьялов

Qt - Тест 001. Сигналы и слоты

  • Результат:31баллов,
  • Очки рейтинга-10
16 ноября 2018 г. 12:49
Ирина Минигузина

C++ - Тест 003. Условия и циклы

  • Результат:0баллов,
  • Очки рейтинга-10
Последние комментарии
16 ноября 2018 г. 6:50
Евгений Легоцкой

Добрый день! шаблон не находит, или шаблон неправильно прописали, или тег шаблона неправильно написан, иных выводов сделать не могу, из того, что вы написали. трейсбек нужно смотреть. Со...
16 ноября 2018 г. 6:48
Евгений Легоцкой

пройтись циклом по всем виджетам в обратном порядке for (int i = ui->vertialLayout->count() - 1; i >= 0; --i){ QWidget* w = ui->verticalLyout->itemAt(i)->widget();...
15 ноября 2018 г. 21:35
chunk

Доброго времени суток Евгений. Не подскажете что я делаю не так? Получаю ошибку такого характера: Reverse for 'add_comment' with arguments '('',)' not found. 1 pattern(s) tried: ...
15 ноября 2018 г. 15:35
Михаиллл

Спасибо. Похоже где то описку сделал, поэтому не работало. Я добавил на verticalLayout много виджитов. А можно ли их как то быстро и просто удалить?
15 ноября 2018 г. 14:55
Евгений Легоцкой

verticalLayout - это, по-моему предположению, должен быть у вас объект класса QVBoxLayout, который наследован от QBoxLayout. Поэтому открываете документацию на QVBoxLayout ...
Сейчас обсуждают на форуме
18 ноября 2018 г. 18:11
Metelev

Большое спасибо, все получилось, завтра начну изучать код.
18 ноября 2018 г. 17:49
Чарльз Грин

Спасибо, буду разбераться
17 ноября 2018 г. 14:13
Чарльз Грин

Я сейчас занимаюсь мультимедией, это аудио и видео, программы для концертов и т. д. Бибилиотека Qt очень помогает, она надежная, а надежность в моих приложениях очень важный фактор чтоб не пол...
16 ноября 2018 г. 16:28
Евгений Легоцкой

Добрый день! Спасибо, что воспользовались именно форумом. Заниматься курсовыми работами чьими-то ни было у меня времени нет, у самого полторы работы. Но что-то подсказать на фо...
Присоединяйтесь к нам в социальных сетях

Для зарегистрированных пользователей на сайте присутствует минимальное количество рекламы