Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.07.26;
Скачать: [xml.tar.bz2];

Вниз

Пара вопросов и траблов   Найти похожие ветки 

 
Black   (2009-06-01 15:44) [0]

Дамы и господа, пишу курсовой на Delphi тема простая для понимания - "Органайзер" столкнулся с некоторыми банальными и не очень трудностями. Помогите пожалуйста в решении пары траблов и как более опытные подскажите лучшие чем мои алгоритмы. Исходный код (правда в нем много мусора) прилагается.
Кратко о проекте: 4 формы. Основная форма, это TMonthCalendar и TMainMenu. Вторая форма это добавление события на дату.Третья - чтение события с даты (т.е при двойном щелчке на дате в MonthCalendar на основной форме). Четвертая - пока не активная (пытался сделать несколько событий на одну дату). Пятая(ну как же без сентиментализма) - "О программе" или хвала разработчикам
===
Трабл #1) Довольно странная ошибка - сохраняю событие в файл

reset(base);
 write(base,c_t);
  showmessage(inttostr(filepos(base)));
   closefile(base);
    close;

showmessage(inttostr(filepos(base))); - выдает мне текущую позицию указателя в файле, дык вот при каждом сохранении программа перезаписывает предыдущую запись т.к. указатель не сдвигается, хотя это должно происходить автоматически
--
На всякий случай - проверьте корректность чтения

i:=1;
assignfile(base,"base.dat");
 reset(base);
  while not (eof(base)) do
 begin
  read(base,c_t_b[i]);
   i:=i+1;
 end;
closefile(base);


Трабл #2)Сохранение выравнивания текста

   1)Проверяю применены ли операции выравнивания посредством стандартных action"ов и присваиваю их выделенным под них элементам булево-массива в типе данных

   
       if richeditAlignRight1.Checked=true then begin c_t.format[1]:=true; showmessage("Yes1") end;
       if richeditAlignCenter1.Checked=true then begin c_t.format[2]:=true; showmessage("Yes2") end;

     

   2)При Двойном щелчке на дате проверяю содержимое файла на операции выравнивания и определяю свойства объекта RichEdit1 на форме три

       
       if c_t_b[j].format[1]=true then begin f3flags[1]:=true;//form3.RichEdit1.Alignment:=taRightJustify;
          if c_t_b[j].format[2]=true then f3flags[2]:=true;//form3.RichEdit1.Alignment:=taCenter;
 


   Как видите пробовал по разному, в том варианте который вы видите сейчас я присваиваю булева массиву который использую как флаг значения а на создание формы три вешаю присвоение выравнивания либо вариант два

 
       if c_t_b[j].format[1]=true then Form3.RichEdit1.Alignment:=taRightJustify;
          if c_t_b[j].format[2]=true then form3.RichEdit1.Alignment:=taCenter;
       


Вопрос по другим свойствам текста, почему операция

RichEdit1.font.Style:=fsbold;
Приводит к "[DCC Error] Unit1.pas(122): E2010 Incompatible types: "TFontStyles" and "TFontStyle""
Как это предотвратить?

Если у кого-нибудь появится идея как можно написать (условиях уже написанного кода, т.е дописать) запись нескольких событий одного или разного типа на одну дату буду очень рад выслушать и принять к сведению.

Есть еще парочка вопросов и траблов, но их пока трогать не буду. Заранее благодарю


 
clickmaker ©   (2009-06-01 15:46) [1]

> RichEdit1.font.Style:=fsbold;
> Приводит к "[DCC Error] Unit1.pas(122): E2010 Incompatible
> types: "TFontStyles" and "TFontStyle""
> Как это предотвратить?

RichEdit1.font.Style:=[fsBold];

в хелпе даже пример есть


 
И. Павел   (2009-06-01 15:51) [2]


> программа перезаписывает предыдущую запись т.к. указатель
> не сдвигается

Или открывайте файл для добавления (Append), или не выполняйте Reset перед каждым Write (открывайте файл только один раз, а потом записывайте), или переходите на нужное место в файле через seek.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2009.07.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.044 c
15-1243162054
Юрий Зотов
2009-05-24 14:47
2009.07.26
Сортировка в XSL


2-1243760103
dumb
2009-05-31 12:55
2009.07.26
Последовательно выполнить процедуры


2-1243960373
v1kee
2009-06-02 20:32
2009.07.26
Помогите с динамическим созданием строк


15-1242993877
feel
2009-05-22 16:04
2009.07.26
Програмирование загрузочного сектора.


15-1240783011
xenonxenon
2009-04-27 01:56
2009.07.26
Как соединить много текстовых файлов...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский