1. C++ / Говнокод #11457

    +7

    1. 1
    2. 2
    QRegion* region = new QRegion(*(new QRect(button->x()+5,button->y()+5,190,190)),QRegion::Ellipse);
    button->setMask(*region);

    Запостил: panter_dsd, 22 Июля 2012

    Комментарии (38) RSS

    • Блин, я один вечно читаю слово "region" как "religion"?
      Ответить
    • 1) Придание округлости извне попахивает делфизмом. Возможны проблемы при изменении размеров и т.п. Если бы мне понадобились подобные кнопки - я бы сделал отдельный виджет, порожденный от QPushButton или, возможно, описал бы стиль в QSS.
      2) Магические числа - стоило бы взять button->rect().adjusted(...) вместо захардкоженного размера.
      3) setMask принимает const QRegion& - new не нужен.

      int border = 5;
      button->setMask(QRegion(button->rect().adjusted(border, border, -border, -border), QRegion::Ellipse));
      Ответить
    • *(new QRect(button->x()+5,button->y()+5,190,190))

      А память кто освобождать будет?
      Ответить
      • Да чел всяко с явы или шарпика пришел. Вот и пишет new где попало...
        Ответить
      • http://govnokod.ru/11251
        Ответить
      • > А память кто освобождать будет?

        ОСь при закрытии приложения
        Ответить
        • Лучше при выключении питания. Нам же не тяжело раз в час перезагрузиться?
          Ответить
          • ПРИШЛО ВРЕМЯ ПЕРЕЗАГРУЖАТЬСЯ
            МНЕ НЕ ЛЕНЬ КАЖДЫЙ ЧАС ПЕРЕЗАГРУЖАТЬСЯ
            ОНО САМО ПО СЕБЕ НЕ ПЕРЕЗАГРУЗИТСЯ
            Я УСПЕШНЫЙ ЧЕЛОВЕК И ПОЭТОМУ КАЖДЫЙ ЧАС ПЕРЕЗАГРУЖАЮСЬ
            ОСВОБОЖДЕНИЕ ПАМЯТИ И УМНЫЕ УКАЗАТЕЛИ ДЛЯ НЕУДАЧНИКОВ
            Я ЖИВУ АКТИВНОЙ И ПОЛНОЦЕННОЙ ЖИЗНЬЮ - Я ПЕРЕЗАГРУЖАЮСЬ КАЖДЫЙ ЧАС
            Ответить
            • Похохочи вместе, например:
              Linux shared memory, will it be destroyed automatically?
              http://stackoverflow.com/questions/11508616/linux-shared-memory-will-it-be-destroyed-automatically
              Ответить
            • На самом деле, для этой цели надо встраивать вочдог, который будет перезагружать систему автоматически. Без участия человека!
              Ответить
              • Как линукс перезагружал виндовый сервер:
                Поставили рядом два СБ, на том что линукс, пинговал через некие интервалы виндовый,
                если ответа нет, башевый скрипт открывал лоток привода к которому был прикреплён
                то ли карандаш, то ли что другое и нажимал рейсет на виндовом СБ.
                Ответить
              • > На самом деле
                Чё-то не щёлкается.
                Ответить
                • Обнови libastral до версии 3.14.
                  Ответить
                  • У меня последняя - 6.66, опять откатывать!?
                    Ответить
                    • > откатывать
                      Закатывать...в асфальт.
                      Ставь из официальных репов стабильную и не пионерся с новизной.
                      А то не кликается у него, скажи ещё по ссылке не переходит!
                      Ответить
                      • Пф. Чтоб не переходило нужен браузер времён второй мировой.

                        Не знаю что за дебилы такими ещё пользуются.
                        Ответить
                • Не вижу, куку почистить уже советовали?
                  Ответить
          • и вилку вытащить, чтоб кондюки разрядились как следует
            Ответить
            • Не напоминайте про кондюки. Была тут история с гейзенбагом на одном терминале...

              Выдергиваешь питание, вставляешь обратно - перестают работать ethernet и rs-232. Выдергиваешь питание, считаешь до 20, вставляешь обратно - все ок...
              Ответить
              • >Не напоминайте про кондюки.
                попробуйте развидеть мой пост
                Ответить
              • >Не напоминайте про кондюки.

                У меня один полусдохший комп включался только после прогрева феном %)
                Ответить
                • >только после прогрева феном
                  строительным
                  Ответить
                  • лучше термофеном от паяльной станции, или в печь прогреться плате целиком
                    я так hp принтер реанимировал недавно
                    Ответить
                    • > в печь
                      В топку.

                      А вообще - хороший способ. Лечил подобным образом видюху.
                      Ответить
                      • а не пробовали пояс из собачьей шерсти прикладывать?
                        Ответить
                        • Снять радиатор, обмотать собачьей шерстью и включить на пару минут? А что, тоже идея. Должно отлично пропаяться.
                          Ответить
                        • на дискету 1.44 записать три раза "у ати боли, у нвидии боли, у интела боли, а у моей вуду три не боли", поставить защелку на запрет записи, обернуть в желудок овцы, перевязать конским волосом, закопать в безлунную полночь на кладбище под осиной, уйти не оборачиваясь
                          как дискетка сгниёт, так видеокарточка и заработает
                          Ответить
                          • А 5-ти дюймовой дискетой можно с ноута порчу снять?
                            Ответить
                            • только если ноут сам способен её записать
                              Ответить
                              • Надо на первый канал идти, передача будет по снятию зависания и изгнанию бсода.
                                Ответить
              • ну вы же программисты, вам что, сложно это исправить? (с)
                Ответить

    Добавить комментарий