Открыть второе окно с кнопками - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

Требуется в процедуре Myclick, чтобы выходило второе окно, в котором будут выведены результаты x1,x2,x3 и добавлено 3 кнопки (например "Вывести результаты расчета x1") Возожно ли это и что означает строчка
Листинг программы
  1. tb.Dock := DockStyle.Fill;
Листинг программы
  1. {$apptype windows}
  2. {$reference 'System.Windows.Forms.dll'}
  3. {$reference 'System.Drawing.dll'}
  4. uses
  5. System.Windows.Forms, System.Drawing;
  6. uses FormsABC;
  7. type
  8. MyForm = System.Windows.Forms.Form;
  9. var
  10. I:boolean=false;
  11. s := new RealField('Введите исх. данные');
  12. f1 := new FlowBreak;
  13. ok := new Button ('Сделать расчет');
  14. tb: TextBox;
  15. function CalcIntegral(s: real);
  16. begin
  17. x1:=s+1;
  18. x2:=s+3;
  19. x3:=s+4;
  20. end;
  21. procedure MyClick;
  22. begin
  23. var res := CalcIntegral(s.Value);
  24. tb.Text:='';
  25. tb.AddLine(Format('Ответ: {0}', x1));
  26. end;
  27. procedure InitControls;
  28. begin
  29. MainForm.Title := 'Расчет';
  30. MainForm.SetSize(700, 450);
  31. MainForm.CenterOnScreen;
  32. mainPanel.Dock := DockStyle.Left;
  33. mainPanel.Width := 150;
  34. ok.Click += MyClick;
  35. ParentControl := MainForm;
  36. tb := new TextBox;
  37. tb.Dock := DockStyle.Fill;
  38. end;
  39. begin
  40. InitControls;
  41. end.

Решение задачи: «Открыть второе окно с кнопками»

textual
Листинг программы
  1. procedure MyClick;
  2. begin
  3.   var SecondForm := new Form;
  4.  
  5.   SecondForm.ClientSize := new System.Drawing.Size(200, 100);
  6.   var b1 := new System.Windows.Forms.Button;
  7.   b1.Text := 'x1';
  8.   b1.Bounds := new System.Drawing.Rectangle(10, 50, 50, 20);
  9.   var b2 := new System.Windows.Forms.Button;
  10.   b2.Text := 'x2';
  11.   b2.Bounds := new System.Drawing.Rectangle(70, 50, 50, 20);
  12.   var b3 := new System.Windows.Forms.Button;
  13.   b3.Text := 'x3';
  14.   b3.Bounds := new System.Drawing.Rectangle(130, 50, 50, 20);
  15.  
  16.   var box := new System.Windows.Forms.TextBox;
  17.   box.Dock := DockStyle.Top;
  18.  
  19.   SecondForm.Controls.Add(b1);
  20.   SecondForm.Controls.Add(b2);
  21.   SecondForm.Controls.Add(b3);
  22.   SecondForm.Controls.Add(box);
  23.  
  24.   var res := CalcIntegral(s.Value);
  25.   tb.Text:='';
  26.   tb.AddLine(Format('Ответ: {0}', x1));
  27.   SecondForm.ShowDialog;
  28. end;

Объяснение кода листинга программы

  1. Создается новое окно второго уровня (SecondForm) с указанными размерами.
  2. Создаются три кнопки (b1, b2, b3) с текстом и координатами на втором окне.
  3. Создается объект типа TextBox (box) и его свойства устанавливаются так, чтобы он находился в верхней части второго окна.
  4. Кнопки (b1, b2, b3) добавляются в коллекцию элементов управления второго окна.
  5. Объект box также добавляется в коллекцию элементов управления второго окна.
  6. Задается значение переменной res результатом вычисления интеграла функции с заданными параметрами.
  7. Значение переменной s не определено, поэтому предполагается, что оно будет получено из другого источника данных.
  8. В текстовое поле (tb) добавляется строка с форматированным текстом, содержащим результат вычисления интеграла (res) и значение переменной s.
  9. Второе окно (SecondForm) отображается в диалоговом режиме, что означает, что оно будет закрыто после того, как пользователь нажмет кнопку ОК.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.778 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы