Всплывающее окно при заморозке инстанса

Twomain

Client
Регистрация
21.07.2019
Сообщения
44
Благодарностей
7
Баллы
8
Добрый вечер, подскажите плиз, возможно ли как-то при заморозке инстанса вызвать поле для записи, чтоб туда написать данные и в дальнейшем сохранить результат инстанса с этими данными?
 

Koqpe

Client
Регистрация
23.12.2014
Сообщения
1 100
Благодарностей
649
Баллы
113
Что такое заморозка инстанса?
А так да, можно, по какому то событию, например появлению надписи или блока/элемента, вызываешь форму с нужными полями, заполняешь их, сохраняешь в переменные проекта которые сохраняешь в свою очередь в профиль.
Все поля и имя переменных переименуй по своему
C#:
//Получаем номер телефона
System.Windows.Forms.Form F = new System.Windows.Forms.Form();
F.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
F.BringToFront();
F.Text = "Введите номер телефона";

System.Windows.Forms.Label Labelf= new System.Windows.Forms.Label();
Labelf.Text = "Номер БЕЗ +7";
//указываем местоположение
Labelf.Location = new System.Drawing.Point(100,20);
// добавляем его на форму
F.Controls.Add(Labelf);

//создаем текстбокс
System.Windows.Forms.TextBox textb = new System.Windows.Forms.TextBox();
//указываем местоположение
textb.Location = new System.Drawing.Point(50,50);
//так же можно указать размеры текстбокса
textb.Width=200;
// добавляем его на форму
F.Controls.Add(textb);

//создаем кнопку
System.Windows.Forms.Button button = new System.Windows.Forms.Button();
//задаем имя чекбоксам
button.Text = "Сохранить";
//положение в окне
button.Location = new System.Drawing.Point(100,85);
//размер кнопочки
button.Size=new System.Drawing.Size(75, 25);
//кидаем на форму
F.Controls.Add(button);
//описываем событие для клика по кнопке
button.Click+= delegate(object sender, System.EventArgs e)
{
        //говорим в какую переменную положить
        project.Variables["Telefon"].Value = textb.Text;
        F.Dispose(); //Dispose – это уничножение объекта. Есть аналог Close, но Dispose //выгрузит форму из памяти
};
//отправка по enter
F.AcceptButton= button;
//запускаем форму
F.ShowDialog();

return 0;
Код вставлять в кубик "Свой код c#", переменная проекта "Telefon" должна быть создана за ранее.
 
Последнее редактирование:
  • Спасибо
Реакции: Twomain

Twomain

Client
Регистрация
21.07.2019
Сообщения
44
Благодарностей
7
Баллы
8
Что такое заморозка инстанса?
А так да, можно, по какому то событию, например появлению надписи или блока/элемента, вызываешь форму с нужными полями, заполняешь их, сохраняешь в переменные проекта которые сохраняешь в свою очередь в профиль.
Все поля и имя переменных переименуй по своему
C#:
//Получаем номер телефона
System.Windows.Forms.Form F = new System.Windows.Forms.Form();
F.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
F.BringToFront();
F.Text = "Введите номер телефона";

System.Windows.Forms.Label Labelf= new System.Windows.Forms.Label();
Labelf.Text = "Номер БЕЗ +7";
//указываем местоположение
Labelf.Location = new System.Drawing.Point(100,20);
// добавляем его на форму
F.Controls.Add(Labelf);

//создаем текстбокс
System.Windows.Forms.TextBox textb = new System.Windows.Forms.TextBox();
//указываем местоположение
textb.Location = new System.Drawing.Point(50,50);
//так же можно указать размеры текстбокса
textb.Width=200;
// добавляем его на форму
F.Controls.Add(textb);

//создаем кнопку
System.Windows.Forms.Button button = new System.Windows.Forms.Button();
//задаем имя чекбоксам
button.Text = "Сохранить";
//положение в окне
button.Location = new System.Drawing.Point(100,85);
//размер кнопочки
button.Size=new System.Drawing.Size(75, 25);
//кидаем на форму
F.Controls.Add(button);
//описываем событие для клика по кнопке
button.Click+= delegate(object sender, System.EventArgs e)
{
        //говорим в какую переменную положить
        project.Variables["Telefon"].Value = textb.Text;
        F.Dispose(); //Dispose – это уничножение объекта. Есть аналог Close, но Dispose //выгрузит форму из памяти
};
//отправка по enter
F.AcceptButton= button;
//запускаем форму
F.ShowDialog();

return 0;
Код вставлять в кубик "Свой код c#", переменная проекта "Telefon" должна быть создана за ранее.
Заморозка инстанса я имею ввиду кубик "Ожидание действий пользователя". Попробовал ваш код и понял что он замораживает инстанс, но подскажите пожалуйста, как сделать чтоб при выполнение этого кода инстанс отображался?
 

Koqpe

Client
Регистрация
23.12.2014
Сообщения
1 100
Благодарностей
649
Баллы
113
как сделать чтоб при выполнение этого кода инстанс отображался?
Или сразу в зеннопостере правой кнопкой мыши на шаблоне "Показать/скрыть инстансы", но если работаешь в многопотоке нужно будет в форму выводить id инстанса, что бы знать форма от какого потока "выскочила" или сначала в шаблоне ставь кубик "Ожидание действий пользователя", а следующий кубик вывода формы, инстанс "заморозился", ты запомнил нужные данные нажал кнопку продолжить выскочила форма ввел данные.
 

Dr.Pipetka

Client
Регистрация
12.12.2017
Сообщения
1 240
Благодарностей
806
Баллы
113
Заморозка инстанса я имею ввиду кубик "Ожидание действий пользователя". Попробовал ваш код и понял что он замораживает инстанс, но подскажите пожалуйста, как сделать чтоб при выполнение этого кода инстанс отображался?
Первой строкой в код выше:
C#:
System.Threading.Tasks.Task.Run(() => {instance.WaitForUserAction(1);});
 
  • Спасибо
Реакции: Twomain

Twomain

Client
Регистрация
21.07.2019
Сообщения
44
Благодарностей
7
Баллы
8
Первой строкой в код выше:
C#:
System.Threading.Tasks.Task.Run(() => {instance.WaitForUserAction(1);});
Спасибо, а подскажите пожалуйста можно ли увеличить размер бокса до 32 символов или больше? сейчас он 16
C#:
System.Windows.Forms.Label Labelf= new System.Windows.Forms.Label();
Labelf.Text = "Номер БЕЗ +7";
и второй вопрос, как можно узнать номер порта инстанса https://prnt.sc/xpg1t2 ?
 

Twomain

Client
Регистрация
21.07.2019
Сообщения
44
Благодарностей
7
Баллы
8

Koqpe

Client
Регистрация
23.12.2014
Сообщения
1 100
Благодарностей
649
Баллы
113
Какого бокса? Если текст бокса, то опять же в поиск:
Учись пользоваться поиском и по форуму:
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)