Avatar billede nillinx Nybegynder
10. december 2005 - 12:04 Der er 5 kommentarer og
1 løsning

Paste alt i en ListBox.

Hej.

Hvordan får jeg alt i en listbox til at blive eksempelvis smidt over i en anden listbox?

Når man fx sætter en ftp server op i delphi, er den så direkte på internettet eller kun lokalt?
Avatar billede stone Forsker
10. december 2005 - 12:28 #1
du skal assigne din listbox til remote connection, som jeg forstår af dit spørgsmål vil du have en listbox lokalt og en listbox remote, du smider så alt i lokalt i remote listbox.

procedure ListBoxToClipboard(ListBox: TListBox;
  BufferSize: Integer;
  CopyAll: Boolean);
var
  Buffer: PChar;
  Size: Integer;
  Ptr: PChar;
  I: Integer;
  Line: string[255];
  Count: Integer;
begin
  if not Assigned(ListBox) then
    Exit;

  GetMem(Buffer, BufferSize);
  Ptr  := Buffer;
  Count := 0;
  for I := 0 to ListBox.Items.Count - 1 do
  begin
    Line := ListBox.Items.strings[I];
    if not CopyAll and ListBox.MultiSelect and (not ListBox.Selected[I]) then
      Continue;
    { Check buffer overflow }
    Count := Count + Length(Line) + 3;
    if Count = BufferSize then
      Break;
    { Append to buffer }
    Move(Line[1], Ptr^, Length(Line));
    Ptr    := Ptr + Length(Line);
    Ptr[0] := #13;
    Ptr[1] := #10;
    Ptr    := Ptr + 2;
  end;
  Ptr[0] := #0;
  ClipBoard.SetTextBuf(Buffer);
  FreeMem(Buffer, BufferSize);
end;

procedure ClipboardToListBox(ListBox: TListbox);
begin
  if not Assigned(ListBox) then
    Exit;

  if not Clipboard.HasFormat(CF_TEXT) then
    Exit;

  Listbox.Items.Text := Clipboard.AsText;
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
ListBoxToClipboard(ListBox1, 1024, True);

end;

procedure TForm1.Button2Click(Sender: TObject);
begin
ClipboardToListBox(Listbox2);

end;
Avatar billede stone Forsker
10. december 2005 - 12:31 #2
button1 kopier listbox1 til clipboard

button2 sætter ind fra clipboard til listbox2
Avatar billede kroning Nybegynder
10. december 2005 - 12:34 #3
Jeg ser det som 2 spørgsmål der ikke har noget med hinanden at gøre?

1. ListBox1.Items.Text:=ListBox2.Items.Text;

2. Ja hvis din computer er direkte på internettet. Har du f.eks. en router mellem din internet forbindelse og din computer så skal du først åbne porten i routeren før computere udefra kan få kontakt til din ftp server.
Avatar billede stone Forsker
10. december 2005 - 12:34 #4
borland har en lidt primitiv eksempel i programmer\delphixxx\demos\fastnet\ftp men her kan man sagtens læse de muligheder du kunne bruge i dit program
Avatar billede nillinx Nybegynder
10. december 2005 - 12:38 #5
Kroning := Rigtigt :D Læg et svar.
Avatar billede kroning Nybegynder
10. december 2005 - 12:43 #6
:-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester