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

Объекты Microsoft Visual Studio

Привет, можно ли создать объект, который будет работать как кнопка?

Потому что я делаю систему управления номерами для отеля, и менеджер хочет, чтобы я поместил графическое представление номеров. Я думаю, было бы удобно, если бы я создал объект, который представлял бы комнату, например (прямоугольник), потому что я думаю, что это слишком ужасно, если я помещу в него много кнопок. (это слишком больно в глазах).

Объект должен быть кликабельным, потому что когда пользователь щелкает или дважды щелкает его. Появится информация о комнате.

Большое спасибо...


  • Вы работаете над Windows Form, приложением WPF или чем-то еще? 30.08.2011
  • Используйте событие MouseDown. Вам нужно будет добавить код, который точно определяет, какая комната была нажата по координатам мыши. 30.08.2011

Ответы:


1

Да, это так. Все элементы управления (если они наследуются от Control< /a>, как и все элементы пользовательского интерфейса) имеют Click-Событие, на которое вы можете зарегистрироваться, чтобы получать уведомления при нажатии на него.

Если вы скажете мне, используете ли вы WinForms или WPF, я могу привести вам пример рисования пользовательского объекта clickabel.

30.08.2011

2

Вы можете либо просто установить размер кнопки для представления комнаты, либо вы можете поймать событие Click любого элемента, который вы хотите использовать для представления комнаты, например Panel.

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

public class Room : Panel {

  // perhaps something to keep track of what room it is
  private int _id;

  // a constructor that sets the data that you need
  public Room(int id) {
    _id = id;
  }

  protected override OnClick(EventArgs e) {
    // here you can handle the click
  }

}
30.08.2011

3

Вы создаете объект, который будет наследоваться от Control, и выполняете пользовательский код рисования, используя System.Drawing. Это довольно простая задача. С Control вы подвергаетесь регулярным событиям, таким как MouseDown, MouseUp, MouseEnter, MouseLeave, OnPaint, PaintBackground. Это события, которые вам понадобятся, если вы добавите эффекты.

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

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

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

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

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

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

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

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