Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Делфи _ Графический интерфейс в Делфи

Автор: AlexSCH 5.07.2006 19:35

Возможно ли создать в Делфи программу для отображениря графиков, причем графики должны выделятся, измерятся между ними разница по времени? Используя TChart, я так понял, ничего этого не достигнешь (кроме как графики построить), там построенные графики являются частью панели отображения и не являются интерактивными. Есть ли в Делфи компонент намного сильнее и продвинутей чем TChart, именно ориентированный на интерактивность отображаемой графики? (Ну например клацнул на график и в всплывающем меню посмотрел что это за канал, клацнул на второй график посмотрел разницу по фазе между ними и т.д.)
И еще вопрос, возможно ли по событию в делфи запускать абсолютно левый файл на диске?

Заранее спасибо.

Автор: #$# PaVeL #$# 6.07.2006 12:17

Начну с конца!

1) Пожалуйста! smile.gif
2) Левый файл запустить можно примеры:
А)ShellExecute(Application.Handle, 'Open', 'Имя файла', 'Параметры', 'Директория', 0)
Б)WinExec('Имя файла с параметрами', 0)
3)По поводу TChart изучи компонент повнимательнее - всё что ты сказал вполне можно сделать с помощью этого самого компонента!

Автор: hardcase 8.07.2006 19:02

Цитата(AlexSCH @ 5.07.2006 16:35) *
там построенные графики являются частью панели отображения и не являются интерактивными. Есть ли в Делфи компонент намного сильнее и продвинутей чем TChart, именно ориентированный на интерактивность отображаемой графики?

странно, на основе TChart я делал динамические графики.....
В TSeries можно менять точки - это моментально отражается на экране.
Прочитай документацию к TChart - всё, что ты перечислил можно сделать на его основе.
Цитата(AlexSCH @ 5.07.2006 16:35) *

И еще вопрос, возможно ли по событию в делфи запускать абсолютно левый файл на диске?
Что ты понимаешь под "абсолютно левый файл"? Есть такая API функция CreateProcess - она может создать процесс от имени текущего пользователя из указанного исполняемого файла, будь то EXE BAT или другие типы файлов, разрешённых к исполнению (например сценарии на VP JScript или Perl). Есть также CreateProcessAsUser - она может породить процесс от именю другого пользователя, например от имени Системы rolleyes.gif

Автор: AlexSCH 11.07.2006 19:10

Спасибо за советы, с TChart разбираюсь....
Кстати, каким образом можно очистить серии в TChart именно во время выполнения программы, но учитывая то что графики строится еще будут?
Пробовал:
Chart1.Series[i].Clear
очистить экран от графиков получилось, но повторно не выходя из программы стоится они не захотели, я так понял это связано с тем, что эта команда полностью удаляет списки серий а не их содержимое, а серии в свою очередь создаются не в тексте программы, а были созданы простым добавлением и указанием параметров при помощи меню редактирования компонента TChart.

Автор: hardcase 11.07.2006 19:34

Цитата(AlexSCH @ 11.07.2006 15:10) *
Спасибо за советы, с TChart разбираюсь....
Кстати, каким образом можно очистить серии в TChart именно во время выполнения программы, но учитывая то что графики строится еще будут?

Когда ты создаёшь серию через дизаёнер, ей присваивается имя, как обычной компоненте (чем она по сути и является), например Series1. Говоришь просто
Код
Series1.Clear;
И все точки ассоциированные с серией сотрутся. К серии можно добавлять через Add, AddX, AddXY, AddArray, AddValue - и всё это динамически будет отображаться, на чарте.