3 место Создание и работа с собственными формами (окнами) Windows через сниппеты C#.

Rainsteel

Client
Регистрация
08.04.2015
Сообщения
101
Благодарностей
9
Баллы
18
System.Windows.Forms.Form Form = new System.Windows.Forms.Form();

System.Windows.Forms.RichTextBox textb0 = new System.Windows.Forms.RichTextBox();
System.Windows.Forms.RichTextBox textb1 = new System.Windows.Forms.RichTextBox();
System.Windows.Forms.RichTextBox textb2 = new System.Windows.Forms.RichTextBox();
System.Windows.Forms.RichTextBox textb3 = new System.Windows.Forms.RichTextBox();
System.Windows.Forms.RichTextBox textb4 = new System.Windows.Forms.RichTextBox();
System.Windows.Forms.RichTextBox textb5 = new System.Windows.Forms.RichTextBox();
System.Windows.Forms.RichTextBox textb6 = new System.Windows.Forms.RichTextBox();
System.Windows.Forms.RichTextBox textb7 = new System.Windows.Forms.RichTextBox();
System.Windows.Forms.RichTextBox textb8 = new System.Windows.Forms.RichTextBox();
System.Windows.Forms.RichTextBox textb9 = new System.Windows.Forms.RichTextBox();
System.Windows.Forms.RichTextBox textb10 = new System.Windows.Forms.RichTextBox();

Form.Controls.Add(textb0);
Form.Controls.Add(textb1); Form.Controls.Add(textb2);
Form.Controls.Add(textb3); Form.Controls.Add(textb4);
Form.Controls.Add(textb5); Form.Controls.Add(textb6);
Form.Controls.Add(textb7); Form.Controls.Add(textb8-);
Form.Controls.Add(textb9); Form.Controls.Add(textb10);

Form.ShowDialog();


Мне надо сделать так чтоб код был компактнее, думал задать переменную textb.... через цикл, но никак не получается
 

Phoenix78

Client
Регистрация
06.11.2018
Сообщения
3 559
Благодарностей
1 639
Баллы
113
За цените тестовый вариант. форма живущая параллельно потоку :-)
 
  • Спасибо
Реакции: Master4eg и bizzon

ТРОН

Client
Регистрация
31.07.2016
Сообщения
335
Благодарностей
361
Баллы
63
За цените тестовый вариант. форма живущая параллельно потоку :-)
Предложение было бы более осмысленным, если бы вы поделились этим с комьюнити, а так это выглядит "смотрите какой у меня член". Кто-то позавидует или посмеется, но в целом все равно)
 

Phoenix78

Client
Регистрация
06.11.2018
Сообщения
3 559
Благодарностей
1 639
Баллы
113
Предложение было бы более осмысленным, если бы вы поделились этим с комьюнити, а так это выглядит "смотрите какой у меня член". Кто-то позавидует или посмеется, но в целом все равно)
аха, про член круто сказано.
вот здесь продолжение https://zennolab.com/discussion/threads/interaktivnoe-okno-v-shablone-zennopostera-malenkij-primer.69574/
посмотришь, оставь комментарий :-)
 
  • Спасибо
Реакции: ТРОН и bizzon

sociohacker

Client
Регистрация
08.10.2018
Сообщения
54
Благодарностей
10
Баллы
8
Доброе утро!

А можно такие окошки выводить в Project Maker?

Потестил простое текствое окно — в РМ оно не вылазит. Но, может, есть какой-то способ?
 

DrunkDeath

Client
Регистрация
24.12.2014
Сообщения
329
Благодарностей
219
Баллы
43
Доброе утро!

А можно такие окошки выводить в Project Maker?

Потестил простое текствое окно — в РМ оно не вылазит. Но, может, есть какой-то способ?
Они отлично и в пм выскакивают
 

0LEzhka

Client
Регистрация
08.08.2019
Сообщения
33
Благодарностей
4
Баллы
8
нужно простое диалоговое окно кнопка. при нажатии на кнопку идет дальше. пока не нажмешь ждет.
заранее спасибо
 

nicanil

Moderator
Команда форума
Регистрация
06.03.2016
Сообщения
399
Благодарностей
378
Баллы
63

ukrainec2014

Client
Регистрация
12.05.2017
Сообщения
236
Благодарностей
23
Баллы
18
а как в алерты добавить переменную?

вот такой код:

C#:
System.Windows.Forms.MessageBox.Show("Спасибо. Осталось: project.Variables["number_report"].Value шт.");
выдает ошибку:

Компиляция кода Ошибка в действии "CS1525" "Invalid expression term ')'". [Строка: 0; Cтолбец: 142]
 

Phoenix78

Client
Регистрация
06.11.2018
Сообщения
3 559
Благодарностей
1 639
Баллы
113
а как в алерты добавить переменную?

вот такой код:

C#:
System.Windows.Forms.MessageBox.Show("Спасибо. Осталось: project.Variables["number_report"].Value шт.");
выдает ошибку:

Компиляция кода Ошибка в действии "CS1525" "Invalid expression term ')'". [Строка: 0; Cтолбец: 142]
C#:
System.Windows.Forms.MessageBox.Show("Спасибо. Осталось: "+ project.Variables["number_report"].Value+" шт.");
 
  • Спасибо
Реакции: ukrainec2014

YANKEES

Новичок
Регистрация
05.04.2016
Сообщения
13
Благодарностей
0
Баллы
1
Привет всем, подскажите как передать CheckBox
----------------------------------------------------------
System.Windows.Forms.Form F = new System.Windows.Forms.Form();
F.Text = "Выбор фото";
F.Width=1000; //- задает ширину формы в пикселях
F.Height=900; //- задает высоту формы в пикселях
var location_x = 12;
var location_y = 12;
var checkbox_x = 12;
var checkbox_y = 200;
var list = project.Lists["img_temp"];
lock(SyncObjects.ListSyncer)
{
for(int i=0; i < list.Count; i++)
{

if (i==0){location_x = 12;} else {location_x = location_x+195;}
if (i==5){location_y = location_y+225; location_x = 12;}
if (i==10){location_y = location_y+225; location_x = 12;}

System.Windows.Forms.PictureBox pictureBox = new System.Windows.Forms.PictureBox();
pictureBox.Location= new System.Drawing.Point(location_x, location_y);//left,top
pictureBox.Size = new System.Drawing.Size( 188, 188 );
pictureBox.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
pictureBox.ImageLocation = Macros.TextProcessing.Replace(list, ".jpg", "_bt.jpg", "Text", "All");


var checkbox = new System.Windows.Forms.CheckBox { Name = list, Text = "X" };
F.Controls.Add(checkbox);


if (i==0){checkbox_x = 12;} else {checkbox_x = checkbox_x+195;}
if (i==5){checkbox_y = checkbox_y+225; checkbox_x = 12;}
if (i==10){checkbox_y = checkbox_y+225; checkbox_x = 12;}
checkbox.Location = new Point(checkbox_x, checkbox_y);
F.Controls.Add(pictureBox);
}
}

//позиция Формы на экране
F.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
F.ShowDialog();
return 0;

////////////////////////////////////
Суть в том что сканируется категория где картинки и выводятся в форму, я должен отметить фото по средствам CheckBox а потом передать названия файлов в переменную через разделитель.
Подскажите как вывести в переменную
 

Вложения

YANKEES

Новичок
Регистрация
05.04.2016
Сообщения
13
Благодарностей
0
Баллы
1
Проблему решил, может и коряво но как мог))) Если кому интересно вот результат:
System.Windows.Forms.Form F = new System.Windows.Forms.Form();
F.Text = "Выбор фото";
F.Width=1000;    //- задает ширину формы в пикселях
F.Height=900;    //- задает высоту формы в пикселях
var location_x = 12;
var location_y = 12;
var checkbox_x = 12;
var checkbox_y = 200;
var list = project.Lists["img_temp"];

for(int i=0; i < list.Count; i++)
    {

if (i==0){location_x = 12;} else {location_x = location_x+195;}
if (i==5){location_y = location_y+225; location_x = 12;}
if (i==10){location_y = location_y+225; location_x = 12;}
    
System.Windows.Forms.PictureBox pictureBox = new System.Windows.Forms.PictureBox();
pictureBox.Location= new System.Drawing.Point(location_x, location_y);//left,top
pictureBox.Size = new System.Drawing.Size(188, 188);
pictureBox.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
pictureBox.ImageLocation = Macros.TextProcessing.Replace(list[i], ".jpg", "_bt.jpg", "Text", "All");

var checkbox = new System.Windows.Forms.CheckBox { Name = list[i], Text = "CH"+i};

if (i==0){checkbox_x = 12;} else {checkbox_x = checkbox_x+195;}
if (i==5){checkbox_y = checkbox_y+225; checkbox_x = 12;}
if (i==10){checkbox_y = checkbox_y+225; checkbox_x = 12;}
checkbox.Location = new Point(checkbox_x, checkbox_y);

F.Controls.Add(checkbox);
F.Controls.Add(pictureBox);
}


//позиция Формы на экране
F.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
F.ShowDialog();
for(int i=0;i<F.Controls.Count;i++)
{
    if(F.Controls[i].Text.ToString().Contains("CH"))
    {
        if(F.Controls[i].ToString().Contains("1")){
        //project.SendInfoToLog(F.Controls[i].Name.ToString());
        project.Variables["checked_img"].Value = project.Variables["checked_img"].Value+F.Controls[i].Name.ToString()+"::";
        }
    }
}   
return 0;
 

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