Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Delphi

Выпуск № 395
от 24.02.2006, 11:21

Администратор:Калашников О.А.
В рассылке:Подписчиков: 258, Экспертов: 62
В номере:Вопросов: 5, Ответов: 19


Вопрос № 35678: Здравствуйте! Подскажите пожалуйста, как можео из моей програмки перезапустить другую (не мою). Закрыть ее и открыть заново. Спасибо....
Вопрос № 35697: Как правильно уничтожить объект созданный во время работы программы, например шейп....
Вопрос № 35703: Приветствую всех экспертов. Как обрабатывать сообщения Windows в главном модуле(приложение не создает формы)? Возможно ли это?...
Вопрос № 35709: Здравствуйте господа программисты. Извиняюсь за ламерский вопрос. Как установить соединенеие с интернетом? Заранее благодарен....
Вопрос № 35711: Подскажите вчём ошибка ??? Вот код: Но всё время выдаёт один и тотже ответ !!! работаю на Delphi 9.0 !!! Только разжуйте я новичок !!!...

Вопрос № 35.678
Здравствуйте! Подскажите пожалуйста, как можео из моей програмки перезапустить другую (не мою). Закрыть ее и открыть заново.
Спасибо.
Отправлен: 18.02.2006, 12:49
Вопрос задал: Мурник Роман (статус: 2-ой класс)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Delphin
Здравствуйте, Мурник Роман!
Найди окно. FindWindow();
Определи путь до проги.
Отправь ему WM_CLOSE SendMessage();
И запусти теперь по путю из 2 дейтсвия. ShellExecute(); // Из ShellApi.pas

---------
Обращаться в ICQ: 66550088 (Ally) или E-Mail: delphinster@gmail.com
Ответ отправил: Delphin (статус: Студент)
Отправлен: 18.02.2006, 13:51

Отвечает: Лучников Юрий Владимирович
Здравствуйте, Мурник Роман!
В приложении рассмотрен пример с Калькулятором...

Приложение:

Ответ отправил: Лучников Юрий Владимирович (статус: Студент)
Отправлен: 18.02.2006, 21:02

Отвечает: Leshiy2006
Здравствуйте, Мурник Роман!
Открыть -WinExec не забудьте про Uses ShellAPI
А закрыть средствами WinAPI FindWindow и CloseWindow
Удачи!
Ответ отправил: Leshiy2006 (статус: 3-ий класс)
Отправлен: 18.02.2006, 23:14


Вопрос № 35.697
Как правильно уничтожить объект созданный во время работы программы, например шейп.
Отправлен: 18.02.2006, 18:59
Вопрос задал: ququ1 (статус: Посетитель)
Всего ответов: 4
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: sir henry
Здравствуйте, ququ1!
То же что и предлагает Вам хелп - использовать метод Destroy. Только учтите, что после него Вы не должны больше обращаться к этому объекту, инче замучаетесь искать ошибку.
Ответ отправил: sir henry (статус: Академик)
Отправлен: 18.02.2006, 19:42

Отвечает: Ерёмин Андрей
Здравствуйте, ququ1!
Можно по-разному. Вот основные варианты: FreeAndNil(Shape1); или Shape1.Free; Первый способ надёжнее, т.к. методы самих компонент не всегда правильно срабатывают, а иногда и вообще не срабатывают.
---------
Нет правила без исключений. Правило без исключений - исключение из правил.
Ответ отправил: Ерёмин Андрей (статус: Профессионал)
Отправлен: 18.02.2006, 20:41

Отвечает: Delphin
Здравствуйте, ququ1!
У этого объекта будет метод Destroy;
Или Free;
одна можеш попробовать FreeAndNil();
После Free или Destroy сделай так чтобы освободить память:
MyObject := nil;
---------
Обращаться в ICQ: 66550088 (Ally) или E-Mail: delphinster@gmail.com
Ответ отправил: Delphin (статус: Студент)
Отправлен: 19.02.2006, 14:26

Отвечает: Ataman N. N.
Здравствуйте, ququ1!
Объект.Free; - уничтожение обеъкта.
Ответ отправил: Ataman N. N. (статус: 7-ой класс)
Отправлен: 20.02.2006, 15:43


Вопрос № 35.703
Приветствую всех экспертов.
Как обрабатывать сообщения Windows в главном модуле(приложение не создает формы)? Возможно ли это?
Отправлен: 18.02.2006, 21:04
Вопрос задал: Green (статус: 1-ый класс)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: sir henry
Здравствуйте, Green!
Окно должно быть по любому. Сообщения обрабатываются оконной процедурой.
Ответ отправил: sir henry (статус: Академик)
Отправлен: 19.02.2006, 06:01
Оценка за ответ: 4

Отвечает: Ерёмин Андрей
Hello, Green!
В принципе, возможно, но сложновато. Посмотрите статью. Может быть, она вам чем-то поможет.
---------
Нет правила без исключений. Правило без исключений - исключение из правил.
Ответ отправил: Ерёмин Андрей (статус: Профессионал)
Отправлен: 19.02.2006, 07:46
Оценка за ответ: 4


Вопрос № 35.709
Здравствуйте господа программисты. Извиняюсь за ламерский вопрос.
Как установить соединенеие с интернетом?
Заранее благодарен.
Отправлен: 18.02.2006, 23:38
Вопрос задал: Leshiy2006 (статус: 3-ий класс)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Лучников Юрий Владимирович
Здравствуйте, Leshiy2006!

