Страница 3 из 4

Re: Вопросы по языкам C,C#,С++

СообщениеДобавлено: 22.01.2012, 01:25
le Sandro
Mita +5

Re: Вопросы по языкам C,C#,С++

СообщениеДобавлено: 22.01.2012, 09:38
ALSN
Mita, как раз таки нет, это именно операционка 2002 года написания. На скрине представлена фотография из интернета, просто очень похоже. У меня слетел загрузочник винды и сгорела оперативка, мне предложили дос или нортон 2002 года на русском. Как я мог при этих обстаятельствах запустить файловый менеджер, написанный на основе линукса? Да к тому же там была консоль команд и был представлен диск X:boot.

Кстати, а я как раз и хочу файловый менеджер написать.

Re: Вопросы по языкам C,C#,С++

СообщениеДобавлено: 22.01.2012, 18:14
Mita
Попугай писал(а):Mita, как раз таки нет, это именно операционка 2002 года написания. На скрине представлена фотография из интернета, просто очень похоже. У меня слетел загрузочник винды и сгорела оперативка, мне предложили дос или нортон 2002 года на русском. Как я мог при этих обстаятельствах запустить файловый менеджер, написанный на основе линукса? Да к тому же там была консоль команд и был представлен диск X:boot.

Кстати, а я как раз и хочу файловый менеджер написать.


Операцио́нная систе́ма, сокр. ОС (англ. operating system, OS) — комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной системы и прикладными программами, а с другой стороны — предназначены для управления устройствами, управления вычислительными процессами, эффективного распределения вычислительных ресурсов между вычислительными процессами и организации надёжных вычислений. Это определение применимо к большинству современных операционных систем общего назначения.
http://ru.wikipedia.org/wiki/%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D0%B0%D1%8F_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0

Файловый менеджер написать - это хорошо! Это, так сказать, не совсем тривиальный пример, который ОЧЕНЬ хорошо подходит для обучения.
С другой стороны, если вам не для обучения - то их же полно :)

Re: Вопросы по языкам C,C#,С++

СообщениеДобавлено: 26.01.2012, 16:22
ALSN
У меня имеются две формы (windows forms): main.h и about.h.
В main.h есть меню и у кнопки "О программе" вот такой код:
Код: Выделить всё
private: System::Void выходToolStripMenuItem1_Click(System::Object^  sender, System::EventArgs^  e) {
//Тут я должен добавить какие-то свои действия или влепить обработчик событий, но я хочу открыть форму about.h
}

И нужно, чтобы при нажатии этой кнопки открывалась форма about.h. Какой код для этого надо вставить туда (где комментарием отмечено)?

Re: Вопросы по языкам C,C#,С++

СообщениеДобавлено: 26.01.2012, 17:10
Mita
Попугай писал(а):У меня имеются две формы (windows forms): main.h и about.h.
В main.h есть меню и у кнопки "О программе" вот такой код:
Код: Выделить всё
private: System::Void выходToolStripMenuItem1_Click(System::Object^  sender, System::EventArgs^  e) {
//Тут я должен добавить какие-то свои действия или влепить обработчик событий, но я хочу открыть форму about.h
}

И нужно, чтобы при нажатии этой кнопки открывалась форма about.h. Какой код для этого надо вставить туда (где комментарием отмечено)?

1) Создать ссылку на объект (или сразу объект, на стеке)
2) Создвть объект, проинициализировать им ссылку(new имя класса формы about)
3) У объекта вызвать метод show

Re: Вопросы по языкам C,C#,С++

СообщениеДобавлено: 26.01.2012, 17:28
ALSN
Mita, сижу гадаю над синтаксисом команд, пишет то "не объявленный идентификатор", то "следует использовать gcnew", то "синтаксическая ошибка".
Слёзно прошу привести пример кода, а то я так долго могу над синтаксисом гадать, а то раньше никогда сразу 2 формы не использовал.

Re: Вопросы по языкам C,C#,С++

СообщениеДобавлено: 26.01.2012, 18:26
Mita
Попугай писал(а):Mita, сижу гадаю над синтаксисом команд, пишет то "не объявленный идентификатор", то "следует использовать gcnew", то "синтаксическая ошибка".
Слёзно прошу привести пример кода, а то я так долго могу над синтаксисом гадать, а то раньше никогда сразу 2 формы не использовал.


Посмотри здесь

http://johnstewien.wordpress.com/2008/0 ... c-or-ccli/

Re: Вопросы по языкам C,C#,С++

СообщениеДобавлено: 27.01.2012, 16:01
maestro
Попугай
Переходи уже на C#. ИМХО, использовать C++ вместе с .NET - это извращение. Синтаксис похожий, но проблем будет намного меньше.

По теме: у формы есть метод ShowDialog, который открывает модальное окно на текущем потоке.

Re: Вопросы по языкам C,C#,С++

СообщениеДобавлено: 28.01.2012, 17:41
ALSN
Mita, maestro, спасибо, форму прилепил.

Пишу сейчас калькулятор, и надо реализовать самую простую функцию: 10 кнопок с числами и текстовое поле, надо сделать так, чтобы с помощью кнопок можно было вводить в текстовое поле числа.
Вот как делаю я:
Код: Выделить всё
Обработчик событий для кнопки "1":          
int *num = new int(1);
oper -> Text = System::Convert::ToString(*num);// oper - это текстовое поле
delete num;
Обработчик событий для кнопки "2":
int *num = new int(2);
oper -> Text = System::Convert::ToString(*num);
delete num;


Только цифры записываются не последовательно, а просто появляется одна цифра, на кнопку которой я нажимаю.
Помогите пожалуйста, как правильно реализовать последовательную запись цифр?

Re: Вопросы по языкам C,C#,С++

СообщениеДобавлено: 28.01.2012, 18:05
maestro
Код: Выделить всё
oper -> Text += System::Convert::ToString(*num);

Подойдёт?

Re: Вопросы по языкам C,C#,С++

СообщениеДобавлено: 28.01.2012, 18:07
ALSN
maestro, спасибо! Теперь нормально записывается.

Re: Вопросы по языкам C,C#,С++

СообщениеДобавлено: 28.01.2012, 20:40
ALSN
Проблема с char, что-то не так. Хочу обозначить переменную char за запятую, вот код:
Код: Выделить всё
//Код обработчика событий кнопки "запятая"
char *num = new char; // Сделал я чар
*num = ',';// Присвоил ему запятую
oper -> Text += System::Convert::ToString(*num);//Опер - текстбокс, в него добавляется запятая
delete num;// Чар удаляется

А добавляется не запятая, а какое-либо число, чаще всего 44. На адрес в памяти не похоже. Пробовал сделать простой char без указателя, тогда вылезает True, я вообще в шоке, что-то компиль char с bool-ом путает.
Подскажите пожалуйста, как правильно оформить код, чтобы присвоить char-у значение запятой и вывести её на текстбокс?

Re: Вопросы по языкам C,C#,С++

СообщениеДобавлено: 28.01.2012, 22:24
maestro
А без динамического выделения никак не обойтись? Зачем настолько всё усложнять?
Код: Выделить всё
oper -> Text += ',';

Оператор += по идее должен принимать char. Если не примет, заключи его в парные кавычки.

Re: Вопросы по языкам C,C#,С++

СообщениеДобавлено: 29.01.2012, 11:06
ALSN
Спасибо, работает, только работает с такими кавычками ",".

Re: Вопросы по языкам C,C#,С++

СообщениеДобавлено: 16.02.2012, 19:38
ALSN
Вот такой вопрос, как работать с comboBox (Раскрывающийся список).

Вот как он выглядит:
Код: Выделить всё
this->comboBox1->FormattingEnabled = true;
this->comboBox1->Items->AddRange(gcnew cli::array< System::Object^  >(32) {L"кг/м3", L"г/см3", L"т", L"ц", L"кг", L"г", L"мг",
L"м3", L"л", L"см3", L"км/ч", L"м/с", L"км", L"м", L"дц", L"см", L"мм", L"ч", L"мин", L"с", L"МН", L"кН", L"гН", L"Н", L"мН",
L"МПа", L"кПа", L"гПа", L"Па", L"мПа", L"Н/м3", L"Н/см3"});
this->comboBox1->Location = System::Drawing::Point(160, 52);
this->comboBox1->Name = L"comboBox1";
this->comboBox1->Size = System::Drawing::Size(121, 21);
this->comboBox1->TabIndex = 1;
this->comboBox1->SelectedIndexChanged += gcnew System::EventHandler(this, &Form1::comboBox1_SelectedIndexChanged);


Я так понимаю здесь массив получается с вариантами выбора (Па, МПа, м/с итд). И мне надо написать обработчик событий для кнопки, что если выбран такой-то вариант, то делай это, такой, то делай то. Ну тут понятно if и else буду использовать, но вот как называется переменная, в которой хранится выбраный в комбобоксе вариант и как мне сравнить его с элементами из массива (Па, МПа, м/с итд) я не знаю.
Подскажите пожалуйста, как мне условие при if и else прописывать?