Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.52/75: Рейтинг темы: голосов - 75, средняя оценка - 4.52
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533

Добавление нескольких файлов для последующего редактирования

03.09.2019, 12:20. Показов 15739. Ответов 158

Студворк — интернет-сервис помощи студентам
Доброго времени суток форумчане! Не так давно, благодаря знатокам из данного форума была написана (спасибо за всё) программа. Суть её в следующем: На диске лежат файлики в которых 20 строк, каждую десятую строку программа вставляет пустую строку, затем копирует содержимое 10-й строки, добавляет перед пустой строкой (проще говоря дублирует 10-ю строку), затем дублирует 11-ю и добавляет перед 11-й строкой (капец туфтология), наглядно это вот так:

Было:
7
8
9
10
11
12
13

Стало:
7
8
9
10
10

11
11
12
13

И так программка делает каждую 10-ю строку! Строк может быть уйма. Всё работает всё делится, как надо, вопрос таков:
Файлов которые нужно редактировать много, поэтому, я хотелось бы сделать, что-то типа добавления или запоминания нескольких файлов, а затем их сразу переделывать, что каждый раз не указывать файл заново. Файлы лежат в разных папках, поэтому забирать из корня не выйдет. Желательно сделать наглядно, чтобы я уже видел, какие файлики я добавил, а какие нет! Заранее спасибо за помощь!

Собственно и сама программа:
Python
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
from tkinter import *
from tkinter import ttk
import os
 
from tkinter import messagebox
from tkinter import filedialog
 
def update_the_label():
    lb0 = Label(window, text = "-")
 
def clicked_dialogOpen():
    global choosefile
    choosefile=filedialog.askopenfilename(filetypes=(("Text files", "*.txt"), ("all files", "*.*")))
    lb0 = Label(window, text = choosefile)
    lb0.pack(side ="top")
 
def clicked():
    try:
        with open(choosefile, 'r+', encoding='utf-8') as f:
            lines = f.readlines()
            f.seek(0)
            for i in range(int(combo.get())-1, len(lines), int(combo.get())):
                lines[i]+=lines[i][0:21] + "\n\n"
                if i <len(lines)-1:
                    lines[i+1]=lines[i+1][0:21] + " Информация: " + "\n" + lines[i+1]
            f.writelines(lines)
        f.close()      
    except:
        messagebox.showerror("Ошибка", "Дядь, файлик то выбери!")
    messagebox.showinfo("Завершение", "Готова")
 
window = Tk()
window.title("Дырка")
window.geometry('220x400')
window.resizable('false', 'false')
 
lb1 = Label(window, text = "Диапазон строк: ")
lb1.pack(side ="top")
 
combo=ttk.Combobox(window, values=(2,10,50,100,250,500,600,700,800,900,1000), width=28)
combo.current(0)
combo.pack(side ="top")
 
btn3 = Button(window, text = "Обновить список", command = update_the_label, width=26)
btn3.pack(side = "top")
 
btn2 = Button(window, text = "Открыть файл", command=clicked_dialogOpen, width=26)
btn2.pack(side ="top")
 
btn = Button(window, text ="Зарубить", command=clicked, width=26)
btn.pack(side ="top")
 
lb2 = Label(window, text = "_________________________")
lb2.pack(side ="top")
 
lb3 = Label(window, text = "Список отредактированных файлов:")
lb3.pack(side ="top")
 
window.mainloop()
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.09.2019, 12:20
Ответы с готовыми решениями:

Сохранить данные из них для последующего просмотра и редактирования
имеется несколько полей в которые заносятся данные. как мне сохранить данные из них для последующего просмотра и редактирования?

Как целиком загрузить таблицу из SQL БД в браузер для последующего её редактирования?
Как целиком загрузить таблицу из SQL БД в браузер для последующего её редактирования?

Добавление картинки через диалоговое окно по кнопке, для последующего сохранения в таблицу
Здравствуйте, в бд имеется таблица с полями Оле. В поля Оле добавляются картинки с изделиями. Создал форму для добавления картинок и...

158
Эксперт Python
 Аватар для dondublon