Примерчик по вашему вопросу:
http://offline.burik.ru/delphi/dw/inet_connect.html

Успехов!
Ответ отправил: Лучников Юрий Владимирович (статус: Студент)
Отправлен: 19.02.2006, 00:00
Оценка за ответ: 5
Комментарий оценки:
Спасибо!

Отвечает: REFERI
Здравствуйте, Leshiy2006!
Зайдите на torry.net и наберите в строке поиска ras. Там полно компонентов для того чтобы установить соединение, различные мониторы, менеджеры... Есть даже готовые программы есть в виде исходников.
---------
Не судите, да не судимы будете...
Ответ отправил: REFERI (статус: Практикант)
Отправлен: 19.02.2006, 00:19
Оценка за ответ: 5
Комментарий оценки:
Спасибо!

Отвечает: sir henry
Здравствуйте, Leshiy2006!
Если речь идет о модемном соединении, то нужно запустить программу rasdial.exe:
ShellExecute(0, 'open', 'rasdial.exe', PChar(User+' '+Password), NIL, NIL, SW_SHOW);
Чтобы отключится:
rasdial.exe /DISCONNECT
Ответ отправил: sir henry (статус: Академик)
Отправлен: 19.02.2006, 05:53
Оценка за ответ: 5
Комментарий оценки:
Спасибо за помощь!


Вопрос № 35.711
Подскажите вчём ошибка ???
Вот код:
Но всё время выдаёт один и тотже ответ !!!
работаю на Delphi 9.0 !!!
Только разжуйте я новичок !!!

Приложение:

Отправлен: 19.02.2006, 00:14
Вопрос задал: Tamashev Denis M (статус: Посетитель)
Всего ответов: 7
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Лучников Юрий Владимирович
Здравствуйте, Tamashev Denis M!
Ну во-первых замечание:
Если у вас переменная Struc является флагом, то зачем ее объявлять вещественного типа? Если она у вас принимает только целочисленные значения.

Суть проблемы:
Результат всегда один, потому что вы сначала выводите (присваиваете ravno в label8.caption) результат, который еще не получен, а потом только вычисляете его.

Исправленный код в приложении...
Успехов...

Приложение:

Ответ отправил: Лучников Юрий Владимирович (статус: Студент)
Отправлен: 19.02.2006, 00:35
Оценка за ответ: 5
Комментарий оценки:
Спасибо !!!

Отвечает: sir henry
Здравствуйте, Tamashev Denis M!
Поместите label8.Caption:= 'Ответ: ' + FloatToStr(ravno); в самом конце процедуры, а то Вы выводите ответ ДО ТОГО как его вычисляете, т.е. ставите телегу впереди лошади. :)
Ответ отправил: sir henry (статус: Академик)
Отправлен: 19.02.2006, 05:57
Оценка за ответ: 5

Отвечает: SlavComp
Здравствуйте, Tamashev Denis M!
Я думаю, проблема в том, что вы не видите результатов работы программы. Если я ошибаюсь - исправьте, но если это так, то нужно строку
label8.Caption:= 'Ответ: ' + FloatToStr(ravno);
отправить в самый конец файла.
Для того, чтобы увидеть ответ, нужно его сначала посчитать, а потом выводить.

Если же у Вас ошибка другая - уточните, пожалуйста.
Удачи!!!

Приложение:

Ответ отправил: SlavComp (статус: 1-ый класс)
Отправлен: 19.02.2006, 14:13
Оценка за ответ: 5

Отвечает: Diman_A
Здравствуйте, Tamashev Denis M!
Ответ у вса не получается, потому что вы сначала выводите значение переменной ravno (в котором ничего нет), а только потом считаете его. Переместите строкуlabel8.Caption:= 'Ответ: ' + FloatToStr(ravno); в самый конец.
Ответ отправил: Diman_A (статус: 5-ый класс)
Отправлен: 19.02.2006, 14:32
Оценка за ответ: 5

Отвечает: Leshiy2006
Здравствуйте, Tamashev Denis M!Вы вначале выводите данные label8.Caption:= 'Ответ: ' + FloatToStr(ravno);,а только потом вычисляете

Приложение:

Ответ отправил: Leshiy2006 (статус: 3-ий класс)
Отправлен: 19.02.2006, 22:12
Оценка за ответ: 3
Комментарий оценки:
Уже ответили раз 300

Отвечает: Злоумышленник
Здравствуйте, Tamashev Denis M!
Эту строчку, показывающую результат label8.Caption:= 'Ответ: ' + FloatToStr(ravno); нужно ставить не ДО вычисления ravno, а ПОСЛЕ

Приложение:

---------
Почему нет встроенного языка 1С на мордовском? Было бы клёво!

Ответ отправил: Злоумышленник (статус: 3-ий класс)
Отправлен: 19.02.2006, 23:12

Отвечает: Ataman N. N.
Здравствуйте, Tamashev Denis M!
Ошибка елементарная, строку
label8.Caption:= 'Ответ: ' + FloatToStr(ravno);
нужно написать после вычисления переменной ravno, т.к., во-первых переменная ravno у Вас не инициализированна, а во-вторых, результат не будет отображаться в label8.
Ответ отправил: Ataman N. N. (статус: 7-ой класс)
Отправлен: 20.02.2006, 15:38
Оценка за ответ: 5


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.14 (бета) от 09.02.2006
Яндекс Rambler's Top100

В избранное