|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Почему не запускается форма на Visual C?
Регистрация: 14.12.2008
Сообщений: 1,134
|
||
Просмотров: 13211
|
|
||||
Считаешь, что на форуме телепаты? Без кода и с таким скрином... Попробуй сам глянуть свой скрин и попытаться прочитать, что там написано (я попиксельно распознавать текст не в состоянии).
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Цитата:
![]() Я не пишу на Visual C++ (с этим - к Александру Ривилису), но тем не менее, открыв указанный проект вижу, что в "юзингах" ты указал пространства имён, а заголовочные файлы где? Он у тебя только один, да и тот только лишь с определением окна... И ещё, возможно я конечно и ошибаюсь, но... Зачем определение подобного окна засунуто в заголовочный файл в раздел "заголовочные файлы"? Я бы разместил его как файл кода в блоке "Файлы исходного кода", хотя х.з. - может в Visual C++ так и пишут... Однако то, что ты даже не в курсе, что нужно подключить заголовки, дабы заработали твои "юзинги" + "Нажимаю треугольник, форма не запускается. Что ещё надо сделать чтобы форма запустилась?"(с) - это наводит на мысль, что ты даже не читал информацию по теме программирования на обозначенном языке, но тем не менее берёшься писать код. Offtop: Воздержусь от нелестных комментариев в адрес топикстартера - я и без того тут "отрицательный персонаж"...
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: Последний раз редактировалось hwd, 14.03.2011 в 08:24. |
||||
![]() |
|
||||
Регистрация: 14.12.2008
Сообщений: 1,134
|
Спасибо hwd! Признаюсь моей основной задачей было запустить форму. Поэтому я взял первую строку из списка папок, нажал на ней правой кнопокой и выбрал команду добавить..., потом нашёл форму приложения Windows и нажал ОК. Таким образом форма попала в "файлы заголовков". И насколько я понял надо эту форму на всякий случай перетащить в "файлы исходного кода", или наверное в "файлы ресурсов" если планируется из этой формы только вызывать подпрограммы из других файлов. Такой подход наверное более современен и практичен в современном программировании?
P.S. Книги читать очень дорого, долго и трудно, простите. Гораздо веселее постигать азы программирования в процесе общения! |
|||
![]() |
|
||||
Цитата:
Цитата:
Не читая книг ничего нормального никогда не напишешь, ибо полагаться на то, что "добрый дядя с форума" всегда ответит и разжуёт - это 100% гарантия того, что навыки программирования останутся на дохлую тройку, а если и вырастут до четвёрки, то к пенсии. имхо.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
это только кличка Регистрация: 22.10.2006
Москва
Сообщений: 252
|
Цитата:
В файл Приветствие.cpp нужно добавить функцию - точку входа: Код:
И не пишите никогда ничего в коде на русском. Это, увы, дурной тон... Мог бы предложить пару-тройку приличных книг, но поскольку их "читать очень дорого, долго и трудно", то не буду. Непонятно, как вам удалось стать мишей-инженером с таким-то подходом.
__________________
...в шее моей жилы железные, и лоб мой - медный... Последний раз редактировалось Pastor, 14.03.2011 в 11:28. |
|||
![]() |
|
||||
Регистрация: 14.12.2008
Сообщений: 1,134
|
Спасибо всем!
Кажется я понял почему не запускается форма. Просто при создании проекта или решения (в чём разница непонятно) я поставил опцию "создать пустой проект" и файлов поэтому в моих папках нету. Попробовал создать новый проект без опции и в каждую папку добавились по 3-4 файла. Добавил так же форму. Запускаю на выполнение появляется окно с меню которого в списке форм у меня нет. И где это окно успело запрограммироваться? В этом окне есть меню Файл->Выход и Справка. А вот форма никак не запускается. Наверное надо добавить команду в меню чтобы запускалась форма. Подскажите пожалуйста в каком файле и в каком месте файла надо добавить код чтобы появилось меню запускающее форму. И ещё если знаете подскажите пожалуйста как в этом проекте получить доступ к объектам AutoCAD? P.S. Файл проекта прилагается |
|||
![]() |
|
||||
Тебе не повезло - из тех, кому лень/трудно/дорого читать книжки, здесь вольготно живётся только тем, кто "заказывает" код на AutoLisp и VisualLisp. Так что если хочешь получить готовое решение - просто в условии своей задачи поменяй "Visual C" на "Lisp" и будет тебе счастье - за тебя всё напишут (причём не в одном экземпляре) и расскажут что с этим делать. Т.о. на лисп тебя потихоньку поднатаскают здесь, а Visual C - это не тот язык, за который можно браться с твоим "весёлым" (с) подходом к самообучению.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
это только кличка Регистрация: 22.10.2006
Москва
Сообщений: 252
|
Ему поможет Modis (СашаИнженер). Он умеет, не читая книги, клепать формы на C# и получать доступ к объектам AutoCAD. Родственная душа.
![]()
__________________
...в шее моей жилы железные, и лоб мой - медный... Последний раз редактировалось Pastor, 14.03.2011 в 20:26. |
|||
![]() |
|
||||
Цитата:
![]() Offtop: п.с. Это будет могучий союз ![]()
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
это только кличка Регистрация: 22.10.2006
Москва
Сообщений: 252
|
Цитата:
__________________
...в шее моей жилы железные, и лоб мой - медный... |
|||
![]() |
|
||||
Цитата:
![]()
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
это только кличка Регистрация: 22.10.2006
Москва
Сообщений: 252
|
Энергия плюс фантазия, да над всем этим - благодать божья. Больше ничего и не нужно, пожалуй.
У меня нет ни того, ни другого, ни третьего. Потому и злой. А может потому ничего и нет, что злой. Не знаю. Так что, парни-инженеры, не принимайте мой скрип близко к сердцу. Если долго мучиться, всё у вас получится.
__________________
...в шее моей жилы железные, и лоб мой - медный... Последний раз редактировалось Pastor, 14.03.2011 в 22:07. |
|||
![]() |
|
||||
Регистрация: 12.06.2010
Липецк, Москва
Сообщений: 534
|
Ой, что-то щеки у меня покраснели
![]() Ну а так - с С++ я не то, чтобы обломался... Просто на программера я не учился, а С++ достаточно (на мой взгляд) непростой язык - без подготовки писать сложно. Но если писал на Лисп, то на C# не так сложно перейти. Хотя Андрей (Ой, простите - hwd ![]() ![]() В общем - сорри за оффтоп ![]() Последний раз редактировалось Modis, 15.03.2011 в 01:23. |
|||
![]() |
|
||||
Регистрация: 18.12.2010
Сообщений: 5,108
|
|
|||
![]() |
|
||||
Регистрация: 14.12.2008
Сообщений: 1,134
|
Если подумать логически, то форма является классом определённым в программе. Чтобы запустить эту форму надо создать экземпляр класса и применить один из встроенных методов этого класса чтобы форма отображалась на экране.
Подскажите пожалуйста что это за метод и что за класс надо смотреть в справке? Нашёл вот что: Код:
Если форма называется "Приветствие" то код наверное должен выглядеть так: Код:
Последний раз редактировалось МишаИнженер, 15.03.2011 в 07:40. |
|||
![]() |
|
||||
Регистрация: 28.09.2006
Dnepropetrovsk
Сообщений: 683
|
МишаИнженер, Думаю вам лучше погуглить готовые исходники программ и покопать их код. Результат будет выше, чем просто выдирать из кода цитаты и спрашивать почему не работает
![]() Или покопать на спецфорумах http://forum.sources.ru/index.php?showforum=2 http://forum.vingrad.ru/forum/C++C.html http://www.codeproject.com/ |
|||
![]() |
|
||||
Регистрация: 11.10.2010
Сообщений: 979
|
Код накидал без проверок на красивость. VS2008.
Форма, может, и является классом, да вот проблема - в #13 чего-то не видел события Load. P.S. От темы отписываюсь, поскольку разбираться с VC++ вместо того, чтобы читать C#, нет никакого желания.
__________________
(/= RegDate StartReadDate) |
|||
![]() |
|
||||
Регистрация: 14.12.2008
Сообщений: 1,134
|
Лиспер, спасибо за подсказку! Но мне надо чтобы форма запускалась после выбора команды "Ввод данных" в меню "Файл", а не сразу при запуске проекта.
Посмотрел список объектов в своей программе, объекта или класса под названием "Приветствие" не нашёл. Значит такого класса ещё нет. Тогда как мне сообщить программе, что надо запустить форму "класса Привествие"? |
|||
![]() |
|
||||
Цитата:
имхо.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Регистрация: 11.10.2010
Сообщений: 979
|
Чего-то в этой теме не того... У меня ощущение некоторой сюрреалистичности происходящего. МишаИнженер, переведи для тех, кто на бронепоезде, как понимать прикажешь фразу
Цитата:
![]() Как ты эту команду выберешь-та, ась? Откель вызывать собираисси?
__________________
(/= RegDate StartReadDate) |
|||
![]() |
|
||||
Да вроде понятно чего он хочет - в меню "Файл" автокада должен присутствовать пункт меню "Ввод данных". Миша на нём кликает мышкой и открывается его волшебное окошко.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Регистрация: 14.12.2008
Сообщений: 1,134
|
В моей программе (код которой прикреплён к сообщениям, ищите наиболее позднюю версию) при запуске программы появляется окно которое не запрограммировано как форма, а оно просто само появляется, потому что программа такая. И в этом окне есть меню "Файл" в котором есть команда "Ввод данных" эту команду я сам туда прописал в это меню при помощи редактирования файла с расширением .rc (по моему). Этот файл из дерева объектов простым двоёным нажатием нельзя открыть так как при этом появлятся сообщение что этот файл занят другим редактором. Мне удалось открыть это файл только с помощью инструмента поиск данных. При поиске какой-то переменной открылся этот файл и в нём прописаны строки меню начального окна которое появляется при запуске программы. В это меню я добавил новую строку "Ввод данных" и присовил этому меню код ID_INPUT, которую предварительно объявил и определил.
Далее теперь надо чтобы после запуска программы при выборе команды "Ввод данных" в меню "Файл" запускалось диалоговое окно "Приветствие", но вместо этого запускается диалоговое окно "О программе" и заставить запускаться диалоговое окно "Приветствие" у меня никак не получается. Я прошу помочь мне но многие или не знают как это делается или просто им лень разобраться в коде и посоветавать несколько строчек. Дело наверное в общем простое, но пока нигде в литературе я не нашёл как запускать формы с помощью выбора команды в меню или с помощью нажатия кнопки. |
|||
![]() |
|
||||
Регистрация: 11.10.2010
Сообщений: 979
|
Да нет, это не программа такая... Это объяснения такие. МишаИнженер, ты хотя б на VBA чего-нибудь напиши сначала. Глядишь, и хоть понимание того, "что такое событие" придет... И фраз типа "само появляется" уже не будет.
__________________
(/= RegDate StartReadDate) |
|||
![]() |
|
||||
Цитата:
Цитата:
![]()
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Регистрация: 14.12.2008
Сообщений: 1,134
|
Да понимаю я что окно при запуске программы прописывается в коде:
Код:
Код:
Код:
Подскажите пожалуйста как это сделать! Данный код находится в файле "Новый проект.cpp" |
|||
![]() |
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
|
|||
![]() |
|
||||
конструктор Лего Регистрация: 21.10.2005
Краснодар
Сообщений: 204
|
МишаИнженер. Тебе действительно стоит начать с азов. Лучшая книга по С++ - Н.Н.Мартынова - двухтомник. Хороший ресурс - codeproject.com. Хотя интерфейс и прочие стандартные части программы на C# писать в десять раз легче, чем на плюсах. На плюсах в настоящее время лучше делать то, чего невозможно или трудно на С#. Например использовать готовый решатель на плюсах, а взамодействие с пользователем на шарпее.
|
|||
![]() |
|
||||
"Шарпей" - это C#, который по сути является самым новым и удобным в использовании из "семейства С", при этом не уступая по функционалу своим предкам (шарпей вобрал в себя всё лучшее из С++ и Java, а так же лишён их недостатоков - так пишут в букваре). Однако не думаю, что практикуемый тобою подход "изучения" (аля задам-ка я вопрос на форуме, вместо того, чтобы открыть букварь) будет иметь успех на шарпее.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Регистрация: 14.12.2008
Сообщений: 1,134
|
Согласитесь что вопрос простой: как запустить форму? Я же вас не спрашиваю как лучше хранить данные в программе: в массивах или базе данных, как настраивать кнопки и т.д.. Например в Visual Basice на мой вопрос можно ответить одной строчкой: UserForm.show и т кто знает это без труда отвечают на такие вопросы. А в Visual C этот простой вопрос вызывает очень много посторонних вопросов и советов которые в общем то являются стандартными в такой ситуации. А ответа на вопрос пока не видно.
|
|||
![]() |
|
||||
Регистрация: 11.10.2010
Сообщений: 979
|
Лично я не соглашусь. Потому что форму запустить невозможно, насколько я понимаю терминологию программирования. Форму можно показать, можно скрыть, можно загрузить или выгрузить, но запустить можно только программу (точнее, процесс).
Так и пиши на VB, кто мешает-то?
__________________
(/= RegDate StartReadDate) |
|||
![]() |
|
||||
Соглашусь. Тем более отвечать на него не стоит, дабы не поощрять лентяев, ибо в противном случае весь форум превратится в сплошные топики типа "Как на форму добавить кнопку", "Как на кнопку добавить надпись" и т.п.
Цитата:
Цитата:
Цитата:
![]()
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
|
|||
![]() |
|
||||
Не придётся - за него тут всё напишут, да к тому же и не в одном варианте - проверено временем
![]()
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Offtop:
- вы что это, и конфеты за меня есть будете? - ![]() ![]()
__________________
Толковый выбор приходит с опытом, а к нему приводит выбор бестолковый. (The Mechanic) Последний раз редактировалось Do$, 18.03.2011 в 08:41. |
||||
![]() |
|
||||
Цитата:
![]()
![]() Так что, подумайте еще раз - оно вам надо? Что вам нужно такое, чего не сделать в DCL? P.S. К тому же, как правильно заметил hwd, с DCL+LISP вам с удовольствием помогут на этом форуме и советом и примерами.
__________________
Толковый выбор приходит с опытом, а к нему приводит выбор бестолковый. (The Mechanic) Последний раз редактировалось Do$, 18.03.2011 в 12:43. |
||||
![]() |
|
||||
Почитайте: http://www.caduser.ru/forum/index.ph...D=24&TID=33271 и http://www.caduser.ru/forum/index.ph...D=24&TID=20099 От начала до конца.
В первую очередь это будет полезно МишаИнженер По этой теме писать ничего не буду - я не в состоянии заменить собой книги, MSDN, Google и т.д. Последний раз редактировалось Александр Ривилис, 18.03.2011 в 13:05. |
||||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Почему двутавр 90Б1 высота 893мм ? | dextron3 | Разное | 33 | 11.03.2009 23:31 |
почему не применяют трубы | kiraa | Конструкции зданий и сооружений | 17 | 10.09.2008 19:24 |
Юмор 2007 | Огурец | Разное | 1172 | 29.12.2007 11:16 |
Кто знает почему? | Sleekka | Программирование | 4 | 26.05.2007 22:37 |
Почему балконные двери открываются во внутрь? | Liliya | Разное | 45 | 27.11.2006 12:48 |