Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.57/30: Рейтинг темы: голосов - 30, средняя оценка - 4.57
 Аватар для SashaYa
13 / 13 / 2
Регистрация: 10.06.2012
Сообщений: 120

Работа с календарём

14.06.2012, 01:09. Показов 6358. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток!
Такой вопросик есть форма :

Как сделать:
1) при нажатии на дату мне открывался календарь и я мог выбрать новую дату и она менялась.
2) при нажатии на кнопочки "вперед" и "назад" дата менялась на следующую и предыдущую.
3) при загрузке формы дата всегда была сегодняшняя.
4) Зделал я запись в мемо сохранил дату и запись в файл (формат "дата ::: запись" ) как сделать так чтоб потом при выборе етой даты мне в мемо выводилась запись из файла.

Предельно благодарен !!!
Програма типа напоминания
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.06.2012, 01:09
Ответы с готовыми решениями:

Работа с календарем
По условиям задачи нужно вывести в таблицу название дней недели и числа (кроме воскресений) любого месяца и года, которые выбрал...

Работа с календарем
Добрый вечер подскажите пожалуйста: на форме есть календарь и текст бокс.Как реализовать что бы при нажатии на определенную дату (например...

Работа с календарем
Доброй ночи всем. Делаю что-то типа органайзера и хочу провернуть свою идею с календарем. В общем, как я это себе представляю. ...

25
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
14.06.2012, 01:16
SashaYa,

Цитата Сообщение от SashaYa Посмотреть сообщение
1) при нажатии на дату мне открывался календарь и я мог выбрать новую дату и она менялась.
Может тогда стоит добавить нормальную компоненту вместо TLabel?
Имею в виду TDateTimePicker.


Цитата Сообщение от SashaYa Посмотреть сообщение
2) при нажатии на кнопочки "вперед" и "назад" дата менялась на следующую и предыдущую.
C++
1
2
3
4
void __fastcall TForm1::Button1Click(TObject *Sender)
{
DateTimePicker1->Date=DateTimePicker1->Date.operator --();
}
C++
1
2
3
4
void __fastcall TForm1::Button2Click(TObject *Sender)
{
DateTimePicker1->Date=DateTimePicker1->Date.operator ++();
}

Цитата Сообщение от SashaYa Посмотреть сообщение
3) при загрузке формы дата всегда была сегодняшняя.
C++
1
2
3
4
5
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
this->DateTimePicker1->Date=Now();
}
По поводу 4го пункта давайте завтра. Ну или может быть кто-нить еще соизволит
1
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
14.06.2012, 02:07
А на коЙ компонент календарь?
Миниатюры
Работа с календарём  
1
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
14.06.2012, 02:15
Avazart, да ну... Так же круче
0
 Аватар для SashaYa
13 / 13 / 2
Регистрация: 10.06.2012
Сообщений: 120
14.06.2012, 11:42  [ТС]
Еще очень надо 4
У меня форма нарисованая могу я както сделать DataTimePicker прозрачным чтоб только надпись была видна ?
0
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
14.06.2012, 13:31
SashaYa,

Цитата Сообщение от SashaYa Посмотреть сообщение
Еще очень надо 4
Хотел предложить работать с Ini-файлом, но что-то застрял на считывании данных, когда текст у нас многострочный...


Народ, как с Ini данная проблема решается? К примеру есть такая запись:
[14.06.2012]
Memo=dsfsdfsdfasdf
sdfasdfasdfasdfasdfasdfasdf
[15.06.2012]
Memo=dsfsdfsdfasdf
sdfasdfasdfasdfasdfasdfasdfsfsdfasdf
dsfasd
dfasdfsadfr3243
Но как мне в компонент Мемо скажем передать все содержимое ключа "Memo"? Будет же считываться только первая строчка... Или похоже запись в ini-файл надо делать по-другому как-то... Но вот как? Подскажите, пожалуйста.
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
14.06.2012, 13:36
C++
1
DateTimePicker1->Color= clBtnFace;
???
0
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
14.06.2012, 13:42
Цитата Сообщение от The_Immortal Посмотреть сообщение
как с Ini данная проблема решается?
По идее надо как-то с 13,10 играться... А как? Наверняка уже данная трабла решалась, но найти решения не могу

Уважаемый LK, слышал, что у Вас вроде с поиском неплохо получается...
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
14.06.2012, 13:59
Уважаемый The_Immortal, слухи сильно преувеличены.
1
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
14.06.2012, 14:00
LK,
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
14.06.2012, 14:08
Я думаю тут все просто решилось бы регулярками...
Ini не юзаю лучше уж как по мне frintf(),fscan() ....
0
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
14.06.2012, 15:41
Avazart,

Цитата Сообщение от Avazart Посмотреть сообщение
Я думаю тут все просто решилось бы регулярками...
Можно примерчик?

Добавлено через 1 час 29 минут
Не прокатит тут регулярка-то.
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
14.06.2012, 15:57
Приблизительно так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include <vcl.h>
#include <boost/regex.hpp>
#include <map>
#pragma hdrstop
 
