Школоло / Говнокод #21911 Ссылка на оригинал

0

  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 RoschinSpb, (Updated )

Комментарии (100) 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% по умолчанию а увеличивать только текст и заканчивая тем, что инсталляторы не работают потому что в них не видно кнопок/полей.
              Ответить
        • Да можно хоть на стенах туалета писать на assembler :o)
          Ума-то это не добавит.
          Ответить
              • :-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-м году
                Ответить
                • >>> мне, ясен перец, нечего делать в кодинге.

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

                    три покрошено,
                    четыре так брошено
                    Ответить
                    • Совсем не плохо, в следующий раз бросай так, люблю грызть-кусать-покусывать. З.Ы. где берешь сей продукт?
                      Ответить
                    • что будет, если в унитаз поезда на полном ходу бросить багор
                      Ответить
                      • Ширина колеи в РФ 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 вв.) такая ширина приводила к нецелесообразному™ расходу материалов.
                                    Ответить
                        • Это лом высунется и скатится. А у багра ведь есть крюк...
                          Ответить
                          • Ну это смотря какой багор. Может зацепиться, а может и скатиться.
                            Ответить
                            • Ох и бурное же сегодня обсуждение. Предпраздничное.
                              Похоже, только у bakaмногабукав есть семья.
                              Ответить
                              • А вдруг кто-то обсуждает багры вместе с семьёй? Представляете, семья какого-нибудь говнокодера собралась перед монитором и ржёт над нами?
                                Ответить
                                • Семья обсуждает багры мудостертора? Разве что малолетние долбоебы-детишки какие-нибудь.
                                  Ответить
                              • конечно, он же джаваскриптер
                                если бы он был программистом, как мы все, то у него не было бы семьи
                                Ответить
                                • >программистом, как мы все
                                  Не надо обобщать. Не все программисты, как вы все.
                                  А ты вообще прыщеблядь эникейная. Тут ноулайф запрограммирован.
                                  Ответить
                                  • >>Не надо обобщать. Не все программисты
                                    не хотел тебя обидеть, извини
                                    Ответить
                                    • Цитируй полностью, залупа
                                      >Не все программисты, как вы все.
                                      Или даеж так
                                      >Не все программисты, как "вы все".
                                      Ответить
                                • Ну, все активно что-то обсуждали, а Вас всё не было.
                                  Ответить
                          • У типичного багра рукоятка деревянная, так что ничего интересного не произойдёт в принципе.
                            Ответить
                            • Рукоятка разлетится в щепки и выбъет глаз опу. Будет так интересно, что даже в новостях напишут.
                              Ответить
          • >Покажи хоть одну живую, популярную базу на c#...


            ты что, ебанутый блядь?
            Ответить
            • >Покажи хоть одну живую, популярную базу на c#...

              СКОТОБАЗА
              Ответить
            • кстати LiteDB, RavenDB будь она проклята, FASTER, если его можно базой назвать
              Ответить

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

Я, guest, находясь в здравом уме и твердой памяти, торжественно заявляю:

    А не использовать ли нам bbcode?


    8