Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.09;
Скачать: CL | DM;

Вниз

Добовление данных в ComboBox   Найти похожие ветки 

 
sig22 ©   (2004-02-26 10:11) [0]

Столкнулся с такой проблемкой: Есть программа и есть функция с помощью которой из этой программы можно выдергивать списки, эти списки с разделителем #9#13. Когда я делаю ComboBox.Items.Add(функция) то она мне выдает в ComboBox весь список одной строкой с разделителями.
Посоветуйте как мне выдернуть нормальный список.
Заранее благодарен за все ответы!!


 
Palladin ©   (2004-02-26 10:12) [1]

TStrings.Add добавляет одну строку. Что бы добавить несколько строк нужну вызвать TStrings.Add несколько раз.


 
sig22 ©   (2004-02-26 10:34) [2]

Так не получается получается ерунда

сотуация такая предположим *****-список , ##-разделители, и вот что у меня получается
*****##*****##***** это при вызове один раз, если несколько раз то соотоветственно столько таких строк и будет, а мне нужно чтобы было так: *****
*****
*****


 
Ega23 ©   (2004-02-26 10:40) [3]

попробуй свою строку в TComboBox.Text засунуть.


 
sig22 ©   (2004-02-26 10:46) [4]

т.е. как это сделать?, извеняюсь за такие вопросы просто я только учусь


 
serge ©   (2004-02-26 10:47) [5]

> Ega23 © (26.02.04 10:40) [3]
TComboBox.Items.Text так получится но останутся #9 как мусор


 
TUser ©   (2004-02-26 10:47) [6]

проще - [1], перед эти разбабахать строку на отдельные итемы.


 
sig22 ©   (2004-02-26 10:54) [7]

Дело в том что с Text не получается. описание самой функции с помощью которой дергается список на инглише

WatchListNames(): string;

Returns a carriage return/line feed (#9#13) delimited string containing the names of all WatchLists (and DataSources).


 
Ega23 ©   (2004-02-26 10:55) [8]

ComboBox1.text:=WatchListNames(...);


 
serge ©   (2004-02-26 10:58) [9]

А не проще ли ...

s = "123"#9#13"sdfsdf"...
TComboBox.Items.Text:=ReplaceString(s,#9,"",rfReplaceAll);


 
Ega23 ©   (2004-02-26 11:04) [10]

Стоп. #9 - это у нас что?


 
sig22 ©   (2004-02-26 11:08) [11]

На этой строке ComboBox1.text:=WL.WatchListNames(); выдает ошибку: Не допустимое число параметров

WL := CreateOleObject( "WealthLab.WL3" );


 
serge ©   (2004-02-26 11:18) [12]

> Ega23 © (26.02.04 11:04) [10]
Получается что #9 <=> ТАБ


 
Ega23 ©   (2004-02-26 11:21) [13]

А ТАБы тебе в комбике не нужны? Или нужны?


 
sig22 ©   (2004-02-26 11:23) [14]

да , луче шоб их не было


 
sig22 ©   (2004-02-26 11:24) [15]

а если ТАБы будут на что это может повлиять?


 
serge ©   (2004-02-26 11:24) [16]

Исходя из [2] они ему наверное не нужны ИМХО.


 
Ega23 ©   (2004-02-26 11:25) [17]

А Trim Табы не отсекает?


 
serge ©   (2004-02-26 11:29) [18]

> Ega23 © (26.02.04 11:25) [17]
Не-е-е


 
sig22 ©   (2004-02-26 11:32) [19]

Вот еще чего заметил когда делаешь Label1.Caption:=WL.WatchListNames , то все ок , все попорядочку


 
sig22 ©   (2004-02-26 12:01) [20]

Мастера!!!!!!!!! ну что больше не укого ни каких мыслей нет на счет моей беды?


 
sig22 ©   (2004-02-26 12:26) [21]

может кто либо знает как сделать в ListBox????


 
serge ©   (2004-02-26 12:33) [22]

А то же самое что в ComboBox, а чем не подходит [6] или [9] с поправочкой
ComboBox1.Items.Text:=ReplaceString(s,#9,"",[rfReplaceAll]);


 
sig22 ©   (2004-02-26 12:42) [23]

просто я не понимаю что это s = "123"#9#13"sdfsdf"...

и как определяется rfReplaceAll


 
serge ©   (2004-02-26 12:48) [24]

s - это предполагаемая строка которую ты получаешь через WatchListNames() а по rfReplaceAll получищь информацию
м..дя не ReplaceString а StringReplace + F1


 
sig22 ©   (2004-02-26 13:00) [25]

Пишу так

procedure TForm1.Button1Click(Sender: TObject);
var
s: string ;
begin

WL := CreateOleObject( "WealthLab.WL3" );
s:= WL.WatchListNames()

ComboBox1.Items.Text:=StringReplace(s,#9,"",[rfReplaceAll]);
end;

она начинает ругаться Missing Operator or semicolon


 
SPIRIT ©   (2004-02-26 13:04) [26]

;
пропустил


 
serge ©   (2004-02-26 13:05) [27]

s:= WL.WatchListNames() ;


 
sig22 ©   (2004-02-26 13:10) [28]

Не заметил,
Но теперь другая ошибка на строке s:= WL.WatchListNames(); при исполнении появляется окно дебагер сообщает , "Недопустимое число параметров"


 
wisekaa ©   (2004-02-26 13:15) [29]

procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
begin
s := "123"+#9#13+"sdfsdf";
ComboBox1.Items.CommaText:=s;
end;


Все работает!


 
sig22 ©   (2004-02-26 13:25) [30]

Да так то оно конечно работает, а если с внешней функцией из другой программы!?!

Мне то в строку надо превратить s:= WL.WatchListNames(); а туута она и пишет "Недопустимое число параметров"
Я так полагаю что всему виной это WL.
но если ее убрать то дельфя не понимает WatchListNames()
ВоОООО вопрос!!!!!!!!!


 
serge ©   (2004-02-26 13:37) [31]

А что-же - это Label1.Caption:=WL.WatchListNames не выдавало ошибок ?


 
wisekaa ©   (2004-02-26 13:41) [32]


> "Недопустимое число параметров"

Ну так проверь количество параметров.


 
sig22 ©   (2004-02-26 13:49) [33]

МУЖИКИ ВСЕ ПОЛУЧИЛОСЬ ВСЕ РАБОТАЕТ
В ЭТОЙ СТРОКЕ НАДО БЫЛО ПРОСТО СКОБКИ УБРАТЬ s:= WL.WatchListNames()

ОГРОМНОЕ ВСЕМ СПАСИБО!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

ПРЕВЫЙ РАЗ Я НА ЭТОМ ФОРУМЕ , НУ ОЧЕНЬ ПОНРАВИЛОСЬ


 
serge ©   (2004-02-26 14:21) [34]

"будешь на земле...заходи" :) Бутусов (С)



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

Текущий архив: 2004.03.09;
Скачать: CL | DM;

Наверх




Память: 0.54 MB
Время: 0.021 c
1-25739
Charly22
2004-02-26 19:33
2004.03.09
Экспорт переменной в DLL


14-25858
Daemys
2004-02-17 09:32
2004.03.09
Глюк Матрицы?


6-25837
Typoi_Beginer
2003-12-28 18:29
2004.03.09
Передача данных на удалённый комп.


14-25905
Думкин
2004-02-14 06:10
2004.03.09
С днем рождения! 14 февраля.


14-25895
Феликс
2004-02-15 14:02
2004.03.09
Добрая жена, густые щи, другого не ищи. Согласны?