Здравствуйте, Посетитель | Регистрация | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Страница 1 из 11
Модератор форума: MFC 
Форум С++ Builder Helper » C/C++ и BCB » С++ и С++ Builder » Подскажите Работа с файлом (Глюк)
Подскажите Работа с файлом
TGrey[WoLf]Дата: Понедельник, 28.05.07, 07:47 | Сообщение # 1
Группа: Пользователи
Сообщений: 2
Статус: Offline
Добрый день) Ну во первых прикольная програмулена особенно новая версия. Правдо черный с белым и зеленым мне не оч нравится wacko
Ну в общем у меня такая проблема.
У меня есть форма которая скрытая и работать с приложением можно только через ПопМеню в трее. Меню содержит
0 Добавить Сервер
1 Сервера
2 Выход
3 записать (это для себя потом уберу)

И смысл в том что при нажатии на 0 открывается другая форма данные которых заносятся в кнопку которая будет СубМеню от меню 1
Тоесть
1 Сервера => 0 лллл
_____________1 пппп
_____________2 ррр
_____________3 ооо
и т.д.
Ну и в общем надо чтобы программа автоматически записывала № и кепшионы этих сабменюшек.
Я не прошу чтобы вы мне сделали все что я тут описал я это сам уже давно сделал но застрял на проверке.
В общем нужно чтобы пользователь немог ввести 2 одинаковых кепшиона тоесть как только он вводит то програма просматривает все сабменю а точнее их кепшионы и если такого кепшиона нет то добавляет кнопку если же есть тогда выдает сообщение.
Но тут и выходит проблемка.
Непойму как и почему но после нескольких проверок в файле появляется знак & тоесть
я жму добавить сервер и пишу к примеру Forum оно записывает в файл
0 Forum
После я еще раз пишу Forum и получаю ошибку что такое имя уже есть
Еще раз и тут оно само по себе добавляет эту кнопку я думаю КАК? смотрю в файл а там уже
0 &Forum
1 Forum
При чем кнопки выглядят идетично и писал я все одинаково при их создании(сабменю)
Если еще раз написать Forum то оно сново добавит кнопку а в файле будет
0 &Forum
1 F&orum
2 Forum
Почему оно так делает?? Из-за этой фигни я немогу дальше продолжать делать программу.

Добавлено (22.05.07, 11:08)
---------------------------------------------
Вот соурс.:
Это обработчик на той форме в которую вводятся данные на кнопку ДОБАВИТЬ
Code
void __fastcall TForm2::Button1Click(TObject *Sender)
{
int h;
for (h=0; h<=Form1->pm->Items->Items[1]->Count - 1; h++)
         if (AnsiUpperCase("&"+nameedit->Text) == AnsiUpperCase(Form1->pm->Items->Items[1]->Items[h]->Caption) || AnsiUpperCase("&"+nameedit->Text) == AnsiUpperCase("&" + Form1->pm->Items->Items[1]->Items[h]->Caption ) || AnsiUpperCase(nameedit->Text) == AnsiUpperCase("&" + Form1->pm->Items->Items[1]->Items[h]->Caption ) )
                 {
                 MessageDlg("Извените, такое имя существует",mtWarning, TMsgDlgButtons() << mbOK, 0);
                 nameedit->Text="";
                 loginedit->Text="";
                 portedit->Text="";
                 Form2->Close();
                 return;
                 }
         TMenuItem *NewItem = new TMenuItem(Form1->pm);
         NewItem->Caption = Form2->nameedit->Text;
         Form1->pm->Items->Items[1]->Add(NewItem);

         int i,j;
         String s,s2;
         FILE *fp;
         fp = fopen("MainMenu.mm","w");
for ( i=0; i<=Form1->pm->Items->Count - 1;i++)
         {
         s=Form1->pm->Items->Items[i]->Caption;
         fprintf(fp,"%d    %s\n", i,s);
         }
         fclose(fp);
         FILE *fp2;
         fp2=fopen("SubMenu.sub","w");
for (j=0; j<=Form1->pm->Items->Items[1]->Count - 1; j++)
         {
         s2=Form1->pm->Items->Items[1]->Items[j]->Caption;
         fprintf(fp2,"%d    %s\n", j,s2);
         }
         fclose(fp2);
         nameedit->Text="";
         loginedit->Text="";
         portedit->Text="";
         Form2->Close();

Проверка немного странная но то я пробовал обойти эту фигню но после этого стала работать лучше но засылать & за первый и т.д. символы.
также сделал проверку по верхнему регистру чтобы небыло одинаковых имен но в разных регистрах.
Почему тот символ там появляется не имею понятия. И без помощи записи в файл Кепшионов это увидеть нельзя. Поэтому ориентируюсь только на файл. Файл SubMenu.sub

Остальная часть кода думаю неважна поскольку там только настройки формы.

Добавлено (28.05.07, 07:47)
---------------------------------------------
Что никто не знает??

Сообщение отредактировал TGrey[WoLf] - Вторник, 22.05.07, 11:09
 
Форум С++ Builder Helper » C/C++ и BCB » С++ и С++ Builder » Подскажите Работа с файлом (Глюк)
Страница 1 из 11
Поиск:

Дизайн — Артур Нецветаев © 2005-2008 Builder Helper Group Хостинг от uCoz