-
Так! У меня скопилось нереальное количество процедур и функций в главной форме делфи! (ну и мудак скажете вы) знаю, но я любитель! Можно ли куда то их все деть кроме библиотеки длл? В идеале я хочу каждую функцию или процедуру видеть в отдельной вкладке как юниты например (как на сишарпе) а не аналогичное их мегасборище в длл, тем более я их все использую, так что не вижу смысла создавать для них длл. Есть что нить?)
-
Как вариант наверное можно использовать юниты ? и делать типо этого unit Unit2; interface function lala(X: String): String; implementation function lala(X: String): String; begin Result := X+' Тра-ля-ля' end; end.
-
это лучшее решение...
-
function Stat1(): TListBox;
var
ListBox1:TListBox;
begin
ListBox1.Clear;
ListBox1.Items.Add('Работай');
ListBox1.Items.Add('Не хочу');
Result:=ListBox1;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ListBox1.Items.Assign(Stat1().Items);
end;
Что то тут не так) скорей всего мб как то результат не правильно вывожу? нужно заполнить листбокс 1 содержимым листбокса из функции
-
О-о-о, батенька, Вам бы матчасть подучить. Память-то потекла, да и целый листбокс возвращать — тоже перебор.
-
P.S. Прозевал. Не потекла, а даже не выделилась. Мусор и возвращается. Неудивительно, что Access Violation идёт. Он ведь?
-
Да да, уважаемый, всё верно) Ну я проганием занимался где то 6-7 классе, я сейчас я универ закончил, не удивительно что что то течёт) Да я раньше не заморачивался если надо фигачил на форму листбокс, а сейчас решил приподняться уровнем) и в функции все сделать, но мозгов не хватает)
-
function Stat1: TStringList ;
var ListBox1: TStringList;
begin
ListBox1:=TStringList.Create();
ListBox1.Add('Работай');
ListBox1.Add('Я супер');
Result:=ListBox1;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ListBox1.Items.Assign(Stat1);
end;
Пока сделал что вроде этого, дальше может разберусь)
-
> function Stat1: TStringList ; > var ListBox1: TStringList; > begin > ListBox1:=TStringList.Create(); > ListBox1.Add('Работай'); > ListBox1.Add('Я супер'); > Result:=ListBox1; > end;
Зачем столько лишних букв? function Stat1: TStringList ;
begin
Result:=TStringList.Create();
Result.Add('Работай');
Result.Add('Я супер');
end;
-
> универ закончил, не удивительно что .. мозгов не хватает
И правда - чему тут удивляться ?)
-
Только более правильный вариант procedure Stat1(List: TStrings);
begin
List.Clear();
List.Add('Работай');
List.Add('Я супер');
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Stat(ListBox1.Items);
end;
|