Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.84/25: Рейтинг темы: голосов - 25, средняя оценка - 4.84
0 / 0 / 0
Регистрация: 14.06.2021
Сообщений: 18
1

Расстояние между словами

25.06.2021, 11:25. Показов 4690. Ответов 22
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день. Данный кусок кода делает расстояние между словами равное нескольким пробелам:
C#
1
labell += (s + "                    ");
Как сделать, чтобы расстояние было одинаковым от начала первого слова до начала следующего?
Пример:
В моем случае получается так:
C#
1
2
Мама                    Папа                    Брат
Привет                    Пока                    Здравствуйте
А надо так:
C#
1
2
Мама                    Папа                     Брат
Привет                  Пока                     Здравствуйте
То есть, чтобы слова были друг над другом.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.06.2021, 11:25
Ответы с готовыми решениями:

Удалить пробелы, стоящие между первым и вторым словами, а также между двумя последними словами
Задание: Удалить пробелы, стоящие между первым и вторым словами, а также между двумя последними...

Скорость первого автомобиля V1 км/ч, второго — V2 км/ч, расстояние между ними S км. Определить расстояние между ними чер
Скорость первого автомобиля V1 км/ч, второго — V2 км/ч, расстояние между ними S км. Определить...

Пробелы между словами
Вот задание .Составить программу, которая будет вводить строку в переменную String. Удалить из нее...

Удалить текст между 2 словами
Удаляю текст между 2 словами следующим образом: while (text.IndexOf("ничего") != -1) text =...

22
171 / 131 / 63
Регистрация: 02.05.2021
Сообщений: 442
25.06.2021, 11:31 2
C#
1
2
            Console.WriteLine("Слово\t\tПривет\t\tЛол");
            Console.WriteLine("Ага\t\tЧто\t\tОго");
Добавлено через 30 секунд
Используйте '\t'
Это табуляция
0
0 / 0 / 0
Регистрация: 14.06.2021
Сообщений: 18
25.06.2021, 11:59  [ТС] 3
dddddsf
0
0 / 0 / 0
Регистрация: 14.06.2021
Сообщений: 18
25.06.2021, 12:01  [ТС] 4
Max61, спасибо большое, только у меня проблема. В первом случае у меня было так как на 1 картинке, а с табуляцией только пробелы добавились, или я не так что-то сделал?
C#
1
label += (k + '\t');
Миниатюры
Расстояние между словами   Расстояние между словами  
0
171 / 131 / 63
Регистрация: 02.05.2021
Сообщений: 442
25.06.2021, 12:14 5
Как я вижу у вас на фото 2 строки. Так как я полный доступ к вашему коду не имею, попробуйте использовать '\n'.
То есть, как вы заполнили полностью 1 строку, используйте '\n'

P.s: Если я вам пишу '\n' то '' не обязательны
1
0 / 0 / 0
Регистрация: 14.06.2021
Сообщений: 18
25.06.2021, 12:29  [ТС] 6
Max61, дау меня даже не 2 строки, а по факту одна. У меня в переменную записываются все ячейки из DataGridView. Просто в данном случае там было 2 строки. Может подскажите, как сделать после считывания первой строки переход?
C#
1
2
3
4
5
6
7
8
for (int i = 0; i < mk1; i++)  //Копирование датагрида в переменную
            {
                for (int j = 0; j < lk1; j++)
                {
                    k = dataGridView1.Rows[i].Cells[j].Value?.ToString();
                    label += (k + "\n");
                }
            }
Ps. Без любых ковычек не работает t И n. Они вообще не работают, разыне способы написания пробовал, скорее всего я что-то не так делаю
0
171 / 131 / 63
Регистрация: 02.05.2021
Сообщений: 442
25.06.2021, 12:36 7
lk1 чему равна эта переменная?
mk1 чему равна эта переменная?

P.s: Без любых ковычек не работает t И n. Они вообще не работают, разыне способы написания пробовал, скорее всего я что-то не так делаю
Я имел ввиду что не обязательно ' такие кавычки использовать, можно и "
0
0 / 0 / 0
Регистрация: 14.06.2021
Сообщений: 18
25.06.2021, 12:38  [ТС] 8
lk1 и mk1 = количеству столбцов и строк в DGV
mk1 = 2, lk1 = 7
0
171 / 131 / 63
Регистрация: 02.05.2021
Сообщений: 442
25.06.2021, 12:39 9
Я так понимаю столбцов у вас 7 а строк 2?
0
0 / 0 / 0
Регистрация: 14.06.2021
Сообщений: 18
25.06.2021, 12:40  [ТС] 10
Именно так
0
171 / 131 / 63
Регистрация: 02.05.2021
Сообщений: 442
25.06.2021, 12:42 11
C#
1
2
3
4
5
6
7
8
9
10
            for (int i = 0; i < lk1; i++)  //Копирование датагрида в переменную
            {
                for (int j = 0; j < mk1; j++)
                {
                    k = dataGridView1.Rows[j].Cells[i].Value?.ToString();
                    label += (k + "\t");
                }
 
                label += "\n";
            }
Попробуйте так.

Добавлено через 6 лет
Только заполнять данные надо построчно, а не по столбцам
1
0 / 0 / 0
Регистрация: 14.06.2021
Сообщений: 18
25.06.2021, 12:45  [ТС] 12
Ни t, ни n не работает, все заполняет в одну строку через пробел(1)
0
1468 / 1009 / 456
Регистрация: 30.10.2017
Сообщений: 2,800
25.06.2021, 14:12 13
Лучший ответ Сообщение было отмечено cody123 как решение

Решение

Не забудьте формат шрифта для метки установить в Courier New, чтобы буквы одинаковой ширины были.

C#
1
2
3
4
5
6
7
8
9
10
11
12
private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
    label1.Text = "";
 
    for (int i = 0; i < dataGridView1.RowCount; i++)
    {
        for (int j = 0; j < dataGridView1.ColumnCount; j++)
            label1.Text += string.Format("{0,-25}", dataGridView1.Rows[i].Cells[j].Value?.ToString());
 
        label1.Text += '\n';
    }
}
1
0 / 0 / 0
Регистрация: 14.06.2021
Сообщений: 18
25.06.2021, 14:46  [ТС] 14
QuakerRUS, почему-то не работает
0
1468 / 1009 / 456
Регистрация: 30.10.2017
Сообщений: 2,800
25.06.2021, 14:58 15
Цитата Сообщение от cody123 Посмотреть сообщение
QuakerRUS, почему-то не работает
Что именно не работает? Если метод брали целиком, то сначала надо зарегистрировать событие CellEndEdit в свойствах датагрида.

Добавлено через 9 минут
cody123, ну и, разумеется, не забудьте сверить имена элементов. У меня label1, а у вас label.
0
0 / 0 / 0
Регистрация: 14.06.2021
Сообщений: 18
28.06.2021, 08:42  [ТС] 16
QuakerRUS, расстояние между словами стало как я и хотел, но '\n' не работает.
0
1468 / 1009 / 456
Регистрация: 30.10.2017
Сообщений: 2,800
28.06.2021, 10:57 17
Цитата Сообщение от cody123 Посмотреть сообщение
'\n' не работает
А точно тип элемента управления Label используете? Покажите ваш код теперешний, где копируются в метку данные. И желательно скриншот метки и датагрида.
0
68 / 56 / 15
Регистрация: 30.01.2020
Сообщений: 332
28.06.2021, 12:22 18
Цитата Сообщение от cody123 Посмотреть сообщение
но '\n' не работает
поробуйте '\r\n'
0
627 / 391 / 135
Регистрация: 06.03.2017
Сообщений: 1,469
28.06.2021, 12:36 19
Цитата Сообщение от cody123 Посмотреть сообщение
но '\n' не работает
Цитата Сообщение от gegbot Посмотреть сообщение
поробуйте '\r\n'
зачем гадать, когда существет System.Environment.NewLine
2
1468 / 1009 / 456
Регистрация: 30.10.2017
Сообщений: 2,800
28.06.2021, 12:49 20
cody123, возможно вы вместо Label используете какой-нибудь TextBox с Multiline. В этом случае действительно нужно System.Environment.NewLine использовать.
1
28.06.2021, 12:49
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.06.2021, 12:49
Помогаю со студенческими работами здесь

Удаление текста между двумя словами
Добрый день! Подскажите, пожалуйста, как в .doc удалить все между словами &quot;слово1&quot; и &quot;слово2&quot;? ...

Регулярное выражение между словами сохранить
Приветствую. Есть текст в textBox1 Текст 1 Текст 2 Текст 1 Текст 1 Текст 1 Текст 3 Текст 3...

Как выбрать текст между словами?
Например, есть строка &lt;p&gt;1&lt;/p&gt;&lt;priv&gt;2&lt;/priv&gt; . И нужно выбрать текст между &lt;priv&gt; и &lt;/priv&gt; т.е....

Удаление фрагментов между словами, регулярные выражения
Здравствуйте. Подскажите пожалуйста как лучше реализовать следующее: удалить фрагмент текста между...

Перевести на C# программу вставки между словами пробелов
Дана строка текста, в котором нет начальных и конечных пробелов. Необходимо изменить ее так, чтобы...

Многомерные массивы. Добавить лишние «пробелы» между словами
Текст некоторой строки вводится в режиме диалога и содержит простое предложение, в котором слова...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru