Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> "Ламерские" вопросы, задаем здесь элементарные вопросы 
:(
    Опции темы
Exai1e
Дата 2.7.2008, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 908
Регистрация: 3.12.2006
Где: Moscow

Репутация: 4
Всего: 30



gambit
Код

using System;

namespace qwertrty
{
    class Program
    {
        public static void Main(string[] args)
        {
            string s1;
            string s = "Hello";
            
            s1 = s[1].ToString();        
            Console.WriteLine(s1);
            Console.ReadKey(true);
        }
    }
}


все нормально =) никаких ошибок =)

Добавлено через 4 минуты и 14 секунд
и остальные варианты тоже рабочие, я же сначало пробовал так делать =) перед тем как запостить =)

Добавлено через 8 минут и 14 секунд
gambit, мб строка пустая ?)


--------------------
"Решение зависит от выбранного геморроя" © Snowy
"у нас как в армии - либо работает, либо так и задумано"
PM MAIL ICQ   Вверх
gambit
Дата 2.7.2008, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: 3
Всего: 40



Exai1e, ну не знаю, вечером буду мучится, строка не пустая, но прогоняется в цикле и в кв. скобках вместо циферы переменная.

Добавлено через 43 секунды
Кстати, на этапе компиляции она пустая.
PM MAIL ICQ Skype   Вверх
Exai1e
Дата 2.7.2008, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 908
Регистрация: 3.12.2006
Где: Moscow

Репутация: 4
Всего: 30



gambit, ну вот так тоже все нормально, в цикле =) покажи лучше код smile
Код

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace temp1
{
    class Program
    {
        static void Main(string[] args)
        {
            string s;
            string s1;

            s = Console.ReadLine();

            for (int i = 0; i < s.Length ; i++)
            {
                s1 = s[i].ToString();
                Console.WriteLine(s1);
            }
            Console.ReadKey(true);
        }
    }
}



--------------------
"Решение зависит от выбранного геморроя" © Snowy
"у нас как в армии - либо работает, либо так и задумано"
PM MAIL ICQ   Вверх
gambit
Дата 2.7.2008, 18:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: 3
Всего: 40



Код

int scob = 0;
            for (int t; t < s.Length; t++ )
            {
                if (s[t].ToString == "(") scob++;
                if (s[t].ToString == ")") scob--;  
            }
            if (scob != 0) return 1;



Цитата

Error    1    Operator '==' cannot be applied to operands of type 'method group' and 'string'    C:\Users\Евгений Ильин\Documents\Visual Studio 2008\Projects\ConsoleApplication2\ConsoleApplication2\Program.cs    28    21    ConsoleApplication2

Error    2    Operator '==' cannot be applied to operands of type 'method group' and 'string'    C:\Users\Евгений Ильин\Documents\Visual Studio 2008\Projects\ConsoleApplication2\ConsoleApplication2\Program.cs    29    21    ConsoleApplication2


PM MAIL ICQ Skype   Вверх
gambit
Дата 2.7.2008, 19:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: 3
Всего: 40



Цитата(gambit @ 1.7.2008,  09:51)
Цитата(Exai1e @  1.7.2008,  09:38 Найти цитируемый пост)
this - это аналог Self в Delphi

это я знаю, но в книге было написано что еще есть такой метод, сегодня попозже из книги выпишу.

Валерий Фаронов
Создание приложений с помощью c#

стр.109

Цитата

public char this{ int Index } {grt:}    Это свойство позволяет получить нужный символ из строки....

PM MAIL ICQ Skype   Вверх
dimas_sceen
Дата 2.7.2008, 23:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 8.1.2008

Репутация: нет
Всего: нет



Такой вопрос, после размещения на форме экземпляра класса унаследованного от  контрола, форма не обрабатывает события. Как ее заставить их обрабатывать?
Код

using System.Windows.Forms;

namespace DeviceApplication1
{
    public partial class Form1 : Form
    {
        cls l;
        public Form1()
        {
            InitializeComponent();
            l = new cls();
            l.Parent = this;
        }

        private void Form1_KeyDown(object sender, KeyEventArgs e)
        {
            MessageBox.Show("Down");
        }

    }
}
public class cls : UserControl
{
    public cls()
    {
        this.KeyDown += new KeyEventHandler(listeng_KeyDown);
    }

    void listeng_KeyDown(object sender, KeyEventArgs e)
    {
        MessageBox.Show("cls DOWN");
    }
}


Если убрать "l.Parent = this;" то тогда форма будет обрабатывать нажатия.
Спасибо.
PM MAIL   Вверх
Exai1e
Дата 3.7.2008, 08:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 908
Регистрация: 3.12.2006
Где: Moscow

Репутация: 4
Всего: 30



gambit
Код

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace temp1
{
    class Program
    {
        static void Main(string[] args)
        {
            string s;
            string s1;

            s = "(Hello)";
            //s = Console.ReadLine();

            for (int i = 0; i < s.Length ; i++)
            {
                s1 = s[i].ToString();

                //работает
                if (s[i].ToString().Equals("("))
                    Console.WriteLine("J_J");

                //работает
                if (s1.Equals("("))
                    Console.WriteLine("Не не не Девид Блейн, не не не !");
            }
            Console.ReadKey(true);
        }
    }
}



Добавлено через 2 минуты и 54 секунды
 smile C#  smile 


--------------------
"Решение зависит от выбранного геморроя" © Snowy
"у нас как в армии - либо работает, либо так и задумано"
PM MAIL ICQ   Вверх
ImA
  Дата 3.7.2008, 10:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 129
Регистрация: 8.12.2005

Репутация: нет
Всего: нет



здравия желаю =)
очередной ламерский вопрос в общую карзину
как в си шарпе дотнета можно нарисовать примитивы, например прямоугольник, линию, через события мыши OnMousedown,OnMouseMove, OnMouseUp...
принцип действия такой - кнопка мыши, опускаясь, определяет начальные координаты примитива, кнопка зажата, ведем мышью - примитив перерисовывается, определяя конечную точку рисования, соответственно изменяя размеры... кнопка мыши отпускается, примитив рисуется по начальным и конечным координатам, образуя требуемый примитив
PM MAIL ICQ Jabber   Вверх
Unsane
Дата 3.7.2008, 11:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 8.6.2007

Репутация: 2
Всего: 5



Цитата(ImA @ 3.7.2008,  10:26)
здравия желаю =)
очередной ламерский вопрос в общую карзину
как в си шарпе дотнета можно нарисовать примитивы, например прямоугольник, линию, через события мыши OnMousedown,OnMouseMove, OnMouseUp...
принцип действия такой - кнопка мыши, опускаясь, определяет начальные координаты примитива, кнопка зажата, ведем мышью - примитив перерисовывается, определяя конечную точку рисования, соответственно изменяя размеры... кнопка мыши отпускается, примитив рисуется по начальным и конечным координатам, образуя требуемый примитив

Вот пример рисования прямоугольника
Код

    public partial class Form1 : Form
    {
        int sX, sY; // Начальные координаты
        Bitmap mBmp, tBmp; // Основной и вспомогательный битмапы
        bool isMouseDown = false;
        PictureBox pictureBox1 = new PictureBox(); // пикчербокс, в котором будем рисовать

        public Form1()
        {
            InitializeComponent();
            // Растягиваем пикчербокс во всю форму и по его размерам задаем основной битмап
            pictureBox1.Dock = DockStyle.Fill;
            this.Controls.Add(pictureBox1);
            pictureBox1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.pictureBox1_MouseDown);
            pictureBox1.MouseMove += new System.Windows.Forms.MouseEventHandler(this.pictureBox1_MouseMove);
            pictureBox1.MouseUp += new System.Windows.Forms.MouseEventHandler(this.pictureBox1_MouseUp);

            mBmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);
        }

        private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
        {
            isMouseDown = true; // кнопка мыши нажата.. Можно сделать проверку на левую кнопку, если нужно
            sX = e.X; sY = e.Y; // Запоминаем начальные координаты
            pictureBox1.Cursor = Cursors.SizeNWSE; // меняем курсор мыши
        }


        private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
        {
            if (isMouseDown) // если кнопка мыши нажата
            {
                tBmp = new Bitmap(pictureBox1.Width, pictureBox1.Height); // создаем дополнительный битмап
                using (Graphics gr = Graphics.FromImage(tBmp))
                {
                    gr.DrawImageUnscaled(mBmp, 0, 0); // копируем содержимое основного битмапа
                }
                paintRectangle(tBmp, sX, sY, e.X, e.Y); // рисуем прямоугольник на вспомогательном битмапе
            }
        }

        private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
        {
            if (isMouseDown) // Если кнопка мыши нажата
            {
                isMouseDown = false; // "отпускаем" кнопку мыши
                paintRectangle(mBmp, sX, sY, e.X, e.Y); // рисуем прямоугольник на основном битмапе
                pictureBox1.Cursor = Cursors.Default; // возвращаем стандартный курсор
            }
        }

        void paintRectangle(Bitmap bmp, int startX, int startY, int finalX, int finalY)
        {
            SolidBrush myBrush = new SolidBrush(Color.Black); // Инициализируем кисть(черную)
            Graphics g = Graphics.FromImage(bmp); // выбираем "поверхность для рисования"

            // рисуем прямоугольник
            if (startX <= finalX && startY <= finalY)
                g.DrawRectangle(new Pen(myBrush), startX, startY, finalX - startX, finalY - startY);
            if (startX < finalX && startY > finalY)
                g.DrawRectangle(new Pen(myBrush), startX, finalY, finalX - startX, startY - finalY);
            if (startX > finalX && startY < finalY)
                g.DrawRectangle(new Pen(myBrush), finalX, startY, startX - finalX, finalY - startY);
            if (startX > finalX && startY > finalY)
                g.DrawRectangle(new Pen(myBrush), finalX, finalY, startX - finalX, startY - finalY);

            pictureBox1.Image = bmp; // получиный битмап подставляем в пикчербокс
        }
    }

Два битмапа нужны, чтобы при растягивании прямоугольника не оставалось старых линий.

Это сообщение отредактировал(а) Unsane - 3.7.2008, 12:09
--------------------
Я дурак.. Этим и интересен!
PM MAIL   Вверх
ImA
Дата 4.7.2008, 10:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 129
Регистрация: 8.12.2005

Репутация: нет
Всего: нет



на форме нужен пикчер бокс? а то у меня ошибки выскакивают
Error    1    The type 'laba.Form1' already contains a definition for 'pictureBox1'    C:\dotnet\laba\laba\Form1.cs    16    20    laba
если закаментировать строчку PictureBox pictureBox2 = new PictureBox();, а на форму бросить компонент этот, то все рисуется... 
а кстати, из-за чего изменение размеров происходит рывками? 
PM MAIL ICQ Jabber   Вверх
Unsane
Дата 4.7.2008, 22:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 8.6.2007

Репутация: 2
Всего: 5



У тебя на форме уже есть PictureBox с именем pictureBox1. Потому и ошибка. Переименуй один из них..
По поводу мерцания - попробуй у формы выставить свойство DoubleBuffered в true.
--------------------
Я дурак.. Этим и интересен!
PM MAIL   Вверх
ImA
  Дата 7.7.2008, 08:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 129
Регистрация: 8.12.2005

Репутация: нет
Всего: нет



спасибо большущее  smile 
PM MAIL ICQ Jabber   Вверх
ImA
Дата 10.7.2008, 09:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 129
Регистрация: 8.12.2005

Репутация: нет
Всего: нет



Код

isMouseDown = true; // кнопка мыши нажата.. Можно сделать проверку на левую кнопку, если нужно

не получается сказать программе какая из кнопок мыши нажата - левая или правая
PM MAIL ICQ Jabber   Вверх
Exai1e
Дата 10.7.2008, 12:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 908
Регистрация: 3.12.2006
Где: Moscow

Репутация: 4
Всего: 30



Цитата(ImA @  10.7.2008,  10:17 Найти цитируемый пост)
не получается сказать программе какая из кнопок мыши нажата - левая или правая 

к примеру 
Код

        private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
                MessageBox.Show("Left", "Left");
            else
                MessageBox.Show("Right", "Right");
        }



--------------------
"Решение зависит от выбранного геморроя" © Snowy
"у нас как в армии - либо работает, либо так и задумано"
PM MAIL ICQ   Вверх
Unsane
Дата 12.7.2008, 22:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 8.6.2007

Репутация: 2
Всего: 5



Привет всем. Вот такой вопрос. Есть класс, например, MyData. Можно ли организовать, например, класс MyDataManager, который будет работать с коллекцией MyData как ListBox со своими Items.
Например:
Код

MyDataManager mdm = new MyDataManager();
MyData md = new MyData();
mdm.Items.Add(md);
mdm.Items[0].КАКОЕ_ТО_ПОЛЕ_КЛАССА_MyData = "привет";


--------------------
Я дурак.. Этим и интересен!
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0921 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.