Си диез / Говнокод #12227 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
private void FlowMouseEnter(object sender, MouseEventArgs e)
{
    var dt = DateTime.Now;
    _currentTime = dt.Hour * 3600 + dt.Minute * 60 + dt.Second;
}

запоминаем время наведения на кнопку

Запостил: ArtFeel ArtFeel, (Updated )

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

  • Ну и там дальше:
    private void FlowMouseLeave(object sender, MouseEventArgs e)
    {
        _currentTime = -1;
    }
    
    private void FlowMouseMove(object sender, MouseEventArgs e)
    {
        var dt = DateTime.Now;
        int tmpTime = dt.Hour * 3600 + dt.Minute * 60 + dt.Second;
    
        if (tmpTime - _currentTime > 1) { … }
    }
    Ответить
  • Лепота. =) Сразу вспомнил про легендарный эпический говнокод:
    function getTomorrowDate() { sleep(86400); return strftime("%D"); }
    Ответить
  • Разумеется, в полночь никто программу не запустит...
    Ответить
      • Тем, что если FlowMouseEnter произойдет в 23:59:59 то tmpTime никогда не сможет стать больше _currentTime (до выхода мышки за пределы, конечно).

        P.S. Но всем похер, т.к. вероятность бага очень низка, а после выхода мышки за пределы Flow баг пройдет.

        P.P.S. Не понимаю, нахрена нужны эти извращения, просто сохранить DateTime.Now без этих быдлотрансформаций не получится? 😉

        P.P.P.S. Еще баг - если навести мышку на Flow и не двигать ее - код помеченный многоточием не сработает...
        Ответить
  • а что там делается при выполнении условия? очень плавная анимация?
    Ответить
    • Это задержка в одну секунду, после которой выполняется логика клика на кнопку.
      Ответить
      • А sleep() тут не катит? Или он все приложение повесит?
        Ответить
        • Имеется ввиду что клик произойдет если держать курсор на кнопке в течении секунды.
          А не то что клик произойдет спустя секунду после наведения.
          Ответить
          • > держать курсор на кнопке в течении секунды

            Теперь понял, но зачем?
            Ответить
            • Наверное, это кнопка вызова лифта в старом многоэтажном доме.
              Ответить
            • Это, что-то вроде CowerFlow, подводишь к краю, и оно скролится.
              Ответить
            • Нужно, чтобы действие выполнялось за секунду до нажатия кнопки.
              Ответить
          • Если быть точным - клик произойдет, если спустя секунду после наведения пошевелить мышью. А если просто держать - не сработает.
            Ответить
    • 1) А в шарпе есть Time? Я не знаток шарпа, но мне кажется, что нет.
      2) DateTime тут уместней, т.к. не сбрасывается в полночь, а вычитать их друг из друга можно и без извращений, приведенных в коде.
      Ответить
        • К тому же общее кол-во секунд можно узнать через DateTime.TimeOfDay.TotalSeconds вместо этого адского перемножения.
          Ответить

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

Где здесь C++, guest?!

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


    8