#include "Unit1.h"
 
using namespace std;
using namespace boost;
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
typedef map<TDate,String> Tm;
//---------------------------------------------------------------------------
void pars(Tm &m,String Line)
{
 regex e("\\[(.*?)\\]\\s+Memo=([^\\[]*)");
 smatch r;
 string s= Line.c_str();
 
 string::const_iterator begin, end;
 begin = s.begin();
 end =   s.end();
 
 while(regex_search(begin,end,r,e))
   {
    string s1(r[1].first,r[1].second);
    string s2(r[2].first,r[2].second);
 
    TDate Date= StrToDate(s1.c_str());
    String Text= s2.c_str();
 
    m[Date]=Text;
 
    begin = r[0].second;
   }
}
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Tm m;
 
pars(m,Memo1->Text);
 
for(Tm::iterator i=m.begin();i!=m.end();++i)
 {
  Memo2->Lines->Add("---------");
  Memo2->Lines->Add(DateToStr(i->first));
 }
 
for(Tm::iterator i=m.begin();i!=m.end();++i)
  {
  Memo3->Lines->Add("---------");
  Memo3->Lines->Add(i->second);
  }
}
//---------------------------------------------------------------------------
Миниатюры
Работа с календарём  
0
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
14.06.2012, 15:58
Avazart,

[14.06.2012]
Memo=dsfsdfsdfasdf
sdfasdfasdfasdfasdfasdfasdf
[15.06.2012]
Memo=фейкфейкфейк
Продолжаем секцию [14.06.2012]
всего-всего боимся
а вот следующей строчкой начнем истинную секцию "[15.06.2012]"
[15.06.2012]
Memo=dsfsdfsdfasdf
sdfasdfasdfasdfasdfasdfasdfsfsdfasdf
dsfasd
dfasdfsadfr3243
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
14.06.2012, 16:07
Ну дык это только пример...
Я не собираюсь за кого-то писать программу...
Ни что не запрещяет делать проверку строки "на дату" и подогнать соответствующе регулярку...
0
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
14.06.2012, 16:13
Avazart,
Цитата Сообщение от Avazart Посмотреть сообщение
Ни что не запрещяет делать проверку строки "на дату" и подогнать соответствующе регулярку...
Я к тому, что при свободном вводе в текстовый файл существует вероятность, что всегда можно будет случайно "обмануть" регулярку.

Дабы этого избежать надо юзать или БД, или xml, или ini-структуру. Насчет последних 2ух - не уверен. Может быть тоже зафейлят.

Хотя при такой структуре:
[14.06.2012]
Str1=sadas
Str2=asdsad
....
Stri=asdasdas
Пожалуй, что нет...
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
14.06.2012, 16:20
Ну вероятность "обмануть" намного больше при использовании других способов...Тут лишь нужно задать по жесче регулярку и все...

Если уж так все критично то есть такие варианты:
1.- Xранить каждую запись в отдельном файле
2.- Фиксировть размер текста...
3.- Итд итп...
0
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
14.06.2012, 16:26
Avazart,

Цитата Сообщение от Avazart Посмотреть сообщение
Тут лишь нужно задать по жесче регулярку и все...
Да говорю же Вам, что не получится
Ну по крайней мере мне так видится.
0
 Аватар для SashaYa
13 / 13 / 2
Регистрация: 10.06.2012
Сообщений: 120
14.06.2012, 17:08  [ТС]
Цитата Сообщение от Avazart Посмотреть сообщение
Код C++
1 DateTimePicker1->Color= clBtnFace;
???
Неа так не делается прозрачним ((
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
14.06.2012, 17:18
что всегда можно будет случайно "обмануть" регулярку
Дык а кто мешает проверять текст перед записью на совпадение с тегами?
Да говорю же Вам, что не получится
Ну по крайней мере мне так видится
Аргумент не спорю
Добавлено через 51 секунду
Цитата Сообщение от SashaYa Посмотреть сообщение
Неа так не делается прозрачним ((
Нужно компонент переделывать...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.06.2012, 17:18
Помогаю со студенческими работами здесь

работа с календарем
Найти сколько дней между двумя календарными датами, причем начальный и конечный дни также учитываются.читаем две даты дату в формате D M Y...

Работа с календарем в C#
Здравствуйте, помогите разобраться с заданием? Если можно напишите код, пожалуйста) спасибо По нажатию на кнопку «Вычислить»...

Работа с календарем
Доброго времени дня всем. На работе подкинули задачку - есть домен-контроллер ws 2003, на нем же exchange, есть пользователь conference. ...

Работа с календарем Windows 10
Всем привет! Загоревшись идеей написать программу на C#, столкнулся в одной проблемой... Не могу разобраться можно ли работать с стоковым...

Работа с Календарём в StringGrid
procedure TMatMenu.MatTabMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; ACol, ARow: Integer); begin ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru