【问题标题】:use Multiple Lines Of a Tmemo in the arguments of a function在函数的参数中使用 Tmemo 的多行
【发布时间】:2012-05-06 05:02:20
【问题描述】:

我这里用的是函数The Function Here

我这样做, StartProcess('b4a_c2dm.bat','send ' + Trim(edit1.Text)+' ' + Trim(edit2.Text ),False,False);

这对 edit1.text 很有用(这是发送消息的名称)

将有一个包含多行名称的备忘录1 发送到。 我需要一种使用 memo1 名称列表而不是 edit1 单个名称来调用 StartProcess 的方法。

目标是让它通过 memo1 中的名称列表反复使用 StartProcess。

感谢您的帮助。

【问题讨论】:

  • 你为什么不遍历备忘录的行?
  • 我不知道如何在启动过程中做到这一点。
  • 你能发布一个可能有用的例子吗?
  • 我指的是for i := 0 to Memo1.Lines.Count - 1 do whatever(Memo1.Lines[i]);。但显然我根本没有理解这个问题。
  • 说真的老兄,如果你从未见过for 循环,那么现在就开始使用 StackOverflow 还为时过早。在你问这样的问题之前,坚持教程并学习一点编程。我是说。是的,我想友好,等等。但是,关于如何执行 LOOPING X TIMES 之类的操作的一百万个问题变得越来越荒谬。你好。欢迎来到stackoverflow。请了解一下德尔福。

标签: string delphi function memo


【解决方案1】:

像这样在备忘录的各行上运行一个简单的 for 循环:

for i := 0 to Memo1.Lines.Count-1 do
  StartProcess(..., Memo1.Lines[i], ...);

【讨论】:

  • 好的,这就是我得到的。变量参数:字符串; i:整数;开始 args := ''; for i := 0 to Memo1.Lines.Count do args := args + '"' + Memo1.Lines[i] + '" '; StartProcess('b4a_c2dm.bat','send ' + Trim(args)+' ' + Trim(edit2.Text ),false,true);结尾;它只向第一个名字发送备​​忘录,我注意到它发送的消息是备忘录中的第二个名字。备忘录中不能有空格。
  • 我的回答有一个愚蠢的错误。循环是从 0 到 Count-1。但我无法理解你的评论。我的回答很明确。它只是将备忘录的行连接成一个空格分隔的字符串。如果这不是您需要的,请告诉我们您确实需要什么。要精确。如果它有助于提供示例输入和所需的输出。
  • bat 文件 b4a_c2dm.bat 需要这样的一行 b4a_c2dm.bat 发送用户名消息
  • 启动过程方法将只发送到 1 个名称(edit1.text)并且一次只发送 1 条消息。我需要向备忘录中的所有姓名发送消息1
  • 好的,那么根据我的更新,您需要每次循环调用 StartProcess。作为一条一般性建议,花时间让您的问题更清楚会让我们更容易回答,更重要的是,对您而言。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-02-11
  • 1970-01-01
  • 2021-03-05
  • 2020-08-19
  • 1970-01-01
  • 1970-01-01
  • 2017-01-19
相关资源
最近更新 更多