mKostya |
Отправлено: 07.04.2005, 00:59 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 17
|
пока зделал меню!
1.мое меню будет работать?
2.какой проседурой можно менять цвет текста?
3.какой проседурой очешяется екран?
пока все )
|
|
Rius |
Отправлено: 07.04.2005, 07:06 |
|
Мастер участка
Группа: Участник
Сообщений: 321
|
1. нету передвижения по пунткам меню курсорными клавишами
2. textattr
3. clrscr();
|
|
Konstantine |
Отправлено: 07.04.2005, 08:31 |
|
Мастер участка
Группа: Модератор
Сообщений: 545
|
курсор — не курсор, а вот зациклить нада бы и пункт меню Exit
|
|
mKostya |
Отправлено: 07.04.2005, 10:02 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 17
|
спасибо за ответы!
есть еще вопрос как после завершения функций зделать чтоб програма переходила в меню а не закрывалась?
|
|
mKostya |
Отправлено: 07.04.2005, 11:34 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 17
|
как правильно зделать сортировку?
функция save() правильно работает?
как правильно зделать функцию load() ?
как после завершения функций зделать чтоб програма переходила в меню а не закрывалась?
Отредактировано mKostya — 07/04/2005, 11:35
|
|
Георгий |
Отправлено: 07.04.2005, 12:13 |
|
Почетный железнодорожник
Группа: Модератор
Сообщений: 874
|
Вы с Nox одну и ту же работу делаете?
Посмотри код, который Nox выложил (в закрытой теме) — очень сильно на твоё задание смахивает |
|
mKostya |
Отправлено: 07.04.2005, 12:19 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 17
|
ето я под ником Nox и постил! и потом зарегестрировался!
мне просто надо сделать понятние код! и я незнаю как зделать загрузку данных из файла ((
Отредактировано mKostya — 07/04/2005, 12:21 |
|
** Harold |
Отправлено: 07.04.2005, 20:30 |
|
Не зарегистрирован
|
Самый хороший (быстрый) подход — взять книжку Архангельского (не реклама, просто хороший справочник) и прочесть меню (оглавление) — большая половина вопросов отпадет сама собой... Еще и смеяться будешь, как все просто... |
|
mKostya |
Отправлено: 07.04.2005, 20:48 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 17
|
Книги есть но я там немогу найти тему списки!
У меня есть Дейтел и Шилдт )
Отредактировано mKostya — 07/04/2005, 20:49 |
|
** Harold |
Отправлено: 07.04.2005, 21:01 |
|
Не зарегистрирован
|
Если MSK — то "дом Книги" на Новом Арбате. Не пожалеешь. Ну и "велик могучем руссков языка"((с)- Александр Иванов — был такой пародист) приветствуется, конечно, а то: 1) читать неудобно, 2) "Мы его теряем..."(с)....
Если нужен просто КОД ещё "вчера", то так и пиши... |
|
** Harold |
Отправлено: 07.04.2005, 21:15 |
|
Не зарегистрирован
|
CODE |
String sMyFileName = "MyFileName";
sMyFileName=OpenDialog->FileName;
Memo1(ну, или куда нужно)->Lines->LoadFromFile( OpenDialog->FileName );
|
Что-то типа такого, в процессе печатания букв тебе Borland подскажет...
Наверняка, все это есть в Help'е (хотя, конечно, у Борланда help НАИКРИВЕЙШИЙ, но тем не менее...) |
|
mKostya |
Отправлено: 07.04.2005, 21:31 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 17
|
Пожалуйста помогите организовать меню(не работает подменю)!
А то оно работает с ошибками!
|
|
** Harold |
Отправлено: 08.04.2005, 00:09 |
|
Не зарегистрирован
|
Ну, пощелкай мышкой-то... И все будет. Тебе же VCL Борланд в руки дал! Куда уж проще-то! Даже мне, дятлу, и то понятно... Расслабся. На свежую голову книжки почитай. ВСЕ ПРОСТО — КАК 2х2... |
|
Rius |
Отправлено: 08.04.2005, 07:41 |
|
Мастер участка
Группа: Участник
Сообщений: 321
|
Harold По-моему речь идет о Borland C++ 3.1 под DOS.
|
|
mKostya |
Отправлено: 08.04.2005, 08:39 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 17
|
QUOTE (Rius @ 08/04/2005, 07:41) | Harold По-моему речь идет о Borland C++ 3.1 под DOS. |
Harold я пишу на Borland C++ 3.1 под DOS!
Пожалкйста посмотрите и подскажите что делать! |
|
Rius |
Отправлено: 08.04.2005, 10:14 |
|
Мастер участка
Группа: Участник
Сообщений: 321
|
Вот мой курсач на сходную (издали) тему.
|
|
mKostya |
Отправлено: 08.04.2005, 11:12 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 17
|
Как зделать загрузку из файла???
а то я не пойму как загружать структуры (((
CODE | void save()
{
FILE *f;
f = fopen("phonedata.lst", "a");
if (!f)
{
cprintf("ЋиЁЎЄ . ЌҐ ¬®¦Ґв ®вЄалвм д ©« phonedata.lst ...");
getch();
return;
}
printf("ЌҐў®§¬®¦® ®вЄалвм д ©«.\n");
cur = beg;
while (cur)
{
fprintf(f, "I %6d I", cur->num);
fprintf(f, " %23s I", cur->name);
fprintf(f, " %21s I", cur->address);
fprintf(f, " %17s I\n", cur->tel);
cur = cur->next;
}
fclose(f);
}
/**************************************************************************/
void load()
{
FILE *f;
f = fopen("phonedata.lst", "r");
if (!f)
{
cprintf("ЋиЁЎЄ . ЌҐ ¬®¦Ґв ®вЄалвм д ©« phonedata.lst ...");
getch();
return;
}
printf("ЌҐў®§¬®¦® ®вЄалвм д ©«.\n");
cur = beg;
while (cur)
{
fgetc(f, "I %6d I", cur->num);
fprintf(f, " %23s I", cur->name);
fprintf(f, " %21s I", cur->address);
fprintf(f, " %17s I\n", cur->tel);
cur = cur->next;
}
fclose(f);
} |
Konstantine: теги кода ставь
Отредактировано Konstantine — 08/04/2005, 11:58 |
|
mKostya |
Отправлено: 08.04.2005, 11:19 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 17
|
QUOTE (Rius @ 08/04/2005, 10:14) | Вот мой курсач на сходную (издали) тему. |
спасибо! )
но для меня ето сложно (
|
|
mKostya |
Отправлено: 09.04.2005, 20:40 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 17
|
Какая функция ждет нажатия любой клавиши для продолжения програмы? |
|
Rius |
Отправлено: 09.04.2005, 20:52 |
|
Мастер участка
Группа: Участник
Сообщений: 321
|
mKostya
getch(), какой-то её аналог без вывода на экран, и bioskey(int)
В моем курсаче есть все что ты спросил и ещё спросишь, хотя бы просмотри незнакомые тебе пока функции (из моего файла) в хэлпе.
|
|
mKostya |
Отправлено: 10.04.2005, 19:11 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 17
|
а как читать из файла список? |
|
Guest |
Отправлено: 11.04.2005, 06:11 |
|
Не зарегистрирован
|
Создаешь в файле данные, которые можно легко считывать, затем заполняешь список поэлементно. |
|
mKostya |
Отправлено: 11.04.2005, 07:20 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 17
|
Я так и делаю!
Вот заполняю:
CODE | void save()
{
FILE *f;
f = fopen("phonedata.lst", "a");
if (!f)
{
cprintf("ЋиЁЎЄ . ЌҐ ¬®¦Ґв ®вЄалвм д ©« phonedata.lst ...");
getch();
return;
}
cur = beg;
while (cur)
{
fprintf(f, "I %6d I", cur->num);
fprintf(f, " %23s I", cur->name);
fprintf(f, " %21s I", cur->address);
fprintf(f, " %17s I\n", cur->tel);
cur = cur->next;
}
|
Но только я не пойму как считывать! все пробывал и не че не получается ((!
Подскажите как считывать? |
|
vvoid |
Отправлено: 11.04.2005, 15:50 |
|
Машинист паровоза
Группа: Участник
Сообщений: 171
|
Попробуй убрать из файла все лишние разделитетли (у тебя они, если я не ошибаюсь, представлены в виде символов "I"). Тогда и читать из файла будет значительно проще:
CODE | fscanf(FilePtr,
"%d%s%s%s",
&(cur->num), // Это должны быть указатели
cur->name, // если я правильно угадал типы данных
cur->address, // в твоём списке, то должно работать,
cur->tel); // если нет, то подкорректируй
|
Учти, что fscanf разделяет слова ориентируясь на общепринятые символы разделители: пробел, таб(\t), конец строки(\n) и NULL (\0), а это значит, что если имя у тебя состоит из двух частей (имя и фамилия, например), то надо будет поиграться с цифрой после символа "%", я просто сейчас не помню, например %2s, означает считать два слова или два символа.
Надеюсь идея понятна.
PS*
И не бойся делать файлы, в которых ты хранишь данные, непонятными для чтения. Их читабельность вообще, по большому счёту, не имеет значения, главное, чтобы было легко работать с такими файлами программно.
Отредактировано vvoid — 11/04/2005, 15:52
|
|
mKostya |
Отправлено: 11.04.2005, 22:08 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 17
|
QUOTE (vvoid @ 11/04/2005, 15:50) | Попробуй убрать из файла все лишние разделитетли (у тебя они, если я не ошибаюсь, представлены в виде символов "I"). Тогда и читать из файла будет значительно проще:
CODE | fscanf(FilePtr,
"%d%s%s%s",
&(cur->num), // Это должны быть указатели
cur->name, // если я правильно угадал типы данных
cur->address, // в твоём списке, то должно работать,
cur->tel); // если нет, то подкорректируй
|
Учти, что fscanf разделяет слова ориентируясь на общепринятые символы разделители: пробел, таб(\t), конец строки(\n) и NULL (\0), а это значит, что если имя у тебя состоит из двух частей (имя и фамилия, например), то надо будет поиграться с цифрой после символа "%", я просто сейчас не помню, например %2s, означает считать два слова или два символа.
Надеюсь идея понятна.
PS*
И не бойся делать файлы, в которых ты хранишь данные, непонятными для чтения. Их читабельность вообще, по большому счёту, не имеет значения, главное, чтобы было легко работать с такими файлами программно. |
Большое спасибо!
шас буду разбиратся! )
|
|