Пользователь пока ничего не рассказал о себе

Наибольший вклад в теги

Все теги (26)

Лучшие ответы пользователя

Все ответы (32)
  • Какой язык программирования наиболее универсален?

    @Myclass
    Английский
    Ответ написан
    Комментировать
  • Как исправить- пытаюсь двигать bitmap по полю?

    @Myclass
    case Keys.Left:
                        image5 = new Bitmap(@"C:\Users\MAKSIM\source\repos\LoadLevel\WindowsFormsApp5\Image\left.png");
                        g.DrawImage(image3, posSX * 32, posSY * 32);
                        g.DrawImage(image5, posSX * 32 - 32, posSY * 32);
                        posSX -= 1;
    
                        if (coordBoll[posSX, posSY] == 2)
                        {                     
                            for (int j = 0; j < height; j++)
                            {
                                for (int i = 0; i < width; i++)
                                {
                                    g.DrawImage(image2, posSX * 32 - 32, posSY * 32);
                                }
                            }
                        }
    
                        g.DrawImage(image2, posSX * 32 - 32, posSY * 32); // а зачем в условии эта последняя строчка с прорисованием image2 вновь....
                        break;


    а зачем в условии эта последняя строчка с прорисованием image2 вновь....

    И ещё. Я совсем не понял два этих вложенных в друг-друга цикла. Ведь они никак не влияют ни на что. Зачем они?

    И ещё. Я конечно не специалист по играм, но я-бы в голове (памяти) держал-бы сетку с координатами и прорисовка элементов была-бы независима от количества пикселей в одной клетке (32), что-бы мочь всегда скалировать.
    Ответ написан
    1 комментарий
  • Поменять местами 1ый отрицательный и последний положительный элементы в матрице. Как исправить ошибку?

    @Myclass
    Не сильно вдавался в логику, но что сразу бросилось в глаза, то что переменная indexOfPositiveElement получает инит.значеие -1, и потом по всяким проверкам может и не изменится. После этого вы проверяете её на меньше или равно нулю. И в этом случае даже без того, что вы обнаружили положительный эелемент, вы всё равно хотите переставлять значения. Тоже самое и с переменной indexOfNegativeElement. Оба места я отметил жирным шрифтом.

    if (indexOfNegativeElement >= 0 && indexOfPositiveElement <= 0)
    {
    int temp = mas[indexOfNegativeElement];
    mas[indexOfNegativeElement] = mas[indexOfPositiveElement];
    mas[indexOfPositiveElement] = temp;
    }
    listBox2.Items.Add(mas[i].ToString());

    if (indexOfNegativeElement <= 0 && indexOfPositiveElement >= 0)
    {
    int temp = mas[indexOfNegativeElement];
    mas[indexOfNegativeElement] = mas[indexOfPositiveElement];
    mas[indexOfPositiveElement] = temp;
    }
    listBox2.Items.Add(mas[i].ToString());


    А вообще я посоветовал-бы вам названия кнопок и листков итд. называть так, что они из себя представляют. Т.е. кнопка например или "btnSwapPairItems", или если не комильфо без ""btn. Это первое. Второе, у вас есть в этой функции одно и то-же повторяющее действие. Выведите его в отдельную функцию. Например назовите её "SwapPairItemsInList" и передайте ей параметры первого и второго элемента, которые должны быть переставлены и вызывайте эту функцию кадый раз (здесь уже два раза), когда надо переставить два елемента. Если такое повторяется не только в этом окне и не только с этим списком, а в 100 других местах, то выведите эту функцию в отдельный класс и увеличьте параметер этой фукции ещё одним - Reference на этот лист-контроль. И всё - вам никогда больше не надо будет ручками это опять набивать. Жалейте своё время.

    После просмотра обратил ещё на одну вещь внимание. Никогда не используйте просто числа, как у вас в циклах проверок. Все эти 9 и 10 - сегодня вы знаете, почему 9 и 10, завтра - нет. Сегодня 9, завтра 900. Вам что весь код переписывать. Для таких вещей всегда используйте константы или именно в этом окне, если это значение играет роль не только в этом окне, но и в других выводите в отдельный класс со всеми константами по этой тематике. Обзываете её например " public const Int32 MaxItemsInSwapList = 9", и используйте её здесь в функции и всё - и через 9 лет вы в курсе, что эта 9 значит. Или, если 10 или 9 вообще не играют никакой роли, то тогда опрашивайте количество элементов в списке, перед тем, как пробегаете все значения этого списка....., но не числа.
    Ответ написан
    Комментировать
  • Как лучше сделать?

    @Myclass
    Только так, но бизнес логика в программе должна быть очень точна и стабильная. А то простые люди начнут 'преподавать'. А насчёт полей, что у разных типов то заполняются, а то нет - это в Gui и в классовой модели решается и не есть плохо .

    Потому что этот упрощает и ввод адресов и ещё кучи других вещей, которые те и другие иметь или быть могут.

    Ещё один плюс такого решения, что те, кто сегодня преподаванием занимается, завтра только пользователь может быть. Или наоборот. Потом такие вещи как
    Логин
    Организация курсов
    Организация заместителя преподавателя
    Рассылка уведомлений итд.
    упрощаются до минимума
    Ответ написан
    Комментировать
  • Как воспроизвести звук на всех пк в локальной сети?

    @Myclass
    Создай софт, который нужен твоему отделу, потом после роста популярности можешь предложить и создать группу по разработки этого софта, встань во главе, дальше работай над софтом со своей командой, и сделай софт ещё популярнее, увеличить команду до большего отдела, встань во главе отдела и в какой-то момент на всё плюнь и втихаря не сообщив никому вставь в программный код эксплоит, что бы на всех компьютерах заиграла музыка, которую ты хотел бы напоследок услышать, перед тем, как тебя со всех должностей выкинут.
    Ответ написан
    1 комментарий