Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/25: Рейтинг темы: голосов - 25, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 03.06.2019
Сообщений: 81

Создание простого графического интерфейса

03.03.2020, 23:44. Показов 5122. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть код. Можете помочь создать простой графический интерфейс, нужно создать пять "полей" для ввода: 1 - указание пути, откуда брать 1.txt, 2 - количество битов в блоке(m), 3 - количество замен(p), 4 - количество битов в пакете(pp), 5 - куда сохранить 4.txt(5 поле необязательно, можно сохранять в тот же путь, который указан в 1 поле).
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
:
#include <iostream>
#include <fstream>
#include <stdio.h>
#include <string.h>
#include <cstdlib>
#include <string.h>
#include <ctime>
 
using namespace std;
 
void convertation()
{
unsigned char bayt;
 
FILE    *file=fopen("1.txt","rb");
FILE    *out_file=fopen("2.txt","wb");
 
char sim;
 
while(!feof(file))
{
    fread(&bayt,1,1,file);
 
    if((bayt>>7)==1)
        sim='1';
    else
        sim='0';
    fwrite(&sim,1,1,out_file);
 
 
    if(((bayt>>6)&1)==1)
        sim='1';
    else
        sim='0';
    fwrite(&sim,1,1,out_file);
 
    if(((bayt>>5)&1)==1)
        sim='1';
    else
        sim='0';
    fwrite(&sim,1,1,out_file);
 
    if(((bayt>>4)&1)==1)
        sim='1';
    else
        sim='0';
    fwrite(&sim,1,1,out_file);
 
    if(((bayt>>3)&1)==1)
        sim='1';
    else
        sim='0';
    fwrite(&sim,1,1,out_file);
 
    if(((bayt>>2)&1)==1)
        sim='1';
    else
        sim='0';
    fwrite(&sim,1,1,out_file);
 
    if(((bayt>>1)&1)==1)
        sim='1';
    else
        sim='0';
    fwrite(&sim,1,1,out_file);
 
    if((bayt&1)==1)
        sim='1';
    else
        sim='0';
    fwrite(&sim,1,1,out_file);
}
    fclose(out_file);
}
 
int main()
{
convertation();
setlocale(LC_ALL, "Rus");
 
    ifstream fin("2.txt", ios::in  | ios::ate  );
    ofstream fout("3.txt", ios::out);
 
    if (!fin) { cout << " Ошибка открытия файла! " << endl; return 1; }
 
    long len = fin.tellg();
    char *buf = new char [len + 1];
    fin.seekg(0, ios::beg);
    fin.read(buf,len);
    buf[len]='\0';
    long n = 0, i = 0, j = 0;
    long m;
    cout << "введите количество битов в блоке: ";
    cin>>m;
    int count = 0;
    while (buf[i])
    {
        if(i%m==0 && i>0)
        {
            for (j = n; j < i; ++j)
            {
                fout <<buf[j];
            }
            n = i ;  fout << endl;
        }
        ++i;
    }
    fin.close();
    fout.close();
    delete buf;
    setlocale( LC_ALL,"Russian" );
    srand(time(0));
    string a;
    ifstream creat;
    creat.open("3.txt");
    int p;
    cout << "введите количество замен: ";
    cin>>p;
    int pp;
    cout << "введите количество битов в пакете: ";
    cin>>pp;
    ofstream ofs("4.txt");
    int r=0;
    int max=0;
    while(getline(creat,a))
    {
        int m =a.length();
        int i =0;
        int ii = 1;
        int *mas = new int[r];
        int k=-1;
        while (i<p)
        {
            r=0;
            int n = rand() % m +0;
            k=k+1;
            mas[k]=n;
        while(r!=max)
            {
                int n1=n+1;
                int n2=n-1;
            if(n1=mas[r] && n2==mas[r])
            {
            n=rand() % m +0;
            }
            else
            {
            r=r+1;
            }
            k=k+1;
            mas[k]=n;
            max=sizeof(mas);
            }
            if (a[n]=='0')
                a[n]='1';
            else
                a[n]='0';
                while(ii<pp)
                {
                    n=n+1;
                    k=k+1;
                    mas[k]=n;
                    if (a[n]=='0')
                        a[n]='1';
                    else
                        a[n]='0';
                    ii=ii+1;
                }
            i=i+1;
        }
            delete[]mas;
            i=0;
            while(i<m)
            {
                ofs << a[i];
                i=i+1;
            }
    }
    return 0;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.03.2020, 23:44
Ответы с готовыми решениями:

Создание графического интерфейса
Дали задание написать матричный калькулятор.Я вроде с этим справился теперь нужен интерфейс для неё .раньше никогда не делал.использую...

Создание графического интерфейса
Всем привет! Подскажите, как создаются приложения с графическим интерфейсом? Например, та же Visual Studuo. Я сколько не ищу, ничего...

Создание графического пользовательского интерфейса
Доброго времени суток всем! Хотел бы обратиться к вам за советом. Вот недавно закончил писать проект на Си и теперь мне пришла идея...

5
 Аватар для zayats80888
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
03.03.2020, 23:58
Цитата Сообщение от Igor912 Посмотреть сообщение
Можете помочь создать простой графический интерфейс, нужно создать пять "полей" для ввода
Это в консоле то? Ну-ну, простой...
0
0 / 0 / 0
Регистрация: 03.06.2019
Сообщений: 81
04.03.2020, 09:26  [ТС]
Цитата Сообщение от zayats80888 Посмотреть сообщение
Это в консоле то? Ну-ну, простой...
не совсем понял насчет консоли. можно использовать WinAPI или WinForm. я просто в этом не шарю.
0
9037 / 2937 / 494
Регистрация: 05.10.2013
Сообщений: 7,962
Записей в блоге: 216
04.03.2020, 11:32
Посмотрите мануал библиотеки FLTK. Подойдёт такой вариант? Вроде она применяется в качестве учебной в 12 главе какой-то книги Страуструпа. Тема была такая: FLTK, нет файла fltk.lib

Цитата Сообщение от Igor912 Посмотреть сообщение
WinAPI или WinForm
Проще всего установить Qt.
0
Just Do It!
 Аватар для XLAT
4195 / 2650 / 654
Регистрация: 23.09.2014
Сообщений: 8,942
Записей в блоге: 3
04.03.2020, 21:44
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Проще всего
Если есть MSVS, то смысла в QT большого нет.

Провёл эксперимент по изготовлению формы на время,
Сама форма делается в WinForm проекте за 10 минут:
Начинка логикой это отдельная(основная) забота.

Результат(без логики):
Вложения
Тип файла: rar Form_2020_1.rar (24.3 Кб, 27 просмотров)
1
9037 / 2937 / 494
Регистрация: 05.10.2013
Сообщений: 7,962
Записей в блоге: 216
05.03.2020, 02:05
Цитата Сообщение от XLAT Посмотреть сообщение
Если есть MSVS, то смысла в QT большого нет.
Это сложный и многогранный вопрос. C++ для WinForms - это специфичный C++. Его ещё называют C++/CLI. Не зря же подраздел форума по C++/CLI Windows Forms находится в разделе .NET, а не в разделе C++. А другой стороны C++ в Qt - тоже специфичный. А кто из них более специфичный Qt или C++/CLI не берусь судить.

Ещё очень сильно зависит есть ли у человека насколько дополнительных ГБайт для Qt. Может так оказаться, что места на жёстком физически нет, тогда действительно нужно искать более легковесные альтернативы.

Лично я придерживаюсь стратегии, что для заказов нужно использовать более подходящие инструменты. Я бы вместо C++/CLI для WinForms взял бы C#. Какие-то приложения лучше вообще делать с GUI на HTML5/CSS3, а код писать на TypeScript (в крайнем случае на JavaScript), потому что намного проще и быстрее так сделать кроссплатфоменное приложение.

Если для задачи очень критична скорость и браузер физически не потянет, но нужно делать Desktop приложение и смотреть потянет ли C# (или Java/Python - кому что нравится), если нет, то брать C++. Я пока не вижу достойно альтернативы Qt на С++. Даже на Python для GUI на первом месте PySide2 (официальная разработка для Qt) и PyQt5. Владение несколькими инструментами расширяет возможности для выбора более подходящего инструмента для решения разных задач.

Цитата Сообщение от XLAT Посмотреть сообщение
смысла в QT большого нет
Можно взглянуть на эту проблему выбора под разными углами. Может человеку нужно для выполнения задания по-быстрому - сдал и забыл. У него есть MSVS и наверное CLI/WinForms ставится по-умолчанию. Он создаёт пустой проект на WinForms, ищет в интернете, как сделать ввод, открытие файла и т.д. Ничего качать и устанавливать не надо, а Qt - это установка, непривычное IDE. Быстренько накидал в CLI/WinForms и всё - это была последняя лаба по C++, лаба сдана, а следующий на очереди в ВУЗ'е: C#, Java или JavaScript/Web. Может для знакомства и лаб на C++ подойдут и CLI/WinForms, и C++ Builder, а и при желании, наличие времени и места на жёстком можно на Qt делать лабы. Сильной разницы в дизайнерах форм нет, но концепция Сигнал/Слот - специфичная на Qt. Везде есть свои плюсы и минусы. Кому-то что-то нравится, кому-то нет.

А может быть другая ситация, что человек планирует что-то взять всерьёз, надолго и на C++. У него не очень большой город. Он поискал в интернете и увидел, что у него штук 5 фирм на Qt, а на C++/CLI - ни одной, а может наоборот, кто знает. В общем, ситуации, почему люди выбирают в качестве основных те или иные языки или фреймворки, очень разные. Обстоятельств можем быть много, как и их комбинаций.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.03.2020, 02:05
Помогаю со студенческими работами здесь

Подскажите библиотеку для создание графического интерфейса
Погуглил .. много разных библиотек нагуглил. Сам никогда не использовал ничего, кроме стандартных тулкитов MSVS ... Нужна библиотека .. для...

Реализация графического интерфейса
Добрый день.Долгое время уже изучаю c++,сейчас надоели консольные приложения,решил научиться делать кнопки и т.д. Почитал как это...

Подключение графического интерфейса
Начал делать масштабный проект через консольное приложение, с мыслью &quot;вот сейчас наберусь опыта в кодописании, а потом просто подключу...

Литература для графического интерфейса
Здравствуйте, у меня есть вопрос. Вот объясните, например я изучаю С++, но там консольные приложения, а как потом писать оконные? Как можно...

GUI: с чего начинать разработку графического интерфейса?
Подскажите с чего начинать разработку графического интерфейса , в рамках универа писал на Python tkinter , сейчас нужно что то более...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
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 - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru