Вопрос № 34044: как в программе сделать синтаксис проверки perl скриптов я делал через оле объект но вес учу с active perl 10 mb...Вопрос № 34078: Добрый день. Подскажите, пожалуйста как из под Delphi сменить раскладку на клавиатуре например на укр.
Заранее благодарен.
.Вопрос № 34088: Здравствуйте,пожалуйста научите меня пользоваться процедурами и функциями.Как их правильно описывать и вызывать ?...Вопрос № 34103: Здравствуйте Уважаемые Эксперты! У меня така проблема, установил Delphi 2005 Architect, но по неизвестным мне причинам проекты C# Builder и Delphi Net не запускаются на выполнение, оно мне выдаёт "Unable to create process" (Не в состоянии с...Вопрос № 34107: Здравствуйте увважаемые эксперты. Уточняю свой вопрос № 34015
Проблема не в базе данных, а в том как создать массив форм чтобы
пользователь мог редактировать одновременно несколько записей, каждую в своей форме. Заранее спасибо....Вопрос № 34117: Здравствуйте!
Как правильно сделать.
Выбираем в ComboBox номер потока
если
выбрали строка 0, номер потока Text '1' запустили
если
выбрали строка 1, номер потока Text '2' запустили
если
выбрали строка 2, номер потока...
Вопрос № 34.044
как в программе сделать синтаксис проверки perl скриптов я делал через оле объект но вес учу с active perl 10 mb
Отвечает: Лучников Юрий Владимирович
Здравствуйте, Ножкин Миха Викторович!
Тут я вижу 2 выхода:
Или писать анализатор Perl-кода самому (что маловероятно и не стоит думаю потраченных усилий), или воспользоваться исходными кодами Perl интерпретатора (но интерпретатор написан на языке Си++) или придется носить дистрибутив Perl (что вы и предпринимали).
Отвечает: Ерёмин Андрей
Здравствуйте, Алексеев Александр Владимирович!
Да только недавно был подобный вопрос: http://rusfaq.ru?Step=info&Action=Question&ID=33625. "Код" Украины подскажу - 422.
--------- Работа - не волк, а произведение силы на расстояние!
Ответ отправил: Ерёмин Андрей (статус: Профессионал)
Отправлен: 25.01.2006, 17:00 Оценка за ответ: 5 Комментарий оценки: Огромное спасибо.
Отвечает: Лучников Юрий Владимирович
Здравствуйте, Алексеев Александр Владимирович!
ActivateKeyboardLayout(HKL_NEXT, KLF_REORDER); Изменяет попорядку раскладку среди установленных в системе.
LoadKeyboardLayout(
LPCTSTR pwszKLID, // name of layout to load
UINT Flags // keyboard layout flags
);
Меняет раскладку на нужную, где pwszKLID - код раскладки (к примеру английская 0x0409).
Отвечает: Diman_A
Здравствуйте, Алексеев Александр Владимирович!
В примере раскладка меняется на русскую, но можно переделать на любой язык, который есть в системе (шестнадцатеричное имя украинского - 00000422)
Приложение:
Ответ отправил: Diman_A (статус: 4-ый класс)
Отправлен: 26.01.2006, 05:09 Оценка за ответ: 5 Комментарий оценки: спасибо.
Вопрос № 34.088
Здравствуйте,пожалуйста научите меня пользоваться процедурами и функциями.Как их правильно описывать и вызывать ?
Отправлен: 25.01.2006, 19:06
Вопрос задал: Sassoft (статус: Посетитель)
Всего ответов: 5 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Jadd
Здравствуйте, Sassoft!
Идешь в описание класса и там в нужной секции пишешь:
procedure (); , где - имя процедуры
- передаваемые в процедуру параметры или ничего.
Пример:
procedure CalcNumber; -процедура без параметров
procedure CalcTwoNumbers(NumberOne: Integer; NumberTwo: Integer); - процедура с двумя параметрами.
Про виды параметров читай мануал по паскалю.
Функции описываются так:
function (): ; , где и - как и выше, а - возвращаемое значение.
Далее. Идешь в раздел implementation и пишешь тело функции, т.е. то, что она будет делать, если она не чистая виртуальная.
Например:
function MyClass.CalcTwoNumbers(NumberOne: Integer; NumberTwo: Integer);
begin
//тело функции
end;
Из этого генерится объектник и тд и тп.
Вызов такой. Если изнутри класса, то по имени функции, например
CalcTwoNumbers(2, 3);
Если где-то еще, то нужно указывать имя экземпляра класса (т.е. объект). Например, допустим, что myobj: TMyClass, где TMyClass - класс, в котором объявлена процедура, тогда вызов будет выглядеть так:
myobj.CalcTwoNumbers(2, 3);
Сфункциями тоже самое, но тут можно еще получить возвращаемое значение.
Удачи.
--------- Если в сердце дверь закрыта, нужно в печень постучаться
Ответ отправил: Jadd (статус: Специалист)
Отправлен: 25.01.2006, 19:37
Отвечает: Minor
Здравствуйте, Sassoft!
Это очень обширная тема, и рассказывать про нее можно много, поэтому лучше
посмотрите вот здесь: http://delphid.dax.ru/pascal/
а также для дальнейшего изучения Делфи можете почитать вот этот курс:
http://delphid.dax.ru/study/
и вообще это хороший сайт, и я надеюсь вы найдете там для себя много полезной инфрмаци....
Удачи Вам!
--------- Не руби сук, на котором сидишь! Вообще слезь с дерева, человек!
Ответ отправил: Minor (статус: 2-ой класс)
Отправлен: 25.01.2006, 19:49
Отвечает: REFERI
Здравствуйте, Sassoft!
Вам надо бы почитать какую-нибудь книжку или хотя бы статью...
"научите меня пользоваться процедурами и функциями" - этого в контексте ответа не расскажишь, да и не научишься этому за один присест...
Вот ссылка на учебник http://gorlovsky.narod.ru/down/Delphi_6.zip
Глава 8. ПРОЦЕДУРЫ И ФУНКЦИИ
Почитайте. Там все понятно описано.
Желаю побыстрее освоить материал!
--------- Не судите, да не судимы будете...
Ответ отправил: REFERI (статус: Студент)
Отправлен: 25.01.2006, 21:12
Отвечает: Меркулов Алексей
Здравствуйте, Sassoft! Укажите свой e-mail попрбую помочь с информацией.
Ответ отправил: Меркулов Алексей (статус: 4-ый класс)
Отправлен: 25.01.2006, 22:28
Отвечает: Лучников Юрий Владимирович
Здравствуйте, Sassoft!
Прототип описания процедуры:
procedure имя_процедуры(список_параметров);
var
Секция_описания_локальных_переменных
begin
Тело_процедуры
end;
Пример процедуры:
procedure MyProcedure(a, b: Integer);
var
s: Integer;
begin
s := a + b;
...что_то_тут_делаем...
end;
Пример вызова процедуры:
...
MyProcedure(s, g);
...
============================
Прототип описания функции:
function имя_функции(список_параметров): тип_возвращаемого_значения;
var
Секция_описания_локальных_переменных
begin
...Тело_функции...
end;
Пример функции:
function MyFunction(a, b: Integer): Integer;
var
s: Integer;
begin
s := a + b;
...что_то_тут_делаем...
Result := s; {Возращаем результат путем присваивания его особой переменной Result}
end;
Пример вызова функции:
...
Rez := MyFunction(s, g); {Rez будет равен s}
...
Успехов!!!
Здравствуйте Уважаемые Эксперты! У меня така проблема, установил Delphi 2005 Architect, но по неизвестным мне причинам проекты C# Builder и Delphi Net не запускаются на выполнение, оно мне выдаёт "Unable to create process" (Не в состоянии создать процесс) запускаются только проекты Delphi Win32. Сразу скажу Visual J# .NET RP, NET Framework 1.1, Framework (SDK), XML Core Services установленны. Заранее спасибо.
Отвечает: Werewolf
Здравствуйте, Шишкин М.А.!
Попробуй включить службу терминалов в оснастке Сервисы.
Удачи.
Ответ отправил: Werewolf (статус: Студент)
Отправлен: 25.01.2006, 21:47
Отвечает: REFERI
Здравствуйте, Шишкин М.А.!
Нужно просто сохранить проект. Т.е. создали новый проект, сохранили, написали код и т.д., сохранили - теперь запускаем...
Не знаю зачем так сделали, но это меня приучило сразу сохранять проекты...
Хотя сомнительно это все...
--------- Не судите, да не судимы будете...
Ответ отправил: REFERI (статус: Студент)
Отправлен: 25.01.2006, 21:59
Отвечает: Меркулов Алексей
Здравствуйте, Шишкин М.А.! Возможно у вас не полный дистрибутив попробуйте воспользоваться другими дисками
Ответ отправил: Меркулов Алексей (статус: 4-ый класс)
Отправлен: 25.01.2006, 22:31
Отвечает: Сергей Т.
Здравствуйте, Шишкин М.А.!
Где-то слышал, что эти проблемы могут быть связаны с русским XP, я же эту проблему решил просто найдя нормальный дистрибутив программы.
Ответ отправил: Сергей Т. (статус: 2-ой класс)
Отправлен: 25.01.2006, 23:31
Вопрос № 34.107
Здравствуйте увважаемые эксперты. Уточняю свой вопрос № 34015
Проблема не в базе данных, а в том как создать массив форм чтобы
пользователь мог редактировать одновременно несколько записей, каждую в своей форме. Заранее спасибо.
Отвечает: Архангельский Андрей Германович
Здравствуйте, Меркулов Алексей!
В правильной постановке вопроса содержится половина ответа.
То что ты хочешь называется ControlGrid (DBCtrlGrid)
Это сетка, в которой каждая запись показывается как панель, на которую можно сажать Edit, Memo,Image в произвольном порядке. Количество записей и их расположение выбираешь сам
Здравствуйте!
Как правильно сделать.
Выбираем в ComboBox номер потока
если
выбрали строка 0, номер потока Text '1' запустили
если
выбрали строка 1, номер потока Text '2' запустили
если
выбрали строка 2, номер потока Text '3' запустили
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
if
ComboBox1.Items.Strings [0];
then begin
co:= perebor.Create(true);
co.Resume;
co.Priority:= tpNormal;
end;
if
ComboBox1.Items.Strings [1];
then begin
coo:= pereborr.Create(true);
coo.Resume;
coo.Priority:= tpNormal;
end;
if
ComboBox1.Items.Strings [2];
then begin
coc:= pereb.Create(true);
coc.Resume;
coc.Priority:= tpNormal;
end;
end;
Отправлен: 25.01.2006, 23:58
Вопрос задал: Serhik_z (статус: Посетитель)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Архангельский Андрей Германович
Здравствуйте, Serhik_z!
Нужно учить матчасть!
Case ComboBox1.ItemIndex of
0 : Begin
co:= perebor.Create(true);
co.Resume;
co.Priority:= tpNormal;
end;
1 : Begin ... end;
2 : Begin ... end;
3 : Begin ... end;
case ComboBox1.ItemIndex of
0:
begin
co:= perebor.Create(true);
co.Resume;
co.Priority:= tpNormal;
end;
1:
begin
coo:= pereborr.Create(true);
coo.Resume;
coo.Priority:= tpNormal;
end;
2:
begin
coc:= pereb.Create(true);
coc.Resume;
coc.Priority:= tpNormal;
end;
end;
а вообще, у тебя 2 строчки повторяются, так что можно, даже нужно, делать так:
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
case ComboBox1.ItemIndex of
0: co:= perebor.Create(true);
1: coo:= pereborr.Create(true);
2: coc:= pereb.Create(true);
end;
co.Resume;
co.Priority:= tpNormal;
end.
--------- Пишем баги на любые патчи :-]
Ответ отправил: nimoid (статус: 7-ой класс)
Отправлен: 26.01.2006, 08:45
Отвечает: Ataman N. N.
Здравствуйте, Serhik_z!
Можете для потоков создать массив
ptc:array[0..2] of TThread;
При создании формы заполнить массив
ptc[0] := perebor;
ptc[1] := coo;
ptc[2] := coc;
А дальше так:
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
ptc[ComboBox1.ItemIndex].Create(true);
ptc[ComboBox1.ItemIndex].Resume;
ptc[ComboBox1.ItemIndex].Priority:= tpNormal;
end;
Ответ отправил: Ataman N. N. (статус: 5-ый класс)
Отправлен: 26.01.2006, 16:47