1. Pascal / Говнокод #21911

    +3

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    procedure TaQuoteReestr.gSearchResultKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
    begin
      inherited;
      if (ssctrl in Shift) and ((Key = ord('C')) or (ord(Key) = ord('c')) or (Key = ord('С')) or (ord(Key) = ord('с'))) then 
        gSearchResultDblClick(Sender);
    end;

    Не удержался... это же чем должна быть забита голова, чтобы так писать.
    Тут копирование (gSearchResultDblClick) некоего набора данных происходит по двойному клику (!) на строке грида. И оно же продублировано по Ctrl+C. Естественно, что когда на двойной клик повесили более адекватное действие: вход в режим редактирования — копирование отвалилось.
    Особенно радует обработка клавиши. Последовательно проверяется заглавная и строчная буква английского и русского алфавитов. При этом почему-то забыты Греция, Габон, Гондурас... и все остальные.

    Запостил: RoschinSpb, 28 Декабря 2016

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

    • @((Key = ord('C')) or (ord(Key) = ord('c')) or (Key = ord('С')) or (ord(Key) = ord('с'))
      Очень опасно так делать. Нужно по коду символа.

      Я знаю, откуда этот код.
      Ответить
      • Нужно по коду символа.
        Я даже больше скажу, вообще так не надо делать. Можно создать действие TAction, или TEditCopy и задать ShortCut.
        Да это из проги для работы с БД и предполагается, что будет работать в нескольких странах. Не уверен, что конкретно в Гондурасе...
        Ответить
    • А нафиг эта прога нужна в Греции, Габоне и Гондурасе? У них один фиг свои законы и свои формы документов...
      Ответить
      • Этот кодец явно из какой-то медицинской проги, очевидно, клиентское приложение для работы с базами данных. Проги такого назначения почему-то все поголовно пишут на сиплюсном билдере либо делфях (реже). И всё же, у кого-то ещё хватает наглости заявлять, что Борланд мертв... Каково бы было писать такую громадину на MSVC?
        Ответить
        • показать все, что скрыто> все поголовно пишут
          Скорее поддерживают, чем пишут. В те годы, когда эти проги начинали писать - делфи и билдер были вполне актуальны.
          Ответить
          • Ну я вот исследовательского плана прогу пишу на Билдере. Потому что она работает с датчиком угла поворота, либа для которого официально поддерживает либо Билдер, либо старые версии студии.
            Да, можно было бы портировать, или даже полюбиться с P/Invoke и запилить программу на C# (а то и вообще сделать плагин к Питону). Но в чем выигрыш? Дотнет за собой таскать? Билдер с задачей справляется, exe-шник небольшой (даже если отключить всю динамическую линковку). Да, велосипеды приходится писать на каждом шагу, потому что многие современнные либы на него портировать сложно. Но с другой стороны, есть же и научная сторона вопроса. Можно сослаться на использованные алгоритмы, тиснуть статейку-другую вместо "использовал либу такую-то, хз как оно работает"...
            В итоге если прибор пойдет в серию (а переделывать программу специально вряд ли будут), появится еще одно живое ископаемое. Кому-то потом поддерживать придется.

            P.S.: хз зачем я это всё написал, просто накипело наверное.
            Ответить
            • > Кому-то потом поддерживать придется.
              Вот жеж ты пидор.
              Ответить
            • показать все, что скрыто>>Дотнет за собой таскать?
              а билдеровый рантайм таскать не надо?

              дотнет есть во всех современных виндах
              Ответить
              • У билдера нет распространяемого рантайма.
                Ответить
                • орлы?
                  там всё статически линукется?
                  Ответить
                  • Сдаётся мне, что ты 3_14 дар. Я давно это подзревал, а теперь уверен в этом. Иди нахуй, выродок.
                    Ответить
                  • > там всё статически линукется
                    Насколько помню, у билдера была опция, чтобы всё (экзешник + дллка рантайма + BPL-пакеты) слепить в единый копролит.
                    Ответить
                    • показать все, что скрытоа против чего работает эта либа?
                      Правильно: против вин32 апи, который есть на каждой винде

                      а так же на каждой винде есть .NET
                      так что дельфист сказал глупость в очередной раз
                      Ответить
                      • На любой? Срсли? За 11-ю ответишь?

                        Чем меньше внешних зависимостей - тем лучше.
                        Ответить
                        • >>На любой? Срсли? За 11-ю ответишь?
                          11-ю что?

                          >>Чем меньше внешних зависимостей - тем лучше.
                          Пиши тогда под машину без операционки, зачем тебе от нее зависеть?
                          Ответить
            • > вместо "использовал либу такую-то, хз как оно работает"
              Дык ты и "использовал либу такую-то, х.з. как оно работает"... Причём ради этой либы обрёк себя и последователей на вечную копрофилию и велосипедостроение...
              Ответить
              • Ну ты не путай теплое с мягким. Железяка и способ общения с ней - это, что называется, дано.
                А я про библиотеки мат.обработки и т.п. Ту же производную численно посчитать - целая наука. Х_Х
                Ответить
            • Любая железка имеет протокол. Если дельфин 15 лет назад смог написать для неосиляторов либу, значит и ты сможешь. На современных инструментах и технологиях.
              Ответить
              • Только если протокол недокументированный, а либа проприетарная - это та ещё боль.
                Ответить
                • Значит, обращаешься к вендору. Ты же софт ебана пишешь официальный, а не лабу чтобы сдать и забить хуй. Ты же сам и заинтересован должен быть.
                  Бесит меня такое отношение.

                  Еще небось автор сейчас придет хныкать "ну я простой разраб, сказали копать я копаю, сказали не копать, я не копаю". Когда всем насрать, и результат соответствующий.
                  Ответить
                  • > обращаешься к вендору
                    Судя по "либо Билдер, либо старые версии студии" есть вероятность, что вендор давным-давно ушёл в закат.
                    Ответить
                    • Как тогда оно пойдет в серию? Нет. Вендор есть.
                      Мне больше нечего добавить.
                      Налицо проблема отечественной научной школы. Уже писал об этом полгода назад
                      Всем насрать и все дрочат.
                      Только редкие гранты распиливают руками непрофессионалов.
                      Ответить
                      • Ну так то да, вендор всяко пойдёт навстречу, если почует серию.

                        З.Ы. А если либа сишная, а не крестовая - то "для старой версии студии" вполне взлетает и на новой.
                        Ответить
              • Ещё встречаются замечательные книжки с головоломками даташиты от наших восточных друзей. В
                этих манускриптах даже иероглифы в индексах у формул попадались :3
                Ответить
              • Ну да, можно отреверсить протокол. Устройство работает как USB HID, насколько я знаю, и структура пакетов примерно известна (хотя фз как насчет инициализации). Можно было заморочиться с P/Invoke и юзать либу из-под шарпа. Вендор тоже жив, любой каприз... за ваши деньги, разумеется.
                Только это всё деньги и/или время. А под Билдер я могу написать здесь и сейчас, и заработает даже на старой машинке. По хорошему-то надо бы портировать это дело под студию поновее, да. Хоть велосипеды можно будет выкинуть.
                Ответить
                • обычно даташит на протокол не рецепт соуса полковника сандерса, а реализация протокола поставляется вендором как фаст старт (ну и по совместительству вендор мог этой реализацией и свои утилиты накормить, так что двух зайцев) - как раз по той самой причине, что тебе, вдруг, могут нахуй не упереться эти 32-битные bpl файлы, написанные студентом с анальным блокирующим обменом по последовательному интерфейсу, а тебе, к примеру, на 64-битном пердоликсе "астра-питух смоленск" надо взлетать

                  да, и то, и другое вендором поставляется обычно на принципах NDA, просто не надо ссать с ним общаться

                  более того, надо поманить его баснословными прибылями и отгрузками его железки сотнями баррелей - пусть ещё и поддержку оказывает на этапе ОКР, а там и доработку под твой частный случай - всем должно быть удобно
                  Ответить
          • Именно пишут. Будущее за визуальными средами (взять хотя бы старый, но до сих пор популярный Delphi 7). Программист баз данных ведь тоже человек, ему неохота велосипедить и травить себе душу MFC писать гуй с нуля. Хочется готовых контролов, решений и стандартных либ.
            Согласитесь, С++ давно перестал себя оправдывать, стал сложнее асма.
            Ответить
            • >>травить себе душу MFC писать гуй с нуля. Х

              Стертор, как там, в 2002-м году?
              В гугл: WPF, ADO.NET, Binding.

              >>С++ давно перестал себя оправдывать, стал сложнее асма.
              Видимо ты ни С++ ни асма не знаешь. Асм очень просто язык, просто очень не выразительный и не переносимый
              Ответить
            • > Хочется готовых контролов, решений и стандартных либ
              Делфи/билдер хотя бы в новых версиях научились по-человечески формы дизайнить? Или до сих пор кнопки по углам гвоздями прибитые, а от 150% масштаба в винде всё пидорасит? :)
              Ответить
              • @по углам гвоздями прибитые,
                Всё давно кладётся на герметик.
                Ответить
              • >а от 150% масштаба в винде всё пидорасит? :)
                В винде все пидорасит от масштаба. Начиная с того, что прыщелис нельзя заставить показывать картинки в 100% по умолчанию а увеличивать только текст и заканчивая тем, что инсталляторы не работают потому что в них не видно кнопок/полей.
                Ответить
        • зачем msvc, когда уже давно все можно на C#?
          Ответить
          • Да можно хоть на стенах туалета писать на assembler :o)
            Ума-то это не добавит.
            Ответить
            • :O) c===3
              :O) c===3
              :O) c===3
              :O)c===3
              :Oc===3
              :C===3
              :C==3
              :C=3
              :C3
              :3
              Ответить
              • :-) c===3
                :O c===3
                :Oc===3
                :Cc===3
                :C===3
                :C==3
                :C=3
                :C3
                :8
                :0
                :-)
                :-b
                :-P
                :-)
                Ответить
                • :-E c===3
                  :O c===3
                  :Oc===3
                  :Cc===3
                  :C===3
                  :C==3
                  :C=3
                  :C3
                  :0😨
                  :0👨‍👨‍👧‍👧
                  :0🚑
                  :0🚒🚒
                  :0🌛
                  :0🌎
                  :0🌞
                  ;-E
                  Ответить
                  • вот тебе суп
                    из семи залуп

                    три покрошено,
                    четыре так брошено
                    Ответить
          • Покажи хоть одну живую, популярную базу на c#...
            А значешь, почему нету? Потому, что C# - дерьмо.
            Ответить
            • Я не очень понимаю что такое "база на C#".
              Скорее всего ты просто сказал глупость, потому что судя по фразе "C# дерьмо" ты не очень умеешь в программирование.
              Ответить
              • Если баяны и аккордеоны, раздув меха, начнут распространяться о том, какой простой и прозрачный язык ассемблер, мне, ясен перец, нечего делать в кодинге.
                Под "базой" я подразумевал клиентское приложение для работы с БД.
                Ответить
                • >> мне, ясен перец, нечего делать в кодинге.
                  да это и так понятно

                  >>Под "базой" я подразумевал клиентское приложение для работы с БД.
                  Так такого на C# дохуя, уж всяко больше чем на дельфи в 2016-м году
                  Ответить
                  • >>> мне, ясен перец, нечего делать в кодинге.

                    А тебе нечего делать здесь. Скройся.
                    Ответить
                    • сам с собой споришь?
                      Ответить
                      • Да
                        Ответить
                        • Хоть Вы не уподобляйтесь багру... Я надеюсь на Вас.
                          И на баяне хватит играть.
                          Ответить
                          • Простите, стадный инстинкт очень силён. Иногда не сдерживаюсь, что нехорошо.
                            Ответить
                    • вот тебе суп
                      из семи залуп

                      три покрошено,
                      четыре так брошено
                      Ответить
                      • Совсем не плохо, в следующий раз бросай так, люблю грызть-кусать-покусывать. З.Ы. где берешь сей продукт?
                        Ответить
                        • Из конфиската с задержанной фуры:
                          http://sobesednik.ru/obshchestvo/20141122-kak-tonny-bychih-penisov-zaderzhannyh-na-granice-s-belorussi
                          Ответить
                          • как ты такое находишь?
                            Ответить
                            • А что, срочно нужны бычьи запчасти для супа?
                              Ответить
                              • >>непромаркированным

                                ..а для науки занимался
                                классификацией уёв..
                                (с)
                                Ответить
                                • Уже представил себе фуру, в которой на «суповых наборах» клейма: шептунчик, целочник, глотарь, убивец, бивень, хоботарь.
                                  Ответить
                      • что будет, если в унитаз поезда на полном ходу бросить багор
                        Ответить
                        • Ширина колеи в РФ 1520...1524 мм, в Центральной Европе 1435 мм. Ширина вагона в РФ ≈3500 мм, в Центральной Европе ≈3100 мм (в Японии тот же габарит при ширине колеи 1067 мм).

                          К чему это я? Вагон слева и справа нависает на (3500 - 1520) / 2 = 990 мм в РФ и на (3100 - 1435) / 2 = 832,5 мм в Центральной Европе. Даже если европейский вагон едет по российскому пути, свешивание с каждой стороны будет по (3100 - 1520) / 2 = 790 мм. Унитаз обычно находится у наружной стены вагона, значит, багор наверняка высунется с наружной стороны от рельса и скатится по насыпи.
                          Ответить
                          • Когда инженеры спросили Государя Императора делать-ли им колею как в Европе и сделать её по больше, Государь ответил: "да нахуй больше?"

                            С тех пор колея в России шире европейской
                            Ответить
                            • 85 см хуй? Традиции подлизываться в парашке стары.
                              Или хуй это пол хуйла? Тогда все сходится.
                              Ответить
                              • Сём, я не готов спорить с тобой на тему буёв, ты их явно больше меня в жизни повидал.
                                Ответить
                              • У паровоза Черепановых ширина колеи была в 2 аршина и 5 вершков, то есть 1645 мм. Позже эту линию разобрали и перешли на колею в 5 футов = 60 дюймов = 1524 мм.

                                Итого хуй = 1645 - 1435 = 210 мм = 21 см, что совпадает с длиной волны излучения нейтрального водорода.
                                Ответить
                                • Не просто нейтрального, а ещё и триплетного.
                                  Ответить
                                • P.S. Я ещё забыл про Царскосельскую ж/д. До 1902 года у неё была ширина колеи 1829 мм, что на 394 мм = 39,4 см шире европейской.
                                  Ответить
                                  • >> Я ещё забыл про Царско
                                    >>39,4 мм
                                    Вероятно, это тонкая оптимизация. При массовом выпуске вагонов и расстояниях как от Петербурга до Владивостока это может дать определенный экономический выигрыш
                                    Ответить
                                    • Это может дать выигрыш при больших объёмах перевозок и на больших скоростях.

                                      У японцев стандартная колея 1067 мм, однако, на скоростных магистралях используется бо́льшая ширина (например, европейская в 1435 мм), потому что с узкой колеи на большой скорости вагон может опрокинуться.

                                      Если бы в во время эксплуатации Царскосельской дороги использовались большие скорости или если бы объём перевозок был большим, её не стали бы перешивать на более узкую. Однако, для условий того времени (рубеж XIX-XX вв.) такая ширина приводила к нецелесообразному™ расходу материалов.
                                      Ответить
                              • > 85 см
                                8.5см же
                                Ответить
                          • Это лом высунется и скатится. А у багра ведь есть крюк...
                            Ответить
                            • Ну это смотря какой багор. Может зацепиться, а может и скатиться.
                              Ответить
                              • Ох и бурное же сегодня обсуждение. Предпраздничное.
                                Похоже, только у bakaмногабукав есть семья.
                                Ответить
                                • А вдруг кто-то обсуждает багры вместе с семьёй? Представляете, семья какого-нибудь говнокодера собралась перед монитором и ржёт над нами?
                                  Ответить
                                  • бросьте, тут же все хикки-задроты
                                    Ответить
                                  • Семья обсуждает багры мудостертора? Разве что малолетние долбоебы-детишки какие-нибудь.
                                    Ответить
                                • конечно, он же джаваскриптер
                                  если бы он был программистом, как мы все, то у него не было бы семьи
                                  Ответить
                                  • >программистом, как мы все
                                    Не надо обобщать. Не все программисты, как вы все.
                                    А ты вообще прыщеблядь эникейная. Тут ноулайф запрограммирован.
                                    Ответить
                                    • >>Не надо обобщать. Не все программисты
                                      не хотел тебя обидеть, извини
                                      Ответить
                                      • Я тоже непрограммист. Я сюда просто погреться пришёл.
                                        Ответить
                                      • Цитируй полностью, залупа
                                        >Не все программисты, как вы все.
                                        Или даеж так
                                        >Не все программисты, как "вы все".
                                        Ответить
                                • slowpoke.jpg

                                  а? што?
                                  Ответить
                                  • Ну, все активно что-то обсуждали, а Вас всё не было.
                                    Ответить
                            • У типичного багра рукоятка деревянная, так что ничего интересного не произойдёт в принципе.
                              Ответить
                              • Рукоятка разлетится в щепки и выбъет глаз опу. Будет так интересно, что даже в новостях напишут.
                                Ответить
                            • Какой крюк :)
                              Ответить
    • А не использовать ли нам bbcode?
      Ответить

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