4649 / 2069 / 366
Регистрация: 17.03.2012
Сообщений: 10,178
Записей в блоге: 6
05.09.2019, 09:24
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Viktorrus Посмотреть сообщение
Если бы нельзя было использовать глобальные переменные, то тогда их не было бы в питоне.
На самом деле нет. В Питоне можно очень многое,в т.ч. из того, что нельзя, и это его беда.
Глобалки - прямой путь в говнокод, поэтому из многих языков их убрали. Так что Питон тут не показатель.
1
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
05.09.2019, 10:28  [ТС]
Viktorrus Кхм, я сейчас немного офигел из-за количества написанного Вами. Я всё ещё раз прочитаю и расскажу Вам (и всем, кто "в теме") о задаче. Так же расскажу, почему там лейбл не обновляется и т.д. Раз уж я не могу правильно её сформулировать значит и написать правильно не смогу, значит надо, как следует со всем разобраться. Чуть попозже отвечу полностью.
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
05.09.2019, 12:31
Damenikx, Вот ссылка, которую я обещал.
https://metanit.com/python/tutorial/9.3.php
Здесь расказывается, как менять тексты в виджетах, когда форма уже открыта.
Я в своем коде использовал метод config(), очень удобный. Позволяет в уже открытой форме менять любые параметры виджета.

Добавлено через 5 минут
С помощью этого метода, я не только меняю текст в метке, но и открываю и закрываю для записи служебные виджеты Entry, которые предназначены для записи в них служебной информации, показываемой пользователю, но не доступные ему для редактирования.
0
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
05.09.2019, 14:13  [ТС]
Viktorrus, хорошая статья, добавлю в закладки.
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
05.09.2019, 20:37
Лучший ответ Сообщение было отмечено Damenikx как решение

Решение

Цитата Сообщение от dondublon Посмотреть сообщение
В Питоне можно очень многое,в т.ч. из того, что нельзя, и это его беда.
Глобалки - прямой путь в говнокод,
Уровень логики поражает. Бедные разработчики питона, которые ввели глобальные переменные, которые использовать нельзя, и бедный Лутц, который пишет "говнокоды". Они не могут осознать Ваших гениальных идей, потому, что с Вами не знакомы. А может дадите ссылку на Ваши изданные труды, в которых излагаются Ваши "гениальные" идеи? У заклейменного Вами Лутца, который считает использование глобальных переменных нормой, уже 5 раз переиздаются его книги, являющиеся объемными трудами и признанными классикой.
Опять я с Вами схлестнулся. Но в длительную полемику вступать не намерен. Стараюсь не обращать на Ваши комментарии внимания, но бывает на некоторые дикости срываюсь. На этом все, разрешите откланяться.

Добавлено через 1 час 0 минут
Damenikx, Вот я переписал Ваш код, с функцией создания формы, и запуском из блока if __name__ == '__main__':
Кликните здесь для просмотра всего текста
Python
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
from tkinter import *
from tkinter import ttk
import os
 
from tkinter import messagebox
from tkinter import filedialog
 
def makeWidgets():
    # создание графической формы
    global combo
    window = Tk()
    window.title("Дырка")
    window.geometry('220x400')
    window.resizable('false', 'false')
 
    lb1 = Label(window, text = "Диапазон строк: ")
    lb1.pack(side ="top")
 
    combo=ttk.Combobox(window, values=(2,10,50,100,250,500,600,700,800,900,1000), width=28)
    combo.current(0)
    combo.pack(side ="top")
 
    btn3 = Button(window, text = "Обновить список", command = update_the_label, width=26)
    btn3.pack(side = "top")
 
    btn2 = Button(window, text = "Выбрать файл", command=clicked_dialogOpen, width=26)
    btn2.pack(side ="top")
 
    btn = Button(window, text ="Зарубить", command=clicked, width=26)
    btn.pack(side ="top")
 
    lb2 = Label(window, text = "_________________________")
    lb2.pack(side ="top")
 
    lb3 = Label(window, text = "Список отредактированных файлов:")
    lb3.pack(side ="top")
    return window 
 
def update_the_label():
    lb0 = Label(window, text = "-")
 
def clicked_dialogOpen():
    global choosefile
    choosefile=filedialog.askopenfilename(filetypes=(("Text files", "*.txt"), ("all files", "*.*")))
    lb0 = Label(window, text = choosefile)
    lb0.pack(side ="top")
 
