М
Миша24 жовтня 2017 р. 09:22

График qcustomplot, перенос данных из файла в файл, особенности графика и массивов.

QCustomPlot

Здравствуйте.

1. Как из main.cpp передать массив и переменную в mainwindow.cpp ?
2. После того, как задаю массив QVector<double > Open1[8]; , не могу присвоить Open1[0]=18; Open1[1]=22; Open1[2]=16; Open1[3]=20; Open1[4]=18; Open1[5]=22; Open1[6]=16; Open1[7]=20;  , если же задаю массив double  Open1[8]; , то не могу использовать его в функции timeSeriesToOhlc . Скажите пожалуйста, как работать с массивом QVector<double >.
3.  Как я понял double binSize = 3600*2 регулирует сколько значений цены отражается на свече графика, как сделать так, чтобы на одной свече отражалось только 4 цены? Можно ли вводить цены не одним массивом, а четырьмя? Если нельзя, то как лучше преобразовывать 4 массива в 1 для корректной работы.
MyCandleSrick_1006.rar
Рекомендуємо хостинг TIMEWEB
Рекомендуємо хостинг TIMEWEB
Стабільний хостинг, на якому розміщується соціальна мережа EVILEG. Для проектів на Django радимо VDS хостинг.

Вам це подобається? Поділіться в соціальних мережах!

35
М
  • 24 жовтня 2017 р. 09:53

4. Можно ли этот график строить по номерам свечек, и уже к ним присваивать дату?

    Evgenii Legotckoi
    • 24 жовтня 2017 р. 15:26

    1. Создайте метод для установки переменных или того же самого вектора в класс MainWindow.

    class MainWindow : public QMainWindow
    {
        Q_OBJECT
    
    public:
        explicit MainWindow(QWidget *parent = 0);
        ~MainWindow();
    
        void setSomeVariable(QVector<double>& someVector);
    private slots:
        void makePlot();
    
    private:
        Ui::MainWindow *ui;
    };
    И используйте эту переменную
    MainWindow w;
    w.setSomeVariable(Date);
    w.show();

    2. Не задавайте конкретный размер векторам, если в этом нет необходимости, с векторами можно работать и без задания конкретного размера. Если Вы зададите конкретный размер, то весь вектор будет инициализирован нулями.

    3. binSize - регулирует ширину, влияет на размер графиков. Вектора лучше объединять в один и заново устанавливать.

    4. А зачем? Обычно по датам строят, а свечки как бы привязаны к индексу в векторе в каком-то смысле.
      М
      • 25 жовтня 2017 р. 04:06
      1. Не совсем понял, скажите пожалуйста как передать переменную int A1=5; и массив  double*Open1= new double ;
          Open1[0]=18; Open1[1]=22; Open1[2]=16; Open1[3]=20; Open1[4]=18; Open1[5]=22; Open1[6]=16; Open1[7]=20;
      2. Сделал так  QVector<double>*Open1= new QVector<double>;
          Open1[0]=18; Open1[1]=22; Open1[2]=16; Open1[3]=20; Open1[4]=18; Open1[5]=22; Open1[6]=16; Open1[7]=20;
      Но код не работает, хотя в другом месте кода работает
      QVector<double> Date[n1],Time(n1), Open(n1), Close(n1),High(n1),Low(n1),Volume(n1);
      Open[0]=18; Open[1]=22; Open[2]=16; Open[3]=20; Open[4]=18; Open[5]=22; Open[6]=16; Open[7]=20;
      Скажите пожалуйста, почему не работает?
      3. Объясните пожалуйста зависимость количества значений, участвующих в построении одной свечи от величины binSize. При значении 1 использует 1 значение, но при том что в массиве 8 значений, график строится только по 7. При 2 кажется что использует 2 значения, но строит также по 7 точкам из 8,  При 3 строит по 3 точкам и использует 8 значений из 8. А при 4 Происходит непонятно что, При binSize =5 строит наконец 2 свечки но не по понятному алгоритму, и свечи получаются не одинаковые, хотя по значениям должны выйти одинаковыми. Скажите пожалуйста как строить по 4 значениям одну свечку?
      4. Свечи прономерованны, но при этом бывает разброс в датах, потому нужно привязать ось Х к номеру, есть ли такая возможность?
        М
        • 25 жовтня 2017 р. 05:33

        3.4. решил так //candlesticks->data()->set(QCPFinancial::timeSeriesToOhlc(time, Open, binSize, startTime)); //ввод значений графика

            bool  alreadySorted = false;
            candlesticks->QCPFinancial::setData ( bar, Open, High, Low,Close,  alreadySorted );
        Осталось понять как сделать счетчик графика объемов не по дате, а по номеру
          М
          • 25 жовтня 2017 р. 06:52

          С графиком объемов решилось также.  Помогите пожалуйста с вопросами 1 и 2.

            Evgenii Legotckoi
            • 25 жовтня 2017 р. 07:25

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

            void setSomeVariables(int A1, QVector<double>* someDouble);
            2. используйте метод append(), всё равно по порядку всё делаете.
            Open1->append(18); 
            Open1->append(22); 
            Open1->append(16); 
            Open1->append(20); 
            Open1->append(18); 
              М
              • 26 жовтня 2017 р. 04:33
              • (відредаговано)
              1. Сделал так:
              mainwindow.h:
              
              #ifndef MAINWINDOW_H
              #define MAINWINDOW_H
              #include <QMainWindow>
              namespace Ui {
              class MainWindow;
              }
              class MainWindow : public QMainWindow
              {
                  Q_OBJECT
              public:
                  explicit MainWindow(QWidget *parent = 0);
                  ~MainWindow();
                  void setSomeVariable(__int64 n1 );  //переменные, переносимые в разные файлы
              private slots:
                  void makePlot();
              
              private:
                  Ui::MainWindow *ui;
              };
              #endif // MAINWINDOW_H
              
              main.cpp :
              #include "mainwindow.h"
              #include <QApplication>
              #include <cstdlib>
              __int64 n1=500;
              int main(int argc, char *argv[])
              {
                  QApplication a(argc, argv);
                  MainWindow w;
                  //w.setSomeVariable(Date);
                  w.setSomeVariable(n1);
                  w.show();
                  return a.exec();
              }

              Выдает ошибку undefined reference to `MainWindow::setSomeVariable(long long)' , скажите пожалуйста как это исправить и передать переменную n1 из mainw.cpp в mainwindow.cpp

              2. Спасибо, так работает. Но почему иногда срабатывает Open[0]=18; , а иногда не срабатывает?
               
              5. При задании счетчика свечек __int64 n1 =8 000 000 выдает Segmentation fault, скажите пожалуйста в чем ошибка и как ее исправить. Может ли это быть из за того , что rand() перестает выдавать данные?
                Evgenii Legotckoi
                • 26 жовтня 2017 р. 06:29

                1. Вы написали реализацию этого setSomeVariable метода? В файле mainwindow.cpp?

                2. Скорее всего ошибка ситуативная, просто имеете некоторую ошибку в коде.
                5. Нужно смотреть дебаггером, где вылетает Segmentation fault. Зачастую это ошибка возникает тогда, когда идёт обращение к неинициализованной области памяти.

                И не используйте без явной нужды нестандартные определения типов.
                __int64 - это чисто мелкософтовский typedef, который не является стандартом C++.
                Если так сильно хочет использовать typdef`ы, вместо того, чтобы написать long long int или long int, то используйте тогда то, что является стандартом C++. То есть в данном конкретном случае используйте int64_t
                  М
                  • 26 жовтня 2017 р. 08:35

                  1. Нет, не знаю как написать. Объясните пожалуйста, этот момент  плохо понимаю.

                  2. Вы правы, перепутал [] и ().
                  6. Скажите пожалуйста, как указать количество свечек, которые отображаются в экране при загрузке скрипта.
                  7. Скажите пожалуйста, как сделать автомсштабируемость (одинаковое расстояние от верхней точки до верха и нижней до низа , из тех, что видны в данный момент на графике ) при прокрутке графика по оси У.
                  8.  Скажите пожалуйста, как на графике в номере свечки bar указать дату и время Date and Time/
                  https://cloud.mail.ru/public/FUxM/b4NFJCb9w
                    Evgenii Legotckoi
                    • 27 жовтня 2017 р. 05:02

                    1. Вам бы сначала базовые знания подтянуть по программированию на C++, а потом уже графиками заниматься. А то это минимальные основы, без которых нельзя заниматься программированием, а Вы сразу за подключение сторонней библиотеки в фрейморвке взялись, да ещё и колупаете пример с графиками японских свечей, которые используются-то только в биржевых терминалах. Почитайте статьи из раздела по C++ . А также какую-нибудь учебную литературу таких авторов как Прата, Лафоре, Страуструп.


                    Что касается конкретно вышего вопроса, то посмотрите в mainwindow.cpp и mainwindow.h метод makePlot().
                    Так вот... в заголовочном файле mainwindow.h есть объявление этого метода makePlot() , а в файле mainwindow.cpp уже дана реализация этого метода. Тоже самое сделайте и для метода setSomeVariable.

                    6. Нет в C++ скрипта, в каком значении Вы это применяете.... это компилируемый язык, а не интерпретируемый. И информация передаётся не между файлами, а между объектами классов.
                    Там не через количество свечек указывается, а через масштабирование по осям. Через метод scaleRange. Можно посчитать максимальный и минимальный диапазоны и отталкиваться от них.
                    7. Аналогично, через scaleRange, но по Оси Y.
                    8. ui->customPlot->xAxis->setTickLabels(true);
                      М
                      • 27 жовтня 2017 р. 09:33

                      1. Да, я увидел как makePlot() реализовано в mainwindow.cpp , но все же не понял как взять значения из main.cpp. Объясните пожалуйста как это написать? может быть нужно использовать return или делать ссылку на место хранение информации?
                      7. ui->customPlot->yAxis->QCPAxis::scaleRange( 2);- Делает масштаб больше или меньше при первой загрузке,  но при прокручивании графика масштаб не подстраивается под новые максимумы и минимумы.  ui->customPlot->yAxis->QCPAxis::scaleRange( 1,5); - Масштабирует относительно лишь выбранного элемента. Скажите пожалуйста, как сделать  автоматическое масштабирование относительно локальных максимума и минимума?
                      8. Но как присвоить для оси x каждому  элементу массива bar соответсвующий элемент массива Date и массива Time?
                        М
                        • 27 жовтня 2017 р. 11:28

                        7. Может быть поможет:

                        void QCPAbstractPlottable :: rescaleValueAxis ( )
                        или что то в этом роде? И скажите пожалуйста, как это записать.  ui->customPlot-> rescaleValueAxis (); выдает ошибку.
                          Evgenii Legotckoi
                          • 28 жовтня 2017 р. 07:04

                          1. Если Вам нужно передать в объект класса некоторую информацию и хранить её там, то нужно объявить переменную в объявлении этого класса, посмотрите в этой статье, как формируется класс в С++ .

                          2. Чтобы перемасштабировать график при скроллинге, нужно получить событие изменения размера или какого либо действия над виджетом графика. Но для этого нужно наследоваться от класса QCustomPlot и переопределить метод wheelEvent.
                          Но вся проблема в том, что Вы даже не знаете как объявить метод и написать реализацию, не говоря уже о том, чтобы наследоваться от другого класса.

                          Есть конечно вариант, что я всё напишу за вас. Только какой смысл? Если Вы всё равно ничего не поймёте.

                          Поэтому вот в этой статье есть пример наследования и переопределения метода mousePressEvent для QGraphicsItem . Делается аналогично и для wheelEvent, который сообщает о прокрутке колёсика мыши. Как только срабатывает wheelEvent, тогда и нужно делать перемасштабирование и перерисовку.

                          Давайте Вы разберётесь для начала с основами самого языка. Серьёзно, в противном случае это будет бесполезной тратой времени.
                            М
                            • 30 жовтня 2017 р. 07:41

                            Спасибо прочел классы. Но вопросы остались примерно теми же.

                            1. Скажите пожалуйста, как вызвать в файле mainwindow.cpp  объект w класса MainWindow, объявленного в файле  main.cpp
                            https://cloud.mail.ru/public/FUxM/b4NFJCb9w

                              М
                              • 30 жовтня 2017 р. 10:34

                              И еще загвоздка в том, что не совсем понятно взаимодействие классов и методов qcustomplot.

                              7. ui->customPlot->QCustomPlot :: wheelEvent() как я понял это функция должна реагировать на прокрутку колесика, не совсем понятно какое значение нужно ставить в скобки. Объясните пожалуйста?
                                Evgenii Legotckoi
                                • 30 жовтня 2017 р. 13:54

                                Как бы Вам объяснить.... внутри класса MainWindow, который объявлен в файле mainwindow.cpp, поэтому внутри методов класса MainWindow можно вызывать сразу метод... Вот как там вызывается метод makePlot(); , также можно вызывать любые методы..., только смысла нет в вызове метода через указание имени класса. Метод же не статический...

                                  Evgenii Legotckoi
                                  • 30 жовтня 2017 р. 13:55

                                  Переопределение метода не равно его вызову... Я вам кидал ссылку на статью по работе с QGrapihcsItem, где есть наследование и переопределение методов. Вам необходимо наследоваться от класса QCustomPlot и переопределить метод wheelEvent.

                                    М
                                    • 31 жовтня 2017 р. 03:43
                                    • (відредаговано)

                                    Я Вас не совсем понимаю. Я метод прописал в mainwindow.h. Мог этот метод прописать и в другом файле. Но это не влияет на его работоспособность, а как я понял так делают тля улучшения читаемости кода.  Вы сначала предложили объекту w присвоить передаваемое значение. Оно у него есть. Но как к нему обратиться из другого файла?

                                    Также не помогает прописывать extern MainWindow w ; в других файлах.

                                      Evgenii Legotckoi
                                      • 31 жовтня 2017 р. 04:50

                                      Напишите метод геттер для получения этого значения. значение возвращается через оператор return. Естественно с объявлением и реализацией для класса MainWindow.

                                      double getDouble()
                                      {
                                          return 12.5;
                                      }
                                      И опять повторяю, не используйте понятие файла относительно программирования на C++, здесь есть классы и объекты. Пока вы не поймёте, что файл в котором написан код и класс с объектом - это абсолютно разные сущности, у вас ничего не получится.
                                      В файле Вы пишите описание класса. В заголовочном файле его объявление, в файле исходных кодов его реализацию.
                                      Чтобы обратиться к какому либо объекту в другом месте кода, то есть в другом классе, нужно иметь инстанс этого класса, ссылку на него или указатель.
                                      extern MainWindow w вам не поможет поскольку вы применяете его явно не по назначению. Тем более не ясно в каком именно классе вы хотите его применить.
                                      В том, что Вы вызываете makePlot внутри класса MainWindow через указание того к каком классу относится метод, то есть так:
                                      MainWindow::makePlot() абсолютно не добавляет никакой читаемости кода, а только засоряет его лишней информацией. Так пишут вызовы методов только в следующих случаях:
                                      • Вызов метода базового класса в переопределённом методе
                                      • Вызов метода одного из базовых классов при множественном наследовании и наличии в обоих базовых классах методов с одинаковыми названиями, тогда нужно явно указать какой именно метод вызывается.
                                      • Вызов статического метода класса
                                      А то что вы это добавили, это лишняя информация. Всем и так понятно будет, откуда ноги растут у метода. Тем более, что при вызове большого количества методов класса от имени класса в глазах рябить будет. Такой код - плохой.

                                        М
                                        • 31 жовтня 2017 р. 04:50

                                        Но ведь метод wheelEvent  принадлежит классу QCustomPlot
                                        http://www.qcustomplot.com/documentation/classQCustomPlot.html#a7b8bd7e8d3a1d23a8595e9c6a6b76ef1

                                          Evgenii Legotckoi
                                          • 31 жовтня 2017 р. 04:53

                                          И что Вы этим хотели сказать? Я знаю что он принадлежит этому методу.

                                          Я уже  дважды сказал - НАСЛЕДОВАТЬСЯ от QCustomPlot и переопределить этот метод. Статью выше привёл, где есть пример наследования и переопределения метода. Изучайте.
                                          При наследовании и переопределении метода можно изменить поведение класса.
                                            М
                                            • 31 жовтня 2017 р. 04:59

                                            я описал гет функцию. но как вернуть значение w в другом файле? как обратиться к w?

                                            но зачем переопределять метод, если он и так в достаточной пере должен работать?

                                              Evgenii Legotckoi
                                              • 31 жовтня 2017 р. 05:04

                                              Да с чего вы решили, что он должен работать так, как вы этого хотите? Он всего лишь делает скролинг, и в него передаётся поворот колёсика мыши. Данный метод вызывается автоматически в стеке вызовов событий виджетов Qt, обычно эти методы вообще никогда не вызывают принудительно. Они вызываются сами. Это методы событий, которые отслеживаются приложением Qt. Поэтому эти методы переопределяют, чтобы добавить специальноен помедение. В вашем случае отслеживание находящихся на графике свечек для автоматического ресайза по вертикали.


                                              Обращаться в других классах и объектах так же, как вызывали сет функцию.
                                                М
                                                • 31 жовтня 2017 р. 05:13

                                                в main.cpp все работает :

                                                #include <QApplication>
                                                #include <cstdlib>
                                                
                                                
                                                long long n2=3;
                                                
                                                int main(int argc, char *argv[])
                                                
                                                {
                                                
                                                    QApplication a(argc, argv);
                                                    MainWindow w;
                                                    VarsHolder::GetHolder()->SetA(n2); //попытка передать данные
                                                    w.setCandleDate(n2);  //попытка передать данные
                                                    n2=w.getCandleDate();
                                                    w.show();
                                                    return a.exec();
                                                }
                                                а при вызове в mainwindow.cpp говорит :  ошибка: неопределенная ссылка на ' w `
                                                n1=w.getCandleDate();
                                                  Evgenii Legotckoi
                                                  • 31 жовтня 2017 р. 05:20

                                                  Наверное потому, что у вас нет этой ссылки в mainwindow.cpp. Всё правильно говорит. И extern тут не поможет. не пробовали вызывать метод без w. ?

                                                    М
                                                    • 31 жовтня 2017 р. 05:40

                                                    если делать так n1=getCandleDate (); то вылетает проект. Если делать #include "main.cpp", тоже выдает ошибки.Скажите пожалуйста, как же сделать ссылку на w?

                                                      Evgenii Legotckoi
                                                      • 31 жовтня 2017 р. 05:41

                                                      n1=getCandleDate(); - в каком месте кода вы это применяете?

                                                        М
                                                        • 31 жовтня 2017 р. 05:44
                                                        void MainWindow::makePlot()
                                                        {
                                                            long long n1=8;
                                                           // n1=getCandleDate(); 
                                                        
                                                          М
                                                          • 31 жовтня 2017 р. 05:45
                                                          long long n1=8;
                                                           n1=getCandleDate();
                                                          void MainWindow::makePlot()
                                                          
                                                            Evgenii Legotckoi
                                                            • 31 жовтня 2017 р. 05:56
                                                            • (відредаговано)

                                                            Ну и что это значит? Вызываете метод класса MainWindow в файле mainwindow.cpp за пределами класса MainWindow.
                                                            При этом думаете, что если увязать файлы через какой-нибудь extern с ссылкой на объект MainWindow , то всё должно видеться?

                                                            При этом переменная Mainwindow объявлена локально внутри функции main...

                                                            Вы вообще не понимаете, что делаете, и не пытаетесь понять. Вам следует взять какой-нибудь учебник по самым основам C++ и читать его от корки до корки. Всё равно Вы не слушаете, что я Вам говорю.
                                                              М
                                                              • 31 жовтня 2017 р. 06:16

                                                              В том то и беда что в учебниках таких примеров не нашел, потому и спрашиваю вас. Но вы к сожалению так и не сказали рабочего варианта((

                                                                Evgenii Legotckoi
                                                                • 31 жовтня 2017 р. 06:21

                                                                Проблема не в том, что я не написал вам рабочего варианта, а в том, что Вы не понимаете самых минимальных основ, которые есть во всех учебниках. Так что не перекладывайте свои проблемы с обучением на меня.
                                                                Даже в тех 11 статьях которые есть на сайте уже есть примеры с методами, областями видимости и перечислениями. Также есть тесты. Я предлагал Вам довольно прозрачные и разжёванные статьи. Возможно, программирование просто не про Вас.

                                                                  М
                                                                  • 31 жовтня 2017 р. 06:39
                                                                  • (відредаговано)

                                                                  Согласен,  программирование не для меня, но приходиться заниматься и этим.

                                                                  http://cppstudio.com/post/439/ тут нашел самое детальное описание классов. И там описываются варианты вызова метода класса.  Все варианты происходят через объект класса. И собственно у разных объектов разное значение  переменных. Отсюда следует что мне нужно узнать, как сделать ссылку на нужный мне объект класса. Об этом я вас прошу 2 дня, но вы почему-то не отвечаете на четкий вопрос. Если бы вы добавили детальность вашим статья, по типу ссылки, то было-бы замечательно для всех.
                                                                    Evgenii Legotckoi
                                                                    • 31 жовтня 2017 р. 07:24

                                                                    Нет у вас никакого чёткого вопроса. Вы говорите, что сделали объект в файле main.cpp в функции main, и пытаетсь обратиться к этом объекту в файле mainwindow.cpp. Но класс этого объекта описан в этом самом файле mainwindow.cpp, если вы что-то хотите сделать с переменной переданной внутрь объекта, то и делайте это внутри объекта, а не внутри файла, то есть делайте внутри методов . Абсолютно не ясно в вашем вопросе, в каком конкретно методе или месте кода вы пытаетесь это сделать.

                                                                    Каждый раз Вы прикладываете абсолютно разные куски кода, которые не показывают никакого смысла ваших действий. Я уже ответил, не нужно использовать ссылку на w, чтобы вызвать этот метод, нужно просто написать этот метод и возвращаемое значение приравнять переменной (ВНУТРИ МЕТОДА в классе, а не в любом месте кода где вам заблагоросудится). Если Вы этого даже не хотите понимать, то это ваша проблема.

                                                                    Невозможно ответить на вопрос, который задан непонятно как.

                                                                    По поводу детальности, статья не о том, что такое класс, или метод, или ссылка. А о том, как подключить библиотеку и запустить её в проекте. Я не обязан описывать каждую мелкую деталь в статье, которая будет непонятна человеку с вашим уровнем подготовки, Вы взялись за то, до чего Вам ещё далеко. Также, писать за Вас ваш код никто не будет.
                                                                      М
                                                                      • 01 листопада 2017 р. 06:29

                                                                      Оказалось передача данных работала, просто построение графика вызывал раньше этой передачи.

                                                                      Оказывается функция
                                                                      void QCPFinancial :: getVisibleDataBounds ( QCPFinancialDataContainer :: const_iterator & начать ,
                                                                        QCPFinancialDataContainer :: const_iterator & конец
                                                                       )  Const
                                                                      строит только ту часть графика, что видна в окне. Скажите пожалуйста, как воспользоваться этой функцией? Как в контейнер ввсести данные именно видимой части графика? Или в контейнер нужно вводить все данные графика?
                                                                       
                                                                      Скажите пожалуйста почему не получается наследовать от QCPFinancial
                                                                      #ifndef AUTOSCALE_H
                                                                      #define AUTOSCALE_H
                                                                      #include <QMainWindow>
                                                                      #include "qcustomplot.h"
                                                                      
                                                                      class AutoScale :public QCustomPlot//, public QCPFinancial//, public QCPAxis
                                                                      {
                                                                      public:
                                                                          AutoScale();
                                                                          void AllEvent(double);
                                                                      
                                                                      //private:
                                                                        //  double DateScale;
                                                                      };
                                                                      
                                                                      #endif // AUTOSCALE_H

                                                                       

                                                                        Коментарі

                                                                        Only authorized users can post comments.
                                                                        Please, Log in or Sign up
                                                                        AD

                                                                        C++ - Тест 004. Указатели, Массивы и Циклы

                                                                        • Результат:50бали,
                                                                        • Рейтинг балів-4
                                                                        m
                                                                        • molni99
                                                                        • 26 жовтня 2024 р. 01:37

                                                                        C++ - Тест 004. Указатели, Массивы и Циклы

                                                                        • Результат:80бали,
                                                                        • Рейтинг балів4
                                                                        m
                                                                        • molni99
                                                                        • 26 жовтня 2024 р. 01:29

                                                                        C++ - Тест 004. Указатели, Массивы и Циклы

                                                                        • Результат:20бали,
                                                                        • Рейтинг балів-10
                                                                        Останні коментарі
                                                                        ИМ
                                                                        Игорь Максимов22 листопада 2024 р. 11:51
                                                                        Django - Підручник 017. Налаштуйте сторінку входу до Django Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
                                                                        Evgenii Legotckoi
                                                                        Evgenii Legotckoi31 жовтня 2024 р. 14:37
                                                                        Django - Урок 064. Як написати розширення для Python Markdown Добрый день. Да, можно. Либо через такие же плагины, либо с постобработкой через python библиотеку Beautiful Soup
                                                                        A
                                                                        ALO1ZE19 жовтня 2024 р. 08:19
                                                                        Читалка файлів fb3 на Qt Creator Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
                                                                        ИМ
                                                                        Игорь Максимов05 жовтня 2024 р. 07:51
                                                                        Django - Урок 064. Як написати розширення для Python Markdown Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
                                                                        d
                                                                        dblas505 липня 2024 р. 11:02
                                                                        QML - Урок 016. База даних SQLite та робота з нею в QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
                                                                        Тепер обговоріть на форумі
                                                                        Evgenii Legotckoi
                                                                        Evgenii Legotckoi24 червня 2024 р. 15:11
                                                                        добавить qlineseries в функции Я тут. Работы оень много. Отправил его в бан.
                                                                        t
                                                                        tonypeachey115 листопада 2024 р. 06:04
                                                                        google domain [url=https://google.com/]domain[/url] domain [http://www.example.com link title]
                                                                        NSProject
                                                                        NSProject04 червня 2022 р. 03:49
                                                                        Всё ещё разбираюсь с кешем. В следствии прочтения данной статьи. Я принял для себя решение сделать кеширование свойств менеджера модели LikeDislike. И так как установка evileg_core для меня не была возможна, ибо он писался…
                                                                        9
                                                                        9Anonim25 жовтня 2024 р. 09:10
                                                                        Машина тьюринга // Начальное состояние 0 0, ,<,1 // Переход в состояние 1 при пустом символе 0,0,>,0 // Остаемся в состоянии 0, двигаясь вправо при встрече 0 0,1,>…

                                                                        Слідкуйте за нами в соціальних мережах