Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.06.2017, 09:11   #1
YakovS
Новичок
Джуниор
 
Регистрация: 08.06.2017
Сообщений: 1
По умолчанию Вывод из цикла for в label

Доброго времени суток, есть консолевский код, который выводит календарь на указанный месяц.
Нужно чтобы он в WF выводил в label или TextBox.
Cпасибо.
Код:
  public void PrintMonth(int year, int month)
        {
            var date = new DateTime(year, month, 1);
            var count = (date.AddMonths(1) - date).Days;
            var skip = (int)date.DayOfWeek;
            label5.Text = (string.Join(String.Empty, Enumerable.Repeat<string>("   ", skip - 1)));
            label5.Text = "Пн, Вт, Cр, Чт, Пт, Сб, Вс";
            string buf = string.Empty;
            for (int i = 0; i < count; i++)
            {

                var d = date.AddDays(i);
                Console.Write("{0,-3}", i + 1);
                if (d.DayOfWeek == DayOfWeek.Sunday)
                {
                    label5.Text = (" " + i + "\r\n");

                    label5.Text = (" " + i);
                }


            }
        }
YakovS вне форума Ответить с цитированием
Старый 08.06.2017, 09:24   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

а где консольный код? Вы, похоже, не очень точно его перевели.
например, для чего использовалась в исходном коде строковая переменная buf ?

по сути.
Вы же затираете старый текст в лейбле, новым текстом.
а текст нужно дописывать. причём - с новой строки.
я не уверен, что в label допускается многострочный текст
(проверьте такой код:
Код:
label1.Text = "Привет\nмир"
и, если сработает, тогда:
Код:
            label5.Text = (string.Join(String.Empty, Enumerable.Repeat<string>("   ", skip - 1)));
            label5.Text += "Пн, Вт, Cр, Чт, Пт, Сб, Вс";
            string buf = string.Empty;
            for (int i = 0; i < count; i++)
            {

                var d = date.AddDays(i);
                // Console.Write("{0,-3}", i + 1); - остатки от консольной версии
                if (d.DayOfWeek == DayOfWeek.Sunday)
                {
                    label5.Text += " " + i.ToString() + "\n";

                    label5.Text += " " + i.ToString();
                }


            }
p.s.
1) я бы взял TextBox вместо Label
2) код я не проверял.

Последний раз редактировалось Serge_Bliznykov; 08.06.2017 в 10:57.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 08.06.2017, 09:58   #3
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
я не уверен, что в label допускается многострочный текст
Свойство WordWrap есть. Правда, это я на XE2 посмотрел, на бормановских версиях не помню
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Старый 08.06.2017, 10:16   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Sciv Посмотреть сообщение
Правда, это я на XE2 посмотрел, на бормановских версиях
Вы ничего не путаете?
тут используется C# .NET, WinForms
Serge_Bliznykov вне форума Ответить с цитированием
Старый 08.06.2017, 10:24   #5
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
Вы ничего не путаете?
тут используется C# .NET, WinForms
Ай-яй, позор на мою седую голову! Не узнал.
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод int в label David Villa Visual C++ 8 27.03.2013 09:27
Вывод в Label циклом Frost-56 Общие вопросы Delphi 1 09.03.2013 13:52
Циклы и вывод в label danil123 Работа с сетью в Delphi 3 18.12.2012 14:04
Вывод в Label GrindeX Общие вопросы C/C++ 2 19.11.2009 22:56
Вывод в label forumu Помощь студентам 9 19.11.2007 21:36