Вход на сайт
Вопросы по ПЛК
708 просмотров
Перейти к просмотру всей ветки
в ответ uscheswoi_82 30.01.24 04:05
А как бы это выглядело на C#? Вот простой пример:
Код Program.cs:
using System;
namespace Aufzug2 {
class Program {
// Метод срабатывает, когда происходит срабатывание события
public static void MyAufzugEvent(object sender, AufzugMove e) {
Console.WriteLine("Der Aufzug befindet sich auf " + e.etage + " Etage."); // Отображаем Der Aufzug befindet sich auf ..- Etage.
}
public static void Main(string[] args) {
var aufzug = new Aufzug(); // Наш лифт
aufzug.AufzugMoveEvent += MyAufzugEvent; // Обработчик событий
aufzug.Move(1); // Посылаем лифт на 1-й этаж
Console.ReadLine(); // Ожидаем назжатия клавиши Enter/Return
}
}
}
Код AufzugGeraet.cs:
using System;
public class AufzugMove : EventArgs {
public int etage { get; set; }
}
public interface IMyInterface {
event EventHandler<AufzugMove> AufzugMoveEvent;
}
public class Aufzug : IMyInterface {
public event EventHandler<AufzugMove> AufzugMoveEvent;
public void Move(int etage) {
AufzugMoveEvent.Invoke(this, new AufzugMove { etage = etage });
}
}Для задержки лифта, имхо можно было бы в принципе использовать Thread.Sleep.
Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнении
Моя ФЛ Он и Она
Моя ФЛ Он и Она