def clicked():
    try:
        with open(choosefile, 'r+', encoding='utf-8') as f:
            lines = f.readlines()
            f.seek(0)
            for i in range(int(combo.get())-1, len(lines), int(combo.get())):
                lines[i]+=lines[i][0:21] + "\n\n"
                if i <len(lines)-1:
                    lines[i+1]=lines[i+1][0:21] + " Информация: " + "\n" + lines[i+1]
            f.writelines(lines)
        f.close()      
    except:
        messagebox.showerror("Ошибка", "Дядь, файлик то выбери!")
    messagebox.showinfo("Завершение", "Готова")
 
if __name__ == '__main__':
 
    window = makeWidgets()
    window.mainloop()

Работает так же, как Ваш код.
Теперь его можно дорабатывать, размещая внизу формы нужные Вам сообщения.
Только четко определите алгоритм, что должно писаться внизу формы.

Добавлено через 3 минуты
На самом деле внизу формы , после размещения кода создания формы в функции, выводит не совсем так как у Вас. Но теперь без проблем можно выводить внизу сообщения по любому, как только Вы захотите. Только скажите, как Вы хотите.
1
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
06.09.2019, 08:01  [ТС]
Viktorrus, спасибо Вам огромное, сейчас всё переделаю!

Добавлено через 54 секунды
У меня теперь каша в голове, получается использовать глобальные переменные всё-таки можно)))
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
06.09.2019, 09:28
Цитата Сообщение от Damenikx Посмотреть сообщение
У меня теперь каша в голове, получается использовать глобальные переменные всё-таки можно
нет, вернее так -есть редкие случаи, когда использование глобал может дать какой то выигрыш, по сравнению с другими решениями. Но в общем случае не используй глобал, а чтобы понять почему -нужно много читать и думать.
Глобал в пайтон и статик в джаве (мой второй язык) это очевидные и простые для новичка вещи, поэтому все новички и всегда за него хватаются и порой проблем то и не видят. Пока программа простая и короткая все может прекрасно работать, но когда она начнет расти да еще и многопоточность добавится, тут то и начинаешь понимать почему в обоих языках учат обходиться без них.
Но это только если ты планируешь расти в программировании. Если нет, то конечно используй глобал, пиши клоуз после менеджера контекста (как в коде выше), бабахай методы по 100 строк - все равно никто кроме тебя не пострадает.
1
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
06.09.2019, 09:51
Viktorrus, а почему не засунуть все в класс? => избавиться от global.
Кликните здесь для просмотра всего текста
Python
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
# не вникал, копипаст
 
from tkinter import *
from tkinter import ttk
import os
 
from tkinter import messagebox
from tkinter import filedialog
 
class Window(Tk):
 
    def __init__(self):
        Tk.__init__(self)
        self.title("Дырка")
        self.geometry('220x400')
        self.resizable('false', 'false')
 
        lb1 = Label(self, text="Диапазон строк: ")
        lb1.pack(side="top")
 
        self.combo = ttk.Combobox(self, values=(
            2, 10, 50, 100, 250, 500, 600, 700, 800, 900, 1000), width=28)
        self.combo.current(0)
        self.combo.pack(side="top")
 
        btn3 = Button(self, text="Обновить список",
                      command=self.update_the_label,
                      width=26)
        btn3.pack(side="top")
 
        btn2 = Button(self, text="Выбрать файл",
                      command=self.clicked_dialogOpen,
                      width=26)
        btn2.pack(side="top")
 
        btn = Button(self, text="Зарубить", command=self.clicked, width=26)
        btn.pack(side="top")
 
        lb2 = Label(self, text="_________________________")
        lb2.pack(side="top")
 
        lb3 = Label(self, text="Список отредактированных файлов:")
        lb3.pack(side="top")
 
    def update_the_label(self):
        lb0 = Label(self, text="-")
 
    def clicked_dialogOpen(self):
        self.choosefile = filedialog.askopenfilename(
            filetypes=(("Text files", "*.txt"), ("all files", "*.*")))
        lb0 = Label(self, text=self.choosefile)
        lb0.pack(side="top")
 
    def clicked(self):
        try:
            with open(self.choosefile, 'r+', encoding='utf-8') as f:
                lines = f.readlines()
                f.seek(0)
                for i in range(int(self.combo.get()) - 1, len(lines),
                               int(self.combo.get())):
                    lines[i] += lines[i][0:21] + "\n\n"
                    if i < len(lines) - 1:
                        lines[i + 1] = lines[i + 1][
                                       0:21] + " Информация: " + "\n" + \
                                       lines[
                                           i + 1]
                f.writelines(lines)
            f.close()
        except:
            messagebox.showerror("Ошибка", "Дядь, файлик то выбери!")
        messagebox.showinfo("Завершение", "Готова")
 
w = Window()
w.mainloop()
1
Эксперт Python
 Аватар для dondublon
4649 / 2069 / 366
Регистрация: 17.03.2012
Сообщений: 10,178
Записей в блоге: 6
06.09.2019, 10:47
Цитата Сообщение от Viktorrus Посмотреть сообщение
Уровень логики поражает. Бедные разработчики питона, которые ввели глобальные переменные, которые использовать нельзя, и бедный Лутц, который пишет "говнокоды". Они не могут осознать Ваших гениальных идей, потому, что с Вами не знакомы. А может дадите ссылку на Ваши изданные труды, в которых излагаются Ваши "гениальные" идеи? У заклейменного Вами Лутца, который считает использование глобальных переменных нормой,
Конечно, я и не сомневался, что мой уровень логики для вас - слишком высок и поразит вас.
Разработчики Питона, если что, не "ввели" глобальные переменные, точнее, ввели не их. Сама структура языка такова, что выпилить их невозможно.
Будьте любезны, приведите пример, где у Лутца описывается, что использования глобалок - это норма. Вот правда, мне интересно. Иначе всё, что вы написали - это просто дурь.
Примеры элементарного кода на 10 строк - не в счёт.
Цитата Сообщение от Viktorrus Посмотреть сообщение
На этом все, разрешите откланяться.
Нет уж, будьте любезны, ответьте за базар.

Добавлено через 2 минуты
Цитата Сообщение от Damenikx Посмотреть сообщение
получается использовать глобальные переменные всё-таки можно)))
Каждый сам себе злобный Буратино, я вас предупреждал.

Кстати, если интересно - в нашей компании я сейчас сам провожу собеседования по Питону, и один из моих "общефилософских" вопросов - "что плохого в глобальных переменных". Если человек не ответит - большой минус, значит, у него вообще нет практики. Но почти всегда отвечают.

Добавлено через 2 минуты
Цитата Сообщение от ioprst Посмотреть сообщение
Viktorrus, а почему не засунуть все в класс? => избавиться от global.
Потому что ему показалось, что так написал Лутц, видимо.

Добавлено через 9 минут
Viktorrus, раз уж вы такой умный, разбираетесь в глобалках, мне интересно, понимаете ли вы, (не гугля,) разницу между global variable и global value? А между глобальной переменной и синглтоном?
2
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
06.09.2019, 10:50
dondublon, проблема в его отношении к Лутцу, у него в руках букварь, а он думат, что Библия (если позволите такую метафору).
Лутц -мастер, он довольно хорошо рассказывает о всех средствах языка, чтобы дать о них представление и естественно он использует простейшие примеры, где глобал реально самый простой подход. Это нужно понимать. И читать что-то кроме Лутца. Или внимательно читать его:
Viktorrus,
For now, though, especially if you are relatively new to programming, avoid the temptation to use globals whenever you can—they tend to make programs difficult to understand and reuse, and won’t work for cases where one copy of saved data is not enough.
это 17 глава страница 496, у меня в оригинале и там еще много рассуждений о вреде глобал.

Не по теме:

dondublon, чисто из интереса, на собесе просите какой-то код написать? Листкомпс например или по ООП?

2
Эксперт Python
 Аватар для dondublon
4649 / 2069 / 366
Регистрация: 17.03.2012
Сообщений: 10,178
Записей в блоге: 6
06.09.2019, 10:57
Цитата Сообщение от Welemir1 Посмотреть сообщение
For now, though, especially if you are relatively new to programming, avoid the temptation to use globals whenever you can—they tend to make programs difficult to understand and reuse, and won’t work for cases where one copy of saved data is not enough.
Найс!
Ну ясно дело, не может быть у Лутца оправдания использованию глобалок.

По поводу кода. Именно кода прошу писать мало. Первым делом прошу написать рекурсивный факториал. (Признаюсь, это была не моя идея, но одобряю.) Казалось бы, простая задача, но на удивление много народа отсеивается сразу.
Затем - найти ошибку в антипаттерне с итератором, когда iterable в качестве итератора возвращает self. (Это уже моя придумка.) Знаете, люди любят такое писать "на скорую руку". Вроде бы тоже несложно, но и тут часто у народа нет понимания итераторов и ответить они не могут. Могу и ещё накидать, у меня список есть но там больше просто вопросы.

Про ООП я очень хотел бы спрашивать, но, каюсь, не знаю, как именно проверить эти знания. Человек может оттарабанить паттерны, прочитанные в книжке, и не видеть их в реальном коде. В итоге по мелочи спрашиваю, конечно, но меня самого не очень устраивает
1
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
06.09.2019, 11:22

Не по теме:

Цитата Сообщение от dondublon Посмотреть сообщение
Могу и ещё накидать, у меня список есть но там больше просто вопросы.
если не сложно) можно в личку, очень интересно (пошел пока писать рекурсивный факториал)
Цитата Сообщение от dondublon Посмотреть сообщение
Знаете, люди любят такое писать "на скорую руку".
тут я покраснел)



Добавлено через 2 минуты
с факториалом норм написал сходу в виде лямбды, а наверное функцией надо было)
1
Эксперт Python
 Аватар для dondublon
4649 / 2069 / 366
Регистрация: 17.03.2012
Сообщений: 10,178
Записей в блоге: 6
06.09.2019, 11:32
Welemir1, конечно, лямбда же не может быть рекурсивной

Добавлено через 9 секунд
Ща напишу в личку.
1
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
06.09.2019, 11:36
dondublon, вейт, то есть вот так не катит ? :
Python
1
2
3
4
5
factorial = lambda x: 1 if x<=1 else x*factorial(x-1)
>>> factorial(5)
120
>>> factorial(10)
3628800
1
Эксперт Python
 Аватар для dondublon
4649 / 2069 / 366
Регистрация: 17.03.2012
Сообщений: 10,178
Записей в блоге: 6
06.09.2019, 11:49
Welemir1, мне стыдно, я и не знал, что так можно.
Не, так прокатит, конечно, но вообще всегда пишут функцию.

Добавлено через 32 секунды
Welemir1, не, погоди, щас я разберусь. Как-то странно выглядит, тут должна быть проблема.

Добавлено через 1 минуту
Не, работает. Но выглядит всё равно необычно.
1
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
06.09.2019, 11:49
dondublon, ну проблема есть, кеширование к функции можно прикрутить например,а тут память будет кушать, но зато писать быстро

Добавлено через 19 секунд
Цитата Сообщение от dondublon Посмотреть сообщение
Но выглядит всё равно необычно.
а вот это приятно услышать)
1
Эксперт Python
 Аватар для dondublon
4649 / 2069 / 366
Регистрация: 17.03.2012
Сообщений: 10,178
Записей в блоге: 6
06.09.2019, 11:50
Welemir1, кеширование конечно, но тут вопрос именно на понимание рекурсии.
1
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
06.09.2019, 14:26  [ТС]
Вай Вай Вай, друзья. Монстры питона(без сарказма), вы чего устроили?)) я же теперь помру, лямбды, рекурсии, факториалы обратные, вы чего)) я тут простейшую функцию написать не могу, а тут такое)) вы главное не ссоритесь, ведь приятнее общаться, всегда, когда царит доброта и шипит пиво!) За вас и за спецназ (питоновский)
1
06.09.2019, 14:37

Не по теме:

Цитата Сообщение от Damenikx Посмотреть сообщение
я же теперь помру, лямбды, рекурсии, факториалы обратные, вы чего)
ты постепенно, сразу то не налегай))) питон как пиво -надо потреблять в меру и с расстановкой

0
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
06.09.2019, 14:43  [ТС]
Welemir1,

Не по теме:

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

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.09.2019, 14:43
Помогаю со студенческими работами здесь

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

Добавление нескольких файлов в БД
Мне надо вывести в бд сразу несколько файлов в форме. сказали что надо преобразовать массив в строку с помощью serialize() чтобы добавить...

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

Процедурное создание мира с целью его последующего редактирования
Привет, Я так и не придумал как сформировать свой запрос в гугле, поэтому надеюсь на вашу помощь. Итак, я хочу, чтобы юнити создал мне...

Добавление нескольких файлов в OpenFileDialog
Надо сделать чтоб можно было выбрать несколько файлов в OpenDialog Пока вот что сделал, место пути выдаёт OpenFileDialog1. ...


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

Или воспользуйтесь поиском по форуму:
80
Ответ Создать тему
Новые блоги и статьи
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