0 / 0 / 0
Регистрация: 27.02.2010
Сообщений: 18
|
|
1 | |
Форма на MSVC++ 6.023.03.2010, 02:41. Показов 4538. Ответов 36
Метки нет (Все метки)
Здравствуйте!
Написана программа на С по работе с девайсом и работе с мускульной БД...Осталось сделать интерфейсную часть проекта. Использую IDE MSVC++ 6.0, нужно сделать форму след. содержания: чтобы выводилось фото человека, его ФИО, дата рождения, курс, факультет, в той же форме должно быть 6 кнопок и таблица, содержащая три столбца) Я так понял если создать проект MFC AppWizard(exe), то нужно юзать С++ и вообщем ООП, а если проект Win32Application, то юзаю С используя WinAPI? Прочитал книгу Холзнера Учебный курс Visual C++ 6.0. 14 уроков, но с визуальной средой всё равно проблемы, так как программирую под линукс всё))) Помогите как и с чего начать? Спасибо.
0
|
23.03.2010, 02:41 | |
Ответы с готовыми решениями:
36
Почему в MSVC++ 2008 компилируется, а в MSVC++ 2010 вылезает много ошибок? Переход от MSVC 2017 к MSVC 2019 Добавление записи в Listview(1 форма) через Диалоговое окно(3 форма) другой формы (2 форма) Форма 1 вызывает форму 2, форма 2 закрывается, форма 1 продолжает работать дальше |
0 / 0 / 0
Регистрация: 27.02.2010
Сообщений: 18
|
|
24.04.2010, 18:59 [ТС] | 21 |
Вывел в контролы диалога значение переменных row[4], row[5] и т.д.
только в контроле диалога получаю, вместо вывода нужных значений вопросительные знаки ??????? смотрел в дебагере, как только захожу в цикл while((row = mysql_fetch_row (res))) то сразу все переменные row заполняются знаками вопросами. Дата вывелась т.к. там цифры, тут видимо какой-то баг с кодировкой, не хочет кириллицу выводить( можете что-нибудь подсказать по этому поводу???
0
|
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
|
||||||
24.04.2010, 19:24 | 22 | |||||
1)сменить кодировку вывода
после подключения к базе попробуйте что-то вроде
для проверки сделайте добавление и считывание новой строки
0
|
0 / 0 / 0
Регистрация: 27.02.2010
Сообщений: 18
|
|||||||||||
24.04.2010, 23:07 [ТС] | 23 | ||||||||||
на это не реагирует, у меня изначально стояло, когда на консоль выводил
Когда исходный код на С компилил, всё выводилось верно. А сейчас он выводит в кодировке latin1. одни знаки вопроса. У меня была раньше такая проблема. Но я её решил после установки соединения с БД, строчкой
Вроде как получилось, только два поля вывел нормально, название фкультета и курса, а ФИО по прежнему осталось знаками вопроса... непонятно, как-то, если у всех один тип mysql_row, то почему тогда одни данные корректно отображает, а др. нет...поменял уже тип столбцов у ФИО, всё равно не помогает.
0
|
0 / 0 / 0
Регистрация: 27.02.2010
Сообщений: 18
|
|
29.04.2010, 01:01 [ТС] | 24 |
всё вывел всё отлично, кроме mysql_query(SET NAMES "cp1251"), нужно было ещё использовать
mysql_set_character_set(), которая все возвращаемые через это соединение значения преобразует в нужную кодировку автоматически. Вот осталось не разобранными два вопроса: Один по поводу таймера, а второй по поводу картинки. По поводу первого вопроса, у меня сейчас приложение работает, вот так: лежит карточка на считыватели, запускаем приложение всё считалось и вывелось в диалог, если же мы убираем карточку и подносим снова её или же другую, то данные уже не выводятся...аналогично, если мы запустили приложение без карточки на считыватели, а потом поднесли, то снова информация не выводится, я так полагаю...нужно как-то с таймером ковырять... ЧТо касается второго вопроса, то нужно каким-то образом в picture control вывести картинку с БД, ну или хотя бы с файла? Подскажите пожалуйста, как можно реализовать эти две возможности?
0
|
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
|
|
29.04.2010, 10:45 | 25 |
насколько я помню - исключительно через попу.
функций для работы с картинками в MFC практически нет. если не подключать чужие библиотеки, то алгоритм такой: открыть файл(ручками, через CFile), создать битмэп, создать буфер для хранения строки битмэпа распаковать часть исходного файла в буфер(тоже ручками - правильность алгоритма распаковки картинки в битмэп на вашей совести) скопировать буфер в битмэп и повторять это, пока не распакуешь всю картинку. а потом - в функции отрисовки окна, выбираешь свой битмэп и "рисуешь" им, если не ошибаюсь, функцией CDC::DrawState(...). можно, конечно, хранить в базе и сами битмэпы(и это сильно упростит процедуру) - но это опять-же зависит целиком от вас. такие вот пироги...
0
|
0 / 0 / 0
Регистрация: 27.02.2010
Сообщений: 18
|
|
07.05.2010, 00:09 [ТС] | 26 |
0
|
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
|
|
07.05.2010, 12:26 | 27 |
на gdi+ много жалоб. глючный.
а класса CImage в MSVC++ 6.0 еще нет. можно руками, конечно, подключить... скопировать объектные библиотеки, dll и хэдеры из новых версий.
0
|
0 / 0 / 0
Регистрация: 27.02.2010
Сообщений: 18
|
|
12.05.2010, 22:35 [ТС] | 28 |
вообщем как я понимаю, тут геморроя больше чем было(
да, плохо... а где его можно взять Cimage со всеми dll, libами и хэдерами? Добавлено через 22 часа 24 минуты а можно пример по работе с классом Cimage?
0
|
125 / 65 / 9
Регистрация: 19.04.2010
Сообщений: 196
|
|
12.05.2010, 22:41 | 29 |
Для таких дел Builder подойдет.
Ты в нем интерфейс накидаешь в три секунды. И потом сиди занимайся разбором файла и чего хочешь. В нем есть мощные средства для работы с файлами TFileStream TFle
0
|
0 / 0 / 0
Регистрация: 27.02.2010
Сообщений: 18
|
||||||
14.05.2010, 01:39 [ТС] | 30 | |||||
заюзал класс CImage
вот кусок кода для загрузки картинки и прорисовки в picture control на диалоге:
0
|
125 / 65 / 9
Регистрация: 19.04.2010
Сообщений: 196
|
|
14.05.2010, 08:46 | 31 |
Это работать не будет.
Алгоритм примерно такой. 1) При старте программы загружаете свою картинку 2) Создаете CStatic 3) Каждый раз при перерисовании окна OnPaint() выводите картинку в CDC объекта CStatic
0
|
0 / 0 / 0
Регистрация: 27.02.2010
Сообщений: 18
|
|
14.05.2010, 23:04 [ТС] | 32 |
угу ка же, работает однако, только пришлось использовать функцию BOOL OnEraseBkgnd(CDC* pDC) для прорисовки картинки прямо на диалоге...
теперь надо как-то уменьшить размеры картинки, есть какие-нибудь методы в классе CImage (например, что-нибудь вроде resize) я как-то не нашёл(
0
|
125 / 65 / 9
Регистрация: 19.04.2010
Сообщений: 196
|
|
14.05.2010, 23:07 | 33 |
StretchBlt
BitBlt В помощь
0
|
5 / 5 / 1
Регистрация: 29.11.2009
Сообщений: 42
|
|
16.05.2010, 23:39 | 34 |
Мой тебе совет скачай Microsoft Visual C++ 2008 Express Edition или 2010 проще чем в 6.0
Официальний сайт Microsoft лучше загружай продукт в самом низу Загрузите Visual Studio 2008 Express Edition там читире среди в комплекте те которие на странице http://www.microsoft.com/rus/e... fault.aspx А здесь все продукти за 2010 год там тоже в самом пости низу есть надпись All - Offline Install ISO image file ето комплектом скачать четире среди http://www.microsoft.com/express/Downloads/
0
|
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
|
|
17.05.2010, 10:46 | 35 |
0
|
0 / 0 / 0
Регистрация: 27.02.2010
Сообщений: 18
|
||||||
06.06.2010, 23:14 [ТС] | 36 | |||||
Всё вывел картинку отлично, прилагаю код
Если проект собрался с поддержкой динамических библиотек, можно переделать для статич. не создавая по новому проект? среда MSVC++ 6.0 либо VS2005
0
|
125 / 65 / 9
Регистрация: 19.04.2010
Сообщений: 196
|
|
07.06.2010, 08:49 | 37 |
Да поставте использовать Static lib вместо shared точно не помню студия не стоит
Добавлено через 1 минуту Но для этого Вы должны обладать всеми статически подключаемыми библиотеками (lib-файлами). И их добавить в линкере Input lib. К тем что уже добавлены по умолчанию.
0
|
07.06.2010, 08:49 | |
07.06.2010, 08:49 | |
Помогаю со студенческими работами здесь
37
Qt 5.7 MSVC and C++11 Qt Creator or MSVC Отладчик MSVC DirectX и MSVC Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |