Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.05.12;
Скачать: [xml.tar.bz2];

Вниз

как из listbox1 перенести выделеные строки в listbox2 ?   Найти похожие ветки 

 
Striker   (2003-04-30 12:08) [0]

Я знаю как перенести все строки или только выделеную 1 строку
а если в listbox выделены 3,5,455 строк ? как скопировать или перенести только выделенные


 
MBo   (2003-04-30 12:09) [1]

проверять каждую на Selected


 
Striker   (2003-04-30 12:14) [2]

> MBo
это конечно можно ! :) а если например у меня 99999 строк ?


 
jel   (2003-04-30 12:17) [3]

Даже если больше - другого пути нет.
См.
> MBo © (30.04.03 12:09)



 
stone   (2003-04-30 12:18) [4]

TListBox.CopySelection (Destination: TCustomListControl);
TListBox.MoveSelection(Destination: TCustomListControl);

выбирай что больше подходит


 
MBo   (2003-04-30 12:19) [5]

>stone
Это в каких Delphi появилось????


 
stone   (2003-04-30 12:24) [6]

Точно не помню, но в 6-ой уже точно было


 
Striker   (2003-04-30 12:25) [7]


> stone
я в delphi новичёк так что не знаю как применять эту команду
пробывал так listbox2.CopySelection(listbox1);

программа компилиться но не хочет копировать выдеенные элементы


 
jel   (2003-04-30 12:25) [8]


> Даже если больше - другого пути нет.

Упс. :(


> stone © (30.04.03 12:18)

Абсолютно прав. В 6 точно есть.


 
jel   (2003-04-30 12:29) [9]


> Striker (30.04.03 12:25)

В первом боксе выделяешь чего хочешь и копируешь во второй
ListBox1.CopySelection(ListBox2);


 
stone   (2003-04-30 12:29) [10]

Striker (30.04.03 12:25)

Можешь посмотреть открыв

File -> New -> Forms -> Dual List Box

Возможно, что это как раз то, что тебе надо.
Удачи.


 
Striker   (2003-04-30 12:41) [11]

Спасибо всем !
я сделал так

--------------------
public
function GetFirstSelection(List: TCustomListBox): Integer;
procedure MoveSelected(List: TCustomListBox; Items: TStrings);
procedure SetItem(List: TListBox; Index: Integer);
---------------
function tform1.GetFirstSelection(List: TCustomListBox): Integer;
begin
for Result := 0 to List.Items.Count - 1 do
if List.Selected[Result] then Exit;
Result := LB_ERR;
end;
procedure tform1.MoveSelected(List: TCustomListBox; Items: TStrings);
var
I: Integer;
begin
for I := List.Items.Count - 1 downto 0 do
if List.Selected[I] then
begin
Items.AddObject(List.Items[I], List.Items.Objects[I]);
// List.Items.Delete(I); // можно оставить если вы хотите чтобы в 1 списке строки удалились
end;
end;
procedure tform1.SetItem(List: TListBox; Index: Integer);
var
MaxIndex: Integer;
begin
with List do
begin
SetFocus;
MaxIndex := List.Items.Count - 1;
if Index = LB_ERR then Index := 0
else if Index > MaxIndex then Index := MaxIndex;
Selected[Index] := True;
end;
end;

----------
пример использования :

procedure TForm1.Button1Click(Sender: TObject);
var
Index: Integer;
begin
Index := GetFirstSelection(listbox1);
MoveSelected(listbox1, listbox2.Items);
SetItem(listbox1, Index);
end;






Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.05.12;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.007 c
1-34399
NAlexey
2003-04-30 11:00
2003.05.12
DateTimeToStr - Integer Overflow


6-34540
Fantom1
2003-03-15 10:02
2003.05.12
winexec


1-34482
Zilog
2003-04-29 16:21
2003.05.12
Народ!! Подскажите pls как в ListBox связать строчку с указателем


6-34534
Sectey
2003-03-14 16:34
2003.05.12
Номера портов


7-34628
dimitriy
2003-03-17 12:42
2003.05.12
Ребята помогите пожалуйста проблема в шрифта при печати.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский