I'm writing a project with Delphi. I need to do something to do the function that the Invoke method in C# does. I saw the Synchronize() method do this somewhere, but I don't know exactly how to write it. How can I do it ?
C# code:
private void ListenerOnDataTransmit(DataTransmitEventArgs e)
{
transmittedMsg = BitConverter.ToString(e.TransmittedBytes, 0, e.TransmittedBytes.Length);
//I want to write here
try { Invoke(new EventHandler(UpdateTransmittedMessagesListView)); }
catch { }
}
// UpdateTransmittedMessagesListView
public void UpdateTransmittedMessagesListView(object sender, EventArgs e)
{
ListViewItem item = new ListViewItem(DateTime.Now.ToLongTimeString());
item.SubItems.Add(transmittedMsg);
lvTransmittedMessages.Items.Insert(0, item);
if (lvTransmittedMessages.Items.Count > 100)
lvTransmittedMessages.Items.Clear();
}
public MainForm()
{
InitializeComponent();
plistener.OnDataTransmit += new DataTransmitEventHandler(ListenerOnDataTransmit);
}
The codes are like this, I want to do the operations on the Invoke line in the first function.