Nano Hash - криптовалюты, майнинг, программирование

Формы Windows перемещают форму с любой панели (с установленной границей нет)

Я установил границу в форме на null/none, поэтому теперь я не могу переместить форму. Итак, я нашел этот код, который не срабатывает, потому что вся моя форма состоит из панелей:

    private bool dragging = false;
    private Point dragCursorPoint;
    private Point dragFormPoint;

    private void HomeScreen_MouseDown(object sender, MouseEventArgs e)
    {
        dragging = true;
        dragCursorPoint = Cursor.Position;
        dragFormPoint = this.Location;
    }

    private void HomeScreen_MouseMove(object sender, MouseEventArgs e)
    {
        if (dragging)
        {
            Point dif = Point.Subtract(Cursor.Position, new Size(dragCursorPoint));
            this.Location = Point.Add(dragFormPoint, new Size(dif));
        }
    }

    private void HomeScreen_MouseUp(object sender, MouseEventArgs e)
    {
        dragging = false;
    }

Событие мыши формы HomeScreen не срабатывает, потому что форма заполнена панелями. Так что каким-то образом я должен связать клики панели с кликами формы (событие мыши). Есть ли способ сделать это, чтобы я мог перемещать свою форму из любого места?


  • Используйте точный код этого ответа и обработайте событие MouseDown всех панелей, используя тот же метод, что и в ответе. 24.06.2016
  • Ну, просто используйте еще одну панель. Прикрепите его к верху, сделайте его высотой около 30 пикселей, придайте ему отчетливый цвет. Вы можете нарисовать описание окна, возможно, нарисовать X. И теперь и вы, и ваш пользователь будете знать, как перемещать окно. 24.06.2016
  • Сделал, работает, извините за дубликат 24.06.2016

Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..