• ShowModal在FireMonkey移动应用程序对话框


    This is the only code that changes between the first and second code snippets:
     dlg.ShowModal(procedure(ModalResult: TModalResult)
        begin
          if ModalResult = mrOK then
          // if OK was pressed and an item is selected, pick it
          if dlg.ListBox1.ItemIndex >= 0 then
            edit1.Text := dlg.ListBox1.Items [dlg.ListBox1.ItemIndex];
          dlg.DisposeOf;
        end);
    View Code

    第一个代码片段:典型的代码调用的ShowModal

    procedure THeaderFooterForm.btnPickClick(Sender: TObject);
    var
      dlg: TForm1;
    begin
      dlg := TForm1.Create(nil);
      try
        // select current value, if avaialble in the list
        dlg.ListBox1.ItemIndex := dlg.ListBox1.Items.IndexOf(edit1.Text);
     
        if dlg.ShowModal = mrOK then
          // if OK was pressed and an item is selected, pick it
          if dlg.ListBox1.ItemIndex >= 0 then
            edit1.Text := dlg.ListBox1.Items [dlg.ListBox1.ItemIndex];
      finally
        dlg.Free;
      end;
     
    end;
    View Code

    伪代码典型的ShowModal代码片段解读

    这里是一个描述每个此过程的一部分:

    声明局部变量
    dlg: TForm1;
    创建表格的形式和初始化成员
    dlg := TForm1.Create(nil);
            dlg.ListBox1.ItemIndex := dlg.ListBox1.Items.IndexOf(edit1.Text);
    显示的形式模态
    if dlg.ShowModal = mrOK then
    检查用户的结果和处理数据
    if dlg.ListBox1.ItemIndex >= 0 then
          edit1.Text := dlg.ListBox1.Items [dlg.ListBox1.ItemIndex];
     释放表单 dlg.Free;
    View Code

    第二个代码片段:作为一个匿名的方式在所有平台上调用的ShowModal

    随着移动平台,你应该改变这种代码,悦目,让所有支持的目标平台上工作的ShowModal

    procedure THeaderFooterForm.btnPickClick(Sender: TObject);
    var
      dlg: TForm1;
    begin
      dlg := TForm1.Create(nil);
      // select current value, if available in the list
      dlg.ListBox1.ItemIndex := dlg.ListBox1.Items.IndexOf(edit1.Text);
     
      dlg.ShowModal(procedure(ModalResult: TModalResult)
        begin
          if ModalResult = mrOK then
          // if OK was pressed and an item is selected, pick it
          if dlg.ListBox1.ItemIndex >= 0 then
            edit1.Text := dlg.ListBox1.Items [dlg.ListBox1.ItemIndex];
          dlg.DisposeOf;
        end);
     
    end;
    View Code

    匿名方法的ShowModal代码片段的伪代码解读

    这里是一个描述发生了什么(做同样的事情,第一个代码段)在第二个代码片段:

    Declare local variables
        dlg: TForm1;
    
    Create form and initialize member in the form
        dlg := TForm1.Create(nil);
            dlg.ListBox1.ItemIndex := dlg.ListBox1.Items.IndexOf(edit1.Text);
    
    Show the form modal
          dlg.ShowModal(procedure(ModalResult: TModalResult)
    
    Check the user's result and process the data
        if ModalResult = mrOK then
          if dlg.ListBox1.ItemIndex >= 0 then
            edit1.Text := dlg.ListBox1.Items [dlg.ListBox1.ItemIndex];
    
    Free the form
              dlg.DisposeOf;
    View Code
  • 相关阅读:
    Miller-Rabin算法
    拟阵
    第一次作业
    实验四 201771010101 白玛次仁
    201771010101 白玛次仁
    201771010101 白玛次仁 《2018面向对象程序设计(Java)课程学习进度条》
    201771010101 白玛次仁
    201771010101 白玛次仁
    达拉草201771010105《面向对象程序设计(java)》第二周学习总结
    达拉草201771010105《面向对象程序设计(java)》第一周学习总结
  • 原文地址:https://www.cnblogs.com/key-ok/p/3359205.html
Copyright © 2020-2023  润新知