С Новым годом! Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.91/32: Рейтинг темы: голосов - 32, средняя оценка - 4.91
0 / 0 / 0
Регистрация: 29.05.2011
Сообщений: 22

функция LineTo

29.05.2011, 15:24. Показов 6139. Ответов 52
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
нужно нарисовать некий объект, совершено любой по координатам точек, которые задаются из поля Memo, при помощи LineTo.

я пропустил тот семинар, препод не захотел объяснять и сказал чтобы я сам разбирался =(
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.05.2011, 15:24
Ответы с готовыми решениями:

Canvas->LineTo(X,Y);
как я понимаю функция Canvas->LineTo(X,Y); проводит прямую с текущей координаты в заданную(т,е в данном случае в X-Y вопрос как...

Не рисует (LineTo)
int x1 = StrToInt(Edit1->Text); int y1 = StrToInt(Edit1->Text); int x2 = StrToInt(Edit1->Text); int y2 = StrToInt(Edit1->Text);...

TCanvas LineTo отрисовка графика
Доброго всем времени суток! Не могу добиться быстрой отрисовки ( перерисовки) графика при его зумировании, выполняемое в событии...

52
0 / 0 / 0
Регистрация: 29.05.2011
Сообщений: 22
29.05.2011, 16:57  [ТС]
Студворк — интернет-сервис помощи студентам
он почему то после Memo1 яростно ругается
[C++ Error] Unit2.cpp(17): E2451 Undefined symbol 'Memo1'
0
 Аватар для iama
1360 / 988 / 119
Регистрация: 30.07.2010
Сообщений: 5,297
29.05.2011, 17:00
Это клиника. А мемо у тебя на форме есть?
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
29.05.2011, 17:00
а у вас на Форм2 компоненти Мемо1 и Имаге1 из Палитры компонентов добавлены ?
юноша, похоже, вы не только тот один семинар пропустили ...
0
0 / 0 / 0
Регистрация: 29.05.2011
Сообщений: 22
29.05.2011, 17:16  [ТС]
ну мемо1 на 1 форме, а все "художество" должно рисаваться на 2 форме.

Добавлено через 14 минут
оооо чудо, заработало
теперь эта штука рисует одну линию, но надо из этих линий сделать какую либо неведумую херь, то есть все эти линии должны замкнуться, мне для это надо много раз прописать "Form1->Memo1->Lines->Add"?
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
29.05.2011, 17:28
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
  Memo1->Lines->Add("42");
  Memo1->Lines->Add("24");
  Memo1->Lines->Add("10");
  Image1->Canvas->LineTo(
             StrToInt(Memo1->Lines->Strings[0]),
             StrToInt(Memo1->Lines->Strings[1])
  );
  Image1->Canvas->LineTo(
             StrToInt(Memo1->Lines->Strings[1]),
             StrToInt(Memo1->Lines->Strings[2])
  );
  Image1->Canvas->LineTo(
             StrToInt(Memo1->Lines->Strings[2]),
             StrToInt(Memo1->Lines->Strings[0])
  );
индусы отдыхают...
0
0 / 0 / 0
Регистрация: 29.05.2011
Сообщений: 22
29.05.2011, 17:32  [ТС]
а как сделать, чтобы я сам вбивал координаты в само мемо и оно рисовало?
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
29.05.2011, 17:51
На Форм2 поставь компонент Эдит1 и кнопку Буттон , если там кнопок нет, то это будет Буттон1 . Потом в Инспекторе объектов сделай обработчик для это Буттон1 , в этом обработчике напиши
C++
1
Memo1->Lines->Add(Edit1->Text);
для очистки Мемо1 на Форм2 добавь еще одну кнопку и в обработчике єтой кнопки напиши
C++
1
Memo1->Clear();
учти, что приведенный выше код работает только для первых трех строчек в Мемо1 .

Добавлено через 1 минуту
Чтобы оно само рисовало - добавь на Форм2 еще одну кнопку и напиши в ее обработчике
C++
1
2
3
4
5
6
7
8
9
10
11
12
Image1->Canvas->LineTo(
             StrToInt(Memo1->Lines->Strings[0]),
             StrToInt(Memo1->Lines->Strings[1])
  );
  Image1->Canvas->LineTo(
             StrToInt(Memo1->Lines->Strings[1]),
             StrToInt(Memo1->Lines->Strings[2])
  );
  Image1->Canvas->LineTo(
             StrToInt(Memo1->Lines->Strings[2]),
             StrToInt(Memo1->Lines->Strings[0])
  );
оно будет рисовать само при нажатии на кнопку.
0
0 / 0 / 0
Регистрация: 29.05.2011
Сообщений: 22
29.05.2011, 17:52  [ТС]
Цитата Сообщение от LK Посмотреть сообщение
На Форм2 поставь компонент Эдит1 и кнопку Буттон , если там кнопок нет, то это будет Буттон1 . Потом в Инспекторе объектов сделай обработчик для это Буттон1 , в этом обработчике напиши
C++
1
Memo1->Lines->Add(Edit1->Text);
для очистки Мемо1 на Форм2 добавь еще одну кнопку и в обработчике єтой кнопки напиши
C++
1
Memo1->Clear();
учти, что приведенный выше код работает только для первых трех строчек в Мемо1 .

Добавлено через 1 минуту
Чтобы оно само рисовало - добавь на Форм2 еще одну кнопку и напиши в ее обработчике
C++
1
2
3
4
5
6
7
8
9
10
11
12
Image1->Canvas->LineTo(
             StrToInt(Memo1->Lines->Strings[0]),
             StrToInt(Memo1->Lines->Strings[1])
  );
  Image1->Canvas->LineTo(
             StrToInt(Memo1->Lines->Strings[1]),
             StrToInt(Memo1->Lines->Strings[2])
  );
  Image1->Canvas->LineTo(
             StrToInt(Memo1->Lines->Strings[2]),
             StrToInt(Memo1->Lines->Strings[0])
  );
оно будет рисовать само при нажатии на кнопку, которой ты можеш дать названия (капш по-русски) "Нарисуй мне красиво" .
но у меня форм2 по условию в начале программы скрыто, и открыта только форм1, в котором стоит мемо, в которое необходимо ввести координаты той неведомой херни, которая на рисуется на форм2.
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
29.05.2011, 17:57
все строки типа
C++
1
StrToInt(Memo1->Lines->Strings
замени на
C++
1
StrToInt(Form1->Memo1->Lines->Strings
и там, где у тебя в Юнит2.цпп написано
C++
1
#include "Unit2.h"
добавь под ним
C++
1
#include "Unit1.h"
и начинай собирать деньги на скачивание книги по С++ Билдеру и просто по С++
0
 Аватар для pomkalk
365 / 247 / 24
Регистрация: 03.04.2011
Сообщений: 558
Записей в блоге: 1
29.05.2011, 18:01
Я кажется инфаркт заработал!!! Вот наши будущие программисты, учиться самому делать нужно! а в том случае если не смог ни чего найти, сюда за советом! а не что бы за тебя все делали!!!! а больше всего убивают вопросы: А вот так то можно, а вот так!!! Все можно если постараться!!!
0
0 / 0 / 0
Регистрация: 29.05.2011
Сообщений: 22
29.05.2011, 18:07  [ТС]
Цитата Сообщение от LK Посмотреть сообщение
все строки типа
C++
1
StrToInt(Memo1->Lines->Strings
замени на
C++
1
StrToInt(Form1->Memo1->Lines->Strings
и там, где у тебя в Юнит2.цпп написано
C++
1
#include "Unit2.h"
добавь под ним
C++
1
#include "Unit1.h"
и начинай собирать деньги на скачивание книги по С++ Билдеру и просто по С++
формы я сразу связал, и строки и так заменял, иначе эта херь не пашет, я не понимаю как добиться того, чтобы я вводил свои координаты, ибо чтобы я в мемо не писал будет строить по тем что Add("24")/("10")/("48").

Добавлено через 1 минуту
Цитата Сообщение от pomkalk Посмотреть сообщение
Я кажется инфаркт заработал!!! Вот наши будущие программисты, учиться самому делать нужно! а в том случае если не смог ни чего найти, сюда за советом! а не что бы за тебя все делали!!!! а больше всего убивают вопросы: А вот так то можно, а вот так!!! Все можно если постараться!!!
программистом я не буду, у меня другая профессия и специализация, но в курсе этой специальности стоит программирование, так что не расстраивайтесь, хорошие у нас программисты растут =)
0
 Аватар для QVO
652 / 462 / 80
Регистрация: 26.10.2010
Сообщений: 1,263
Записей в блоге: 4
29.05.2011, 18:11
Мне кажется в твоем случае лучше использовать полигон или полилайн.
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
29.05.2011, 18:11
я не понимаю как добиться того, чтобы я вводил свои координаты, ибо чтобы я в мемо не писал будет строить по тем что Add("24")/("10")/("48").
просто удали оттуда строки
C++
1
2
3
  Memo1->Lines->Add("42");
  Memo1->Lines->Add("24");
  Memo1->Lines->Add("10");
да , и в Мемо ты можешь просто вручную добавить строки , без всяких эдитов , это ты меня "загонял" и я начал думать "по-програмистски"
0
0 / 0 / 0
Регистрация: 29.05.2011
Сообщений: 22
29.05.2011, 18:13  [ТС]
Цитата Сообщение от LK Посмотреть сообщение
просто удали оттуда строки
C++
1
2
3
  Memo1->Lines->Add("42");
  Memo1->Lines->Add("24");
  Memo1->Lines->Add("10");
тогда приложение пепестаёт работать

Добавлено через 57 секунд
Цитата Сообщение от Nouko Посмотреть сообщение
Мне кажется в твоем случае лучше использовать полигон или полилайн.
можно, но преподаватель нам этого не объяснял, и будет спрашивать это по полной, и понятным делом я этого не отвечу
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
29.05.2011, 18:15
да не перестанет, если ты добавишь строки в Мемо сам или через Эдит
0
 Аватар для QVO
652 / 462 / 80
Регистрация: 26.10.2010
Сообщений: 1,263
Записей в блоге: 4
29.05.2011, 18:16
Цитата Сообщение от Ivzr Посмотреть сообщение
можно, но преподаватель нам этого не объяснял, и будет спрашивать это по полной, и понятным делом я этого не отвечу
На форуме есть тык сюда
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
29.05.2011, 18:17
я тебе там так написал, потому что ты все сунул в единственное, что не надо было делать руками, а было готовое - в
C++
1
2
3
__fastcall TForm2::TForm2(TComponent* Owner)
        : TForm(Owner)
{
я ж не знал, что бы не будешь программистом, а думал, что так надо ...
0
0 / 0 / 0
Регистрация: 29.05.2011
Сообщений: 22
29.05.2011, 18:18  [ТС]
Цитата Сообщение от LK Посмотреть сообщение
да не перестанет, если ты добавишь строки в Мемо сам или через Эдит
оно просто не запускается и виснет
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
29.05.2011, 18:19
Nouko, ты молодец, но ему это все - до фени

Добавлено через 50 секунд
оно - это что ?
0
0 / 0 / 0
Регистрация: 29.05.2011
Сообщений: 22
29.05.2011, 18:20  [ТС]
Цитата Сообщение от LK Посмотреть сообщение
Nouko, ты молодец, но ему это все - до фени

Добавлено через 50 секунд
оно - это что ?
приложение
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.05.2011, 18:20
Помогаю со студенческими работами здесь

Нарисовать два чёрных кубика, используя MoveTo, LineTo
помогите нарисовать два чёрных кубика используя функции (MoveTo, LineTo и т.д) и перемещать их по экрану спомощью мыши. p.s. Мозги...

В C# есть какая-нибудь функция, аналогичная lineto в делфи?
Хочу написать простой графический редактор, чтобы для начала хотя бы просто мог рисовать линию курсором мыши, как в paint`е. В делфи я это...

LineTo
Здравствуйте! Кто-нибудь может показать пример только с LineTo (а то все примеры с графиками косинуса и синуса, а я только начинаю с WinApi...

LineTo: исходник
Здравствуйте, вообщем понятия не имею в какой раздел сувать вопрос: исходники canvas.lineTo, не получается написать штуковину (типа...

Стирание всех LineTo
Есть картинка, на ней по нажатию кнопки рисуется несколько линий с помощью LineTo. Как сделать чтоб при следующем нажатие старые линии...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru