Форум программистов, компьютерный форум, киберфорум
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.82/215: Рейтинг темы: голосов - 215, средняя оценка - 4.82
24 / 24 / 2
Регистрация: 27.11.2009
Сообщений: 94

Как сделать собственную кнопку выхода из приложения?

01.12.2009, 12:46. Показов 41703. Ответов 66
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
скажите please как сделать собственную кнопку выхода из windows forms, как придать "button" значение выхода
1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.12.2009, 12:46
Ответы с готовыми решениями:

как сделать собственную иконку на кнопку
как сделать собственную иконку на кнопку например я хочу сделать button1 в виде диска(сохранение) а на button2 стрелку

Как сделать собственную иконку приложения?
как сделать, чтобы в проводнике приложение имело указанную, а нестандартную иконку?

Сделать кнопку выхода из отчёта
Всем привет! Как сделать кнопку выхода из отчёта?

66
24 / 24 / 2
Регистрация: 27.11.2009
Сообщений: 94
03.12.2009, 01:21  [ТС]
Студворк — интернет-сервис помощи студентам
он мне не не нужен не в первой ни во второй, я так понимаю-для чего он нужен?
1
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
03.12.2009, 10:13
delong, он нужен для того чтобы выполнять некоторые действия во время загрузки формы, например в зависимости от состояния подключения к интернету отобразить на форме соответствующий текст
2
24 / 24 / 2
Регистрация: 27.11.2009
Сообщений: 94
03.12.2009, 15:53  [ТС]
спс...подскажи как сделать чтобы форма открываласт строго в центре экрана

Добавлено через 15 минут
все нашел...
1
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
03.12.2009, 15:57
в конструкторе формы пропиши
C++
1
StartPosition = FormStartPosition::CenterScreen;
2
24 / 24 / 2
Регистрация: 27.11.2009
Сообщений: 94
03.12.2009, 15:58  [ТС]
подскажи...что то с кнопкой не получается-как сделать ее круглой: то есть есть допустим красный кружок на белом фоне и как сделать что-бы остался только красный кружок, то есть сделать белый фон прозрачным, но только по отношению к фону формы?
1
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
03.12.2009, 16:09
delong, там же в конструкторе пропиши
C++
1
2
3
button1->FlatStyle = FlatStyle::Flat;
button1->FlatAppearance->MouseDownBackColor = Color::Transparent;
button1->FlatAppearance->MouseOverBackColor = Color::Transparent;
2
24 / 24 / 2
Регистрация: 27.11.2009
Сообщений: 94
03.12.2009, 17:07  [ТС]
вот прописал...
C++
1
2
3
4
5
6
7
8
this->button1->BackColor = System::Drawing::Color::Transparent;
            this->button1->BackgroundImage = (cli::safe_cast<System::Drawing::Image^  >(resources->GetObject(L"button1.BackgroundImage")));
            this->button1->FlatAppearance->BorderSize = 0;
            this->button1->FlatAppearance->MouseDownBackColor = System::Drawing::Color::Transparent;
            this->button1->FlatAppearance->MouseOverBackColor = System::Drawing::Color::Transparent;
            this->button1->FlatStyle = System::Windows::Forms::FlatStyle::Flat;
            this->button1->Location = System::Drawing::Point(25, 208);
            this->button1->Name = L"button1";
...но белый фон все равно остался

Добавлено через 1 минуту
может мне нужно вставить не backround кнопки, а image...?

Добавлено через 1 минуту
а без разницы какого формата картинка будет?...или предпочтение *.bmp

Добавлено через 31 минуту
можно ли сделать так что бы при перемищении курсора на эту кнопку картинка изменялась-то есть появлялась другая картинка?
1
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
03.12.2009, 19:16
Цитата Сообщение от delong Посмотреть сообщение
можно ли сделать так что бы при перемищении курсора на эту кнопку картинка изменялась-то есть появлялась другая картинка?
Смотри эвенты кнопки MouseDown и MouseHover
Цитата Сообщение от delong Посмотреть сообщение
а без разницы какого формата картинка будет
лучше битмап
2
24 / 24 / 2
Регистрация: 27.11.2009
Сообщений: 94
04.12.2009, 10:11  [ТС]
можно ли запустить с Windows Forms отдельный файл exe или вообще никак?

Добавлено через 1 час 21 минуту
Вот вроде что то через это :
System.Diagnostics.Process.Start()
только это прям в обработчик сувать или куда?
1
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
04.12.2009, 15:34
Цитата Сообщение от delong Посмотреть сообщение
только это прям в обработчик сувать или куда?
да любого события или в методе, который вызовешь при каком-нибудь событии
1
24 / 24 / 2
Регистрация: 27.11.2009
Сообщений: 94
05.12.2009, 08:09  [ТС]
непонял...
Цитата Сообщение от M128K145 Посмотреть сообщение
да любого события или в методе, который вызовешь при каком-нибудь событии
ну и как вызвать файл EXE - может ,я думаю библиотеку создать,а потом из библиотеки его взять?
1
24 / 24 / 2
Регистрация: 27.11.2009
Сообщений: 94
05.12.2009, 20:11  [ТС]
Подскажите есть exe файл куда мне его нужно добавить или создать библиотеку, или что то вроде этого, что бы после этого я смог его отрыть с помощью button из формы???
1
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
05.12.2009, 23:09
C++
1
Process::Start("путь к программе");
и не забудь прописать
C++
1
using namespace System::Diagnostics;
2
24 / 24 / 2
Регистрация: 27.11.2009
Сообщений: 94
05.12.2009, 23:41  [ТС]
а process к форме надо добавлять??
а как сделать что бы без пути к программе то есть приложение, которое я открываю по кнопке являлась частью Windows Forms??
1
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
06.12.2009, 00:01
Цитата Сообщение от delong Посмотреть сообщение
то есть приложение, которое я открываю по кнопке являлась частью Windows Forms
Сам понял что спросил?
2
24 / 24 / 2
Регистрация: 27.11.2009
Сообщений: 94
06.12.2009, 00:14  [ТС]
если я пишу так...
Form1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#pragma once
 
 
namespace gh {
 
    using namespace System::Diagnostics;
    using namespace System;
    using namespace System::ComponentModel;
    using namespace System::Collections;
    using namespace System::Windows::Forms;
    using namespace System::Data;
    using namespace System::Drawing;
 
    /// <summary>
    /// Сводка для Form1
    ///
    /// Внимание! При изменении имени этого класса необходимо также изменить
    ///          свойство имени файла ресурсов ("Resource File Name") для средства компиляции управляемого ресурса,
    ///          связанного со всеми файлами с расширением .resx, от которых зависит данный класс. В противном случае,
    ///          конструкторы не смогут правильно работать с локализованными
    ///          ресурсами, сопоставленными данной форме.
    /// </summary>
    public ref class Form1 : public System::Windows::Forms::Form
    {
    public:
        Form1(void)
        {
            InitializeComponent();
            //
            //TODO: добавьте код конструктора
            //
        }
 
    protected:
        /// <summary>
        /// Освободить все используемые ресурсы.
        /// </summary>
        ~Form1()
        {
            if (components)
            {
                delete components;
            }
        }
    private: System::Windows::Forms::Button^  button1;
    protected: 
 
    private:
        /// <summary>
        /// Требуется переменная конструктора.
        /// </summary>
        System::ComponentModel::Container ^components;
 
#pragma region Windows Form Designer generated code
        /// <summary>
        /// Обязательный метод для поддержки конструктора - не изменяйте
        /// содержимое данного метода при помощи редактора кода.
        /// </summary>
        void InitializeComponent(void)
        {
            this->button1 = (gcnew System::Windows::Forms::Button());
            this->SuspendLayout();
            // 
            // button1
            // 
            this->button1->Location = System::Drawing::Point(31, 25);
            this->button1->Name = L"button1";
            this->button1->Size = System::Drawing::Size(75, 23);
            this->button1->TabIndex = 0;
            this->button1->Text = L"button1";
            this->button1->UseVisualStyleBackColor = true;
            this->button1->Click += gcnew System::EventHandler(this, &Form1::button1_Click);
            // 
            // Form1
            // 
            this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
            this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
            this->ClientSize = System::Drawing::Size(284, 264);
            this->Controls->Add(this->button1);
            this->Name = L"Form1";
            this->Text = L"Form1";
            this->ResumeLayout(false);
 
        }
#pragma endregion
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
                 Process::Start(C:\Program Files\7-Zip\7zFM.exe)
             }
    };
}

...то он мне кучу ошибок выдает:
..........

1>c:\users\валера\documents\visual studio 2008\projects\gh\gh\Form1.h(87) : error C2017: недопустимая escape-последовательность
1>c:\users\валера\documents\visual studio 2008\projects\gh\gh\Form1.h(87) : error C2017: недопустимая escape-последовательность
1>c:\users\валера\documents\visual studio 2008\projects\gh\gh\Form1.h(87) : error C2017: недопустимая escape-последовательность
1>c:\users\валера\documents\visual studio 2008\projects\gh\gh\Form1.h(87) : error C2059: синтаксическая ошибка: неправильный суффикс для числа
1>c:\users\валера\documents\visual studio 2008\projects\gh\gh\Form1.h(87) : error C2065: C: необъявленный идентификатор
1>c:\users\валера\documents\visual studio 2008\projects\gh\gh\Form1.h(87) : error C2143: синтаксическая ошибка: отсутствие ")" перед ":"
1>c:\users\валера\documents\visual studio 2008\projects\gh\gh\Form1.h(87) : error C2059: синтаксическая ошибка: )


Добавлено через 3 минуты
ну в смысле создать какую-нибудь библиотеку с этим ехе и из библиотеки его выцарапать, то есть без указания пути...можно так или неА....?
1
delong33
06.12.2009, 17:47
ну например я хочу с помощью кнопки открыть электронную книгу(.ехе), после чего записать на диск-вот почему мне нужно это сделать без указания пути файла????
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
06.12.2009, 17:59
C++
1
Process::Start(@"C:\Program Files\7-Zip\7zFM.exe");
Если екзешник, который хочешь запустить, будет лежать рядом с твоей программой то тогда можно писать только имя
2
24 / 24 / 2
Регистрация: 27.11.2009
Сообщений: 94
07.12.2009, 02:06  [ТС]
спс...и без собаки получилось это я что то намудрил...у меня вот какой вопрос а можно ли екзешник поместить в подпапку-попробовал что-то вроде этого
C++
1
Process::Start("papka/setup.exe");
-не находит...??

Добавлено через 1 час 34 минуты
...и еще не подскажишь,после компиляции конпоновки программы антивирус(у меня Norton) удаляет ее или не запускает-как с этим быть...? ....и после запуска процесса по кнопке появляется UAC(контроль учетных записей на Vista), если продолжить то все нормально, а если отменить то появляется неприятное сообщение, мол действие отменено пользователем и предлагается "продолжить" или "закрыть"->если закрыть-закроется, а если продолжить ,то программа вообще виснет...?

Добавлено через 29 минут
...и еще не подскажишь,после компиляции конпоновки программы антивирус(у меня Norton) удаляет ее или не запускает-как с этим быть...? ....и после запуска процесса по кнопке появляется UAC(контроль учетных записей на Vista), если продолжить то все нормально, а если отменить то появляется неприятное сообщение: "Необработанное исключение типа "System.ComponentModel.Win32Exceptio n" произошло в System.dll" и предлагается "прервать" или "продолжить"->если продолжить-закроется, а если прервать ,то программа вообще виснет...?
1
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
07.12.2009, 02:28
C++
1
Process::Start(@"papka\setup.exe");
Насчет второго подробнее, вообще-то такого быть не должно или это реакция на сетап
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.12.2009, 02:28
Помогаю со студенческими работами здесь

сделал, регистрацию но забыл сделать кнопку выхода
сделал, регистрацию но забыл сделать кнопку выхода, help me! вот код &lt;?php // вся процедура работает на сесиях. Именно в ней хранятся...

Как сделать активной кнопку сворачивания приложения (используя SetWindowLong)?
У приложения не активна кнопка сворачивания окна, нужно сделать ее обратно активной. говорят, что с помощью SetWindowLong можно поменять...

Как вставить собственную иконку приложения?
Vopros k tem kto programmiruet na embedded VB 3.0: kak vstavit' ikonku prilozheniua vmesto standartnoi VB?

Создать меню, в котором пользователь сам сможет выбирать, что ему нужно сделать, пока не нажмет кнопку выхода
Всем доброго времени суток! Есть небольшая проблема с меню в С++. Задача: создать меню, по которому пользователь сам сможет выбирать, что...

Как у панель обработать кнопку выхода(крестик)
мне нужно узнать когда нажимается эта кнопка,как это сделать?


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

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США. Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru