Вопрос № 66911: Здравствуйте, Уважаемые Эксперты.
Меня интересует вопрос динамического добавления контролов на форму. Хотелось бы знать как это реализовать на Delphi. Так же интересует как сделать массив контролов. Нужно реализовать решение задач с матрицами т.е...Вопрос № 66923: У меня вопрос:можно-ли самостоятельно без помощи профессионалов
изучить delphi7 и более-менее научиться программировать и не посоветуете
где скачать подходящую литературу.Заранее благодарю....Вопрос № 66929: Доброе время суток эксперты!
У меня опять проблема((( С клавиатуры вводится число (от нуля до миллиона). Необходимо записать это сумму словами огласно правилам русского языка. и проблема в том что мне наждо сделать это в console aplication(((я за...Вопрос № 66975: Здраствуйте!
Столкнулся с проблемой. Могу работать с одним файлом через OpenDialog, но не могу с несколькими.
Есть папка(Main). В ней подпапки(1,2,3...N). В каждой из этих подпапок лежит по несколько файлов.
Вопрос - как сделат...Вопрос № 67048: Доброго времени суток уважаемые эксперты.
Мне надо используя процедуру вывести на экран массив (двумерный, квадратный). С выводом проблем нету, обычное поле TMemo и пару циклов For. Проблема в том что сам массив объявляется в нутри процедуры, на ...Вопрос № 67057: Добрый день!
Существует необходимость реализации работы клиента подключаемого к серверу через CORBA интерфейс (проверка пользователя, запрос, ответ). Как это можно реализовать или с чего лучше начать? Если возможно приведите пожалуйста приме...
Вопрос № 66.911
Здравствуйте, Уважаемые Эксперты.
Меня интересует вопрос динамического добавления контролов на форму. Хотелось бы знать как это реализовать на Delphi. Так же интересует как сделать массив контролов. Нужно реализовать решение задач с матрицами т.е. нужно вводить эти самые матрицы.
Заранее спасибо за ответы.
Отвечает: Алтунин Василий Владимирович
Здравствуйте, Чурсанов Евгений Ильич!
В приложении вы найдете код, который создает 6 контролов TEdit. используется массив и показанно как извлекать введеные в Едиты значения. Удачи!
У меня вопрос:можно-ли самостоятельно без помощи профессионалов
изучить delphi7 и более-менее научиться программировать и не посоветуете
где скачать подходящую литературу.Заранее благодарю.
Отправлен: 14.12.2006, 10:10
Вопрос задал: Alllexc (статус: Посетитель)
Всего ответов: 5 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Кулаков Антон Сергеевич /SandroNec
Здравствуйте, Alllexc!
Конечно можно (если действительно есть желание). Самое главное здесь, на мой взгляд, это хотя бы немного знать технический английский, потому что тогда становится понятным код (if ... then = если .... то), ну а насчет литературы посоветую попробовать http://testnec.1gb.ru/ (правда в скором времени он переедет, куда переедет можно будет узнать из моей регистрационной карты).
--------- Настоящий программист на вопрос - "можешь ли ты это сделать", всегда ответит - "да", а потом подумает как
Отвечает: Алтунин Василий Владимирович
Здравствуйте, Alllexc!
Самому можно научится всему, что угодно. Насчет помощи проффесионалов - форума на это и есть :) www.delphimaster.ru могу посоветовать. Там же хорошая подборка примеров и статей. Версия Дельфи особого значения не имеет, главное изучить язык Object Pascal. Хотя сейчас он официально может уже не Object Pascal. Но, в общем, начать можно вообще с Turbo Pascal и постепенно перейти на Делфи... Я в свое время начинал С Турбо Паскаля, потом перешел совершенно безболезненно на Делфи...
--------- ... Дорогу осилит Идущий ...
Ответ отправил: Алтунин Василий Владимирович (статус: 3-ий класс)
Ответ отправлен: 14.12.2006, 11:17 Оценка за ответ: 5
Отвечает: Nick_K
Здравствуйте, Alllexc!
В инете куча сайтов, посвященных DELPHI.
Иди на http://www.delphimaster.ru/. Там есть куча полезной информации и масса полезных ссылок. Также поищи в инете "Delphi Russian Knowledge Base" (DRKB) -огромный FAQ по Delphi. Узнаешь много поелезного.
Ответ отправил: Nick_K (статус: 1-ый класс)
Ответ отправлен: 14.12.2006, 11:22 Оценка за ответ: 5
Отвечает: Мишин Михаил
Здравствуйте, Alllexc!
Можно. Сначала тебе основы программирования.
В Delphi мне помогли вот эти книги
для начинающих:
Фленов М. "Библия Delphi";
А. Хомоненко, В.Гофман "Delphi 7. Наиболее полное руководство" в подлиннике;
А.Я. Архангельский "Программирование в Delphi 7"
Затем более сложные книжки:
Marco Cantu "Delphi7 для профессионалов"
Фленов М "Delphi глазами Хакера"
А. Архангельский "Приемы программирования в Delphi 7"
Все это и многое друное можно скачать тут:
http://www.c-books.info/books/load.php?ty=delphi
http://www.megalib.com/items.php?idsubject=3
http://www.hge.pu.ru/search.html?query=Delphi
Ну и есстественно, по ходу обучения будут возникать вопросы, ответы на которые можно получить тут:
http://www.delphiworld.narod.ru/dw.html
Ответ отправил: Мишин Михаил (статус: 1-ый класс)
Ответ отправлен: 14.12.2006, 11:36 Оценка за ответ: 5
Отвечает: KiberZero
Здравствуйте, Alllexc!
Дорогой друг, по этому поводу я вспомнил одну очень старую притчу.
Однажды простой бродяга решил проверить мудреца. Поймал бабочку и решил, - «спрошу-ка я мудреца, живая она или мёртвая, скажет живая, сожму её в руках, скажет мёртвая, отпущу». Так и сделал. Но в каком же изумлении оказался бродяга, услышав ответ мудреца. Несколько секунд подумав, мудрец ответил: «Всё в твоих руках!»
Так вот, всё в ваших руках! И если вы решили что-то сделать, чему-то научиться, что ж, дерзайте! Помните, нет ничего из того, что было открыто, создано руками человека или придумано, не мог бы освоить другой человек. Что же касается понятия профессионал, то это просто термин. Этот термин принадлежит людям, глубже знающим ту или иную сферу деятельности человека. Самым важным моментом в обучении выступает само обучение. Ибо нельзя научить человека какой-либо деятельности без желания самого обучающегося.
На этот счёт даже есть очень старое педагогическое изречение: «Научить нельзя, НАУЧИТЬСЯ МОЖНО!» Так что даже если у вас будет 100 профессионалов, но у самих не будет желания, настойчивости, стремления к обучению, точнее, к получению знаний, то никакие профессионалы вам не помогут.
Это было мимолётное введение(экскурс) в ваше предстоящее обучение. А теперь конкретнее о том, что и как.
Сам язык Delpi на самом деле не так уж и сложен, как его иногда представляют. Поверьте, изучить, скажем язык СС+ гораздо сложнее. Структура языка Delphi основана на языка Paskal и это её модификация Object Paskal, приближенная к объектно-ориентированному программированию. Так что на первом этапе вам необходимо изучить основы Paskal, постепенно переводя (направляя) нужный код на объект. И сразу хочу сказать, не бойтесь пробовать, экспериментировать – это залог успеха! Начните изучение с простых математических
задач, основанных на до глубины души известных нам со школьной скамьи математических операций (сложение, вычитание, деление и т.д.). Тем самым, вы уже научитесь применять одну из самых распространённых операций, без которой не обходится ни одна программа – операция присваивания. Таким образом, постепенно, незаметно для себя вы уже станете на путь профессионала, выступая пока, отмечаю ПОКА в роли ученика. Что же касается самой среды Delphi, то она проста и уникальна в осво
ении. И пусть вас не пугает множество кнопочек, картинок, компонентов, находящихся в среде всё это реально освоить за довольно короткий промежуток времени. Все компоненты, находящиеся на вкладках среды не будут вам нужны сразу. Всё это приёдёт со временем. На первых порах введите в своё освоение работу с кнопкой TButton и окном строки TEdit. Поработайте над каким-либо простым заданием, постепенно его усложняя и добавляя другие компоненты TLabel, TMemo, а потом можете поработать скажем, заменяя TButton, на другую
кнопку TBitBtn и так далее. Короче говоря всё постепенно, не хватайтесь за всё сразу, не распыляйтесь. Постепенно вводите компонент за компонентом, знакомясь всё с новыми и новыми элементами языка. Верно сказано: «Нельзя сразу объять необъятное». Москва то же не сразу строилась.
Написав, свою первую программу, вы уже можете с гордостью сказать о себе: «Я программист!». И я не преувеличиваю, это так. Пройдёт месяц, другой и вы уже ощутите на себе полученные знания. Успех не за горами.
Что же касается литературы – боже, её так много. Безусловно вам сложно выбрать, с кого начать, что читать, по чём заниматься.
Во-первых, я просто очень вам рекомендую зайти на сайт http://www.rsdn.ru. Там имеется подборка различной информации по программированию, в том числе о Delphi. Настоятельно рекомендую, - НАЧНИТЕ ИМЕННО С ЭТОГО. Там изложены самым доступным языком основы Delphi. Почерпнув множество материала с этого сайта можете перейти к другим источником.
Заслуженно можно считать признанных программистов в этой области: В.В. Фаронова, А.Я. Архангельского, А.Хомоненко, В.Гофмана. Плюс, сюда же я отнёс бы руководство от самих разработчиков С.Тейксейра и Ксавье Паченко, но это уже для более глубокого изучения.
Как вступительное слово для Delphi и не только, можно посоветовать Флеонова – Библия Delphi.
Всё это и многое другое можно скачать с http://c-books.info/books/.
Так же советую занести в свою копилку http://programmersclub.ru, http://xammer.rm.ru.
Ну и на последок вот вам ещё копилку по Delphi:
Приложение:
Ответ отправил: KiberZero (статус: 5-ый класс)
Ответ отправлен: 14.12.2006, 19:24 Оценка за ответ: 5
Вопрос № 66.929
Доброе время суток эксперты!
У меня опять проблема((( С клавиатуры вводится число (от нуля до миллиона). Необходимо записать это сумму словами огласно правилам русского языка. и проблема в том что мне наждо сделать это в console aplication(((я заню что есть даже функция но вот в консоли ничего незнаю((((
Отвечает: Алтунин Василий Владимирович
Здравствуйте, Тесленко Максим Юревич!
В приложении ссылки на ряд примеров функции перевода. Работа с консолью хорошо описана тут http://www.gptelecom.ru/Articles/Console/index.htm
В приложении Вы увидете код рабочего консольного приложения, которое переводит число в его строковое представление...
Так как при выводе текста на кирилице в окно консоли, то необходимо сделать преобразование кодировок таким методом:
sn:= StrAlloc(Length(st) + 1);
AnsiToOem(Pchar(st),sn);
write(sn);
StrDispose(sn);
readln;
В программе используется функция GetRepresentationInWords, которая и делает преобразование числа в его строковое представление (функция была взята со старого доброго DelphiWorld).
Good Luck!!!
Приложение:
--------- Господь Бог - это всего лишь сверхмощный генератор случайных чисел, в соответствии с которыми сочетаются события на Земле. Генератор случайных чисел - и только.
Ответ отправил: Gh0stik (статус: Практикант)
Ответ отправлен: 14.12.2006, 12:33
Вопрос № 66.975
Здраствуйте!
Столкнулся с проблемой. Могу работать с одним файлом через OpenDialog, но не могу с несколькими.
Есть папка(Main). В ней подпапки(1,2,3...N). В каждой из этих подпапок лежит по несколько файлов.
Вопрос - как сделать так чтобы программа получила список всех файлов в папке(Main) для их дальнейшей обработки.
Отвечает: Nick_K
Здравствуйте, Петров Алексей Михайлович!
В свойствах Open Dialog надо включить выбор нескольких файлов(multiselect). После этого создаешь список, перечисляешь файлы, выбранные в Opendialog и добавляешь в него(в созданный список).
Ответ отправил: Nick_K (статус: 1-ый класс)
Ответ отправлен: 14.12.2006, 16:26
Отвечает: sir henry
Здравствуйте, Петров Алексей Михайлович!
Немножко дополню предыдущий ответ.
Добавляем возможность выбора нескольких файлов:
OpenDialog1.Options:=[ofAllowMultiSelect];
Для более удобной работы с несколькими выбраными файлами, у OpenDialog есть свойство Files типа TStrings, в котором хранится список выбранных файлов.
If OpenDialog1.Open Then
For i:=0 To OpenDialog1.Files.Count-1 Do
Begin
{Здесь Вы проводите необходимые операции над файлами}
End;
Ответ отправил: sir henry (статус: Академик) Россия, Красноярск ---- Ответ отправлен: 14.12.2006, 18:57
Вопрос № 67.048
Доброго времени суток уважаемые эксперты.
Мне надо используя процедуру вывести на экран массив (двумерный, квадратный). С выводом проблем нету, обычное поле TMemo и пару циклов For. Проблема в том что сам массив объявляется в нутри процедуры, на основании введенной переменной (Function Mas(n:integer); var m: array [1..n,1..n] of integer;). Как можно обьявить массив в данном случаи? Ведь при объявлении можно использовать только цифры и константы. Помогите плиз.
Отправлен: 15.12.2006, 05:30
Вопрос задал: Sarymian (статус: 4-ый класс)
Всего ответов: 5 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Алтунин Василий Владимирович
Здравствуйте, Sarymian!
Вы можете использовать динамический массив, как это показанно в приложении. Массив может быть квадратным, прямоугольным, треугольным - это без разницы. Динамический массив позволяет в любое время изменить длинну и размерность массива...
Приложение:
--------- ... Дорогу осилит Идущий ...
Ответ отправил: Алтунин Василий Владимирович (статус: 3-ий класс)
Ответ отправлен: 15.12.2006, 05:43 Оценка за ответ: 5 Комментарий оценки: Спс. Литры выпитого кофе негативно сказываются на мозги... совсем забыл про динамический массив.
Отвечает: sir henry
Здравствуйте, Sarymian!
Добавлю еще, хотя в хелпе об этом не написано, но присвоить размер двумерному динамическому массиву можно за один раз:
Procedure Mas(n:integer);
var
m: array of array of integer;
Begin
SetLength(m, n, n);
...
End;
Только учтите, что в случае с динамическими массивами начальный индекс массива начинается всегда с 0, поэтому работа с ним будет идти так:
Procedure Mas(n:integer);
var
m: array of array of integer;
i, j: integer;
Begin
Randomize;
SetLength(m, n, n);
For i:=0 To n-1 do
For j:=0 To n-1 do
ar[i, j]:=Random(15);
...
End;
Ответ отправил: sir henry (статус: Академик) Россия, Красноярск ---- Ответ отправлен: 15.12.2006, 06:03 Оценка за ответ: 5 Комментарий оценки: Отлично! Спс.
Отвечает: monah
Здравствуйте, Sarymian!
Хочу добавить самую малость. Динамические массивы необходимо освобождать самостоятельно. ar:=nil или setlength(ar, 0);
--------- festina lente
Ответ отправил: monah (статус: Студент)
Ответ отправлен: 15.12.2006, 08:04 Оценка за ответ: 5 Комментарий оценки: Ага а вот этого незнал:( Спс.
Отвечает: Bouffon
Здравствуйте, Sarymian!
unit Unit1;
{$R *.dfm}
Function Mas(n:integer):integer;
type
massiv = array of integer;
var
mass: array of massiv;
i,j: integer;
d:string;
begin
setlength (mass,n,n);
for i:=0 to n-1 do
begin
for j:=0 to n-1 do
begin
mass[i,j]:=random(12);
d:=d+ inttostr(mass[i,j])+ ' ';
end;
form1.Memo1.Lines.Add(d);
d:='';
end;
result:=1;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
mas(strtoint(edit1.Text));
end;
end.
попробуй если я правильно понял вопрос то поможет
если будут вопросы пиши на аську 458786618
Ответ отправил: Bouffon (статус: 1-ый класс)
Ответ отправлен: 15.12.2006, 12:28 Оценка за ответ: 5 Комментарий оценки: Да поняли вы правильно, ток мне надо было через процедуру выполнить вывод массива:) Это я уже от 4-х бессоных ночей не правильно написал пример через функцию.
Отвечает: Писарев, Павел, Юрьевич
Здравствуйте, Sarymian!
Попробуй использовать динамический массив.
Ответ отправил: Писарев, Павел, Юрьевич (статус: 2-ой класс)
Ответ отправлен: 15.12.2006, 15:52
Вопрос № 67.057
Добрый день!
Существует необходимость реализации работы клиента подключаемого к серверу через CORBA интерфейс (проверка пользователя, запрос, ответ). Как это можно реализовать или с чего лучше начать? Если возможно приведите пожалуйста пример. Заранее большое спасибо.
Отправлен: 15.12.2006, 08:08
Вопрос задал: Dr. Johns (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 2)
Отвечает: sir henry
Здравствуйте, Dr. Johns!
Вот по этой ссылке:
http://www.excode.ru/arttopic280.html
есть несколько статеек и простых примерчиков.
Ответ отправил: sir henry (статус: Академик) Россия, Красноярск ---- Ответ отправлен: 15.12.2006, 08:31 Оценка за ответ: 5 Комментарий оценки: Огромное спасибо за предоставленную ссылку! Классная страничка.