Форум программистов, компьютерный форум, киберфорум
Python: GUI, графика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/21: Рейтинг темы: голосов - 21, средняя оценка - 4.62
6 / 5 / 1
Регистрация: 04.05.2019
Сообщений: 99
PyQt5

Не работает функция move в цикле

01.02.2021, 20:02. Показов 4232. Ответов 19

Студворк — интернет-сервис помощи студентам
Здравствуйте,я бы хотел попросить помощи с решением моей проблемы.
У меня есть задача - перемещать окно туда-сюда с помощью генератора числ и потока.
Пишу в коде запуск потока,определение разрешения экрана,цикл и т.д.И всё хорошо,до тех пор пока я не пытаюсь перемещать окно.
Никаких ошибок нет,название переменной то,компьютер исправен как и Python вместе с PyQt5.Просто зависает и всё,затем вылетает окно с ошибкой винды.Версия Python 3.7.0
Собственно я думаю,что с кодом будет всё яснее:
Кликните здесь для просмотра всего текста
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
from PyQt5 import QtCore, QtGui, QtWidgets
 
import random #Рандом
from ctypes  import * #Хз чё это за модуль,но он нужен
from time import sleep #Таймер
import threading #Работа с потоками
 
class Ui_Form(object):
    def mv():
        xx=int(windll.user32.GetSystemMetrics(0)) #Разрешение ширины экрана
        yy=int(windll.user32.GetSystemMetrics(1)) #Разрешение высоты экрана
        while 1 != 0:
            print(xx,yy) #Контрольная точка,всё ок
            x = random.randint(0,xx) #Генерация координат x и y ,учитывая разрешение экрана
            y = random.randint(0,yy)
            print(x,y) #Контрольная точка тоже ок
            #Form.move(x,y) #<----- Проблема.Тут зависание
            sleep(10) #Таймер
 
    def setupUi(self, Form):
        #Тут идёт куча непонятного кода от Qt Designer,можно не читать
        Form.setObjectName("Form")
        Form.resize(251, 51)
        #Form.setStyleSheet("background-color: qlineargradient(spread:pad, x1:0, y1:1, x2:0, y2:0, stop:0 rgba(0, 0, 0, 255), stop:0.05 rgba(14, 8, 73, 255), stop:0.36 rgba(28, 17, 145, 255), stop:0.6 rgba(126, 14, 81, 255), stop:0.75 rgba(234, 11, 11, 255), stop:0.79 rgba(244, 70, 5, 255), stop:0.86 rgba(255, 136, 0, 255), stop:0.935 rgba(239, 236, 55, 255));")
        self.label = QtWidgets.QLabel(Form)
        self.label.setGeometry(QtCore.QRect(0, 0, 251, 51))
        self.label.setStyleSheet("font: 30pt \"Wingdings\";\n"
"color: qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 rgba(6, 0, 120, 255), stop:0.556818 rgba(129, 48, 48, 255), stop:1 rgba(0, 0, 0, 255));")
        self.label.setObjectName("label")
 
        self.retranslateUi(Form)
        QtCore.QMetaObject.connectSlotsByName(Form)
        
        #Тут идёт мой код
        Form.setWindowFlags(QtCore.Qt.FramelessWindowHint) #Удаление рамок окна
        th = threading.Thread(target=Ui_Form.mv) #Установка цели для потока
        th.daemon = True #Демон какой-то.Проблема не в нём-проверил
        th.start() #Старт потока
        #Дальше тоже код от Qt Designer,можно забить
    def retranslateUi(self, Form):
        _translate = QtCore.QCoreApplication.translate
        Form.setWindowTitle(_translate("Form", "Form"))
        self.label.setText(_translate("Form", "Goodbuy"))
 
 
if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    Form = QtWidgets.QWidget()
    ui = Ui_Form()
    ui.setupUi(Form)
    Form.show()
    sys.exit(app.exec_())

Старался как можно чётче описать весь мой код.
Надеюсь на вашу помощь.
P.S.Я не изучал хорошо PyQt5,так что не вините меня,что тут простая ошибка и я лопух.И к питону в принципе я не так давно вернулся,так что может простая ошибка,но я крайне не уверен в этом.Поисковик не дал результата.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.02.2021, 20:02
Ответы с готовыми решениями:

Не работает функция в цикле
Имеется код для скачивания картинок из удаленного сайта: &lt;? $file_array = file (&quot;text.txt&quot;); $num_array = file...

How can I resize a picture when I move a move a mouse on it, and size it back when I move mouse out?
How can I resize a picture when I move a move a mouse on it, and size it back when I move mouse out. I know, I should use OnMouseMove...

Функция std::move()
struct DotPosition { long x; long y; }; std::vector&lt;DotPosition&gt; dots; DotPosition dot; dot.x = x; dot.y = y; ...

19
Модератор
Эксперт Python
 Аватар для Fudthhh
2695 / 1601 / 513
Регистрация: 21.02.2017
Сообщений: 4,210
Записей в блоге: 1
02.02.2021, 06:57
Kirilus3000, бесконечный цикл вешает программу. Используй потоки.
0
6 / 5 / 1
Регистрация: 04.05.2019
Сообщений: 99
02.02.2021, 09:36  [ТС]
Я проверил - это не из-за этого.Цикл идеально работает в потоке,только без передвижения окна.Проблема-передвижения окна:
Python
1
Form.move(x,y) #<----- Проблема.Тут зависание
0
290 / 205 / 68
Регистрация: 18.09.2019
Сообщений: 407
Записей в блоге: 58
02.02.2021, 10:36
Наверное, это и называется GIL?
По определению, GUI выполняется в главном потоке, иначе называемом GUI-потоком.
А вы пытаетесь выполнить GUI-операцию перемещения окна в другом потоке.
Тут скорее надо отправлять сигналы из дополнительного потока в главный,
а он уж сам будет перемещать окно.
0
6 / 5 / 1
Регистрация: 04.05.2019
Сообщений: 99
02.02.2021, 10:40  [ТС]
Приведите пример,пожалуйста.Я не очень пока разбираюсь в этом.
0
Модератор
Эксперт Python
 Аватар для Fudthhh
2695 / 1601 / 513
Регистрация: 21.02.2017
Сообщений: 4,210
Записей в блоге: 1
02.02.2021, 10:48
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
import sys
import random
from PySide2 import QtWidgets, QtCore
 
 
class BeginButton(QtCore.QThread):
    tick: QtCore.SignalInstance = QtCore.Signal(int, int)
 
    def run(self):
        while True:
            x = random.randint(0, self.parent().width())
            y = random.randint(0, self.parent().height())
            self.tick.emit(x, y)
            self.msleep(500)
 
 
class Window(QtWidgets.QWidget):
 
    def __init__(self, parent: QtWidgets.QWidget = None):
        QtWidgets.QWidget.__init__(self, parent)
 
        self.thread = BeginButton(self)
        self.button = QtWidgets.QPushButton("Click me!", self)
 
        self.thread.tick.connect(self.button.move)
        self.thread.start()
 
        if not parent:
            self.show()
 
 
if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    main = Window()
    sys.exit(app.exec_())
0
6 / 5 / 1
Регистрация: 04.05.2019
Сообщений: 99
02.02.2021, 11:34  [ТС]
Не работает:
Bash
1
2
3
qt.qpa.plugin: Could not find the Qt platform plugin "windows" in ""
This application failed to start because no Qt platform plugin could be initiali
zed. Reinstalling the application may fix this problem.
0
290 / 205 / 68
Регистрация: 18.09.2019
Сообщений: 407
Записей в блоге: 58
02.02.2021, 12:16
У меня в блоге есть пример https://www.cyberforum.ru/blog... g6949.html

Но конкрентно для вашего случая, наверное, самым годным будет
найденный на https://tedeash.livejournal.com/340548.html

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
from PyQt5 import QtCore, QtWidgets
 
class MyThread(QtCore.QThread):
    mysignal = QtCore.pyqtSignal(str)
    def  __init__(self, parent=None):
        QtCore.QThread.__init__(self, parent)
    def run(self):
        for i in range(1, 21):
            self.sleep(3) # "Засыпаем" на 3 секунды
            # Передача данных из потока через сигнал
            self.mysignal.emit("i = %s" % i)
 
class MyWindow(QtWidgets.QWidget):
    def __init__(self, parent=None):
        QtWidgets.QWidget.__init__(self, parent)
        self.label = QtWidgets.QLabel("Нажмите кнопку для запуска потока")
        self.label.setAlignment(QtCore.Qt.AlignHCenter)
        self.button = QtWidgets.QPushButton("Запустить процесс")
        self.vbox = QtWidgets.QVBoxLayout()
        self.vbox.addWidget(self.label)
        self.vbox.addWidget(self.button)
        self.setLayout(self.vbox)
        self.mythread = MyThread()    # Создаем экземпляр класса
        self.button.clicked.connect(self.on_clicked)
        self.mythread.started.connect(self.on_started)
        self.mythread.finished.connect(self.on_finished)
        self.mythread.mysignal.connect(self.on_change, QtCore.Qt.QueuedConnection)
    def on_clicked(self):
        self.button.setDisabled(True) # Делаем кнопку неактивной
        self.mythread.start()         # Запускаем поток
    def on_started(self): # Вызывается при запуске потока
        self.label.setText("Вызван метод on_started ()")
    def on_finished(self):      # Вызывается при завершении потока
        self.label.setText("Вызван метод on_finished()")
        self.button.setDisabled(False) # Делаем кнопку активной
    def on_change(self, s):
        self.label.setText(s)
        
if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    window = MyWindow()
    window.setWindowTitle("Использование класса QThread")
    window.resize(300, 70)
    window.show()
    sys.exit(app.exec_())
0
6 / 5 / 1
Регистрация: 04.05.2019
Сообщений: 99
02.02.2021, 13:30  [ТС]
Чуть-чуть вообще не то.Конечно поток есть,всё работает,но с функцией:
Python
1
window.move(500,500)
Всё перестаёт работать,а мне надо перемещать окно.

Добавлено через 21 секунду
Кликните здесь для просмотра всего текста
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
from PyQt5 import QtCore, QtWidgets
 
class MyThread(QtCore.QThread):
    mysignal = QtCore.pyqtSignal(str)
    def  __init__(self, parent=None):
        QtCore.QThread.__init__(self, parent)
    def run(self):
        for i in range(1, 21):
            self.sleep(3) # "Засыпаем" на 3 секунды
            window.move(500,500)
 
class MyWindow(QtWidgets.QWidget):
    def __init__(self, parent=None):
        QtWidgets.QWidget.__init__(self, parent)
        self.label = QtWidgets.QLabel("Нажмите кнопку для запуска потока")
        self.label.setAlignment(QtCore.Qt.AlignHCenter)
        self.button = QtWidgets.QPushButton("Запустить процесс")
        self.vbox = QtWidgets.QVBoxLayout()
        self.vbox.addWidget(self.label)
        self.vbox.addWidget(self.button)
        self.setLayout(self.vbox)
        self.mythread = MyThread()    # Создаем экземпляр класса
        self.button.clicked.connect(self.on_clicked)
        self.mythread.started.connect(self.on_started)
        self.mythread.finished.connect(self.on_finished)
        self.mythread.mysignal.connect(self.on_change, QtCore.Qt.QueuedConnection)
    def on_clicked(self):
        self.button.setDisabled(True) # Делаем кнопку неактивной
        self.mythread.start()         # Запускаем поток
    def on_started(self): # Вызывается при запуске потока
        self.label.setText("Вызван метод on_started ()")
    def on_finished(self):      # Вызывается при завершении потока
        self.label.setText("Вызван метод on_finished()")
        self.button.setDisabled(False) # Делаем кнопку активной
    def on_change(self, s):
        self.label.setText(s)
        
if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    window = MyWindow()
    window.setWindowTitle("Использование класса QThread")
    window.resize(300, 70)
    window.show()
    sys.exit(app.exec_())


Добавлено через 51 секунду
Мне надо понять почему не работает эта мелкая функция и исправить это.

Добавлено через 25 минут
Нашёл такой вариант:
Кликните здесь для просмотра всего текста
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
import sys
from PyQt5.QtWidgets import*
from time import sleep
 
import random
from PyQt5 import QtCore
 
 
if __name__ =='__main__':
 
    app = QApplication(sys.argv)
 
    w = QMainWindow()
    def moveIt():
        while True:
            x = random.randint(0,600)
            y = random.randint(0,600)
            w.move(x, y)
            sleep(2)
    button=QPushButton()
    button.setText("Do it!")
    button.clicked.connect(moveIt)
    w.setWindowFlags(QtCore.Qt.FramelessWindowHint)
    w.setCentralWidget(button)
 
    w.setWindowTitle('Simple')
    w.show()
 
    sys.exit(app.exec_())

Но теперь вопрос-Как сделать,чтобы функция перемещения работала без нажатия и не зависало окно?
0
290 / 205 / 68
Регистрация: 18.09.2019
Сообщений: 407
Записей в блоге: 58
02.02.2021, 14:40
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
import random #Рандом
from PyQt5 import QtCore, QtWidgets
 
class MyThread(QtCore.QThread):
    mysignal = QtCore.pyqtSignal(str)
    def  __init__(self, parent=None):
        QtCore.QThread.__init__(self, parent)
    def run(self):
        i = 0
        while True:
            i += 1
            self.sleep(3) # "Засыпаем" на 3 секунды
            # Передача данных из потока через сигнал
            self.mysignal.emit("i = %s" % i)
 
class MyWindow(QtWidgets.QWidget):
    def __init__(self, parent=None):
        QtWidgets.QWidget.__init__(self, parent)
        self.label = QtWidgets.QLabel("Нажмите кнопку для запуска потока")
        self.label.setAlignment(QtCore.Qt.AlignHCenter)
        self.button = QtWidgets.QPushButton("Запустить процесс")
        self.vbox = QtWidgets.QVBoxLayout()
        self.vbox.addWidget(self.label)
        self.vbox.addWidget(self.button)
        self.setLayout(self.vbox)
        self.mythread = MyThread()    # Создаем экземпляр класса
        self.button.clicked.connect(self.on_clicked)
        self.mythread.started.connect(self.on_started)
        self.mythread.finished.connect(self.on_finished)
        self.mythread.mysignal.connect(self.on_change, QtCore.Qt.QueuedConnection)
 
        self.mythread.start()
 
    def on_clicked(self):
        self.button.setDisabled(True) # Делаем кнопку неактивной
        self.mythread.start()         # Запускаем поток
    def on_started(self): # Вызывается при запуске потока
        self.label.setText("Вызван метод on_started ()")
    def on_finished(self):      # Вызывается при завершении потока
        self.label.setText("Вызван метод on_finished()")
        self.button.setDisabled(False) # Делаем кнопку активной
    def on_change(self, s):
        self.label.setText(s)
        self.move(random.randint(0,600), random.randint(0,600))
        
if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    window = MyWindow()
    window.setWindowTitle("Использование класса QThread")
    window.resize(300, 70)
    window.show()
    sys.exit(app.exec_())
0
6 / 5 / 1
Регистрация: 04.05.2019
Сообщений: 99
02.02.2021, 18:12  [ТС]
Спасибо,всё заработало.Теперь буду думать как приспособить это в моём случае)

Добавлено через 1 час 17 минут
P.S.Я только сейчас осознал,что это опять чепуха.Я жму опять на кнопку,а кнопку надо нафиг убрать,чтобы всё это работало без кнопки.

Добавлено через 51 минуту
iamvic,как всё это сделать без кнопки?
0
290 / 205 / 68
Регистрация: 18.09.2019
Сообщений: 407
Записей в блоге: 58
02.02.2021, 19:51
Издеваетесь? Чтобы сделать без кнопки, надо тупо убрать всё, что связано с кнопкой

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
import random #Рандом
from PyQt5 import QtCore, QtWidgets
 
class MyThread(QtCore.QThread):
    mysignal = QtCore.pyqtSignal(str)
    def  __init__(self, parent=None):
        QtCore.QThread.__init__(self, parent)
    def run(self):
        i = 0
        while True:
            i += 1
            self.sleep(3) # "Засыпаем" на 3 секунды
            # Передача данных из потока через сигнал
            self.mysignal.emit("i = %s" % i)
 
class MyWindow(QtWidgets.QWidget):
    def __init__(self, parent=None):
        QtWidgets.QWidget.__init__(self, parent)
        self.label = QtWidgets.QLabel("Нажмите кнопку для запуска потока")
        self.label.setAlignment(QtCore.Qt.AlignHCenter)
        # self.button = QtWidgets.QPushButton("Запустить процесс")
        self.vbox = QtWidgets.QVBoxLayout()
        self.vbox.addWidget(self.label)
        # self.vbox.addWidget(self.button)
        self.setLayout(self.vbox)
        self.mythread = MyThread()    # Создаем экземпляр класса
        # self.button.clicked.connect(self.on_clicked)
        self.mythread.started.connect(self.on_started)
        self.mythread.finished.connect(self.on_finished)
        self.mythread.mysignal.connect(self.on_change, QtCore.Qt.QueuedConnection)
 
        self.mythread.start()
 
    # def on_clicked(self):
    #    self.button.setDisabled(True) # Делаем кнопку неактивной
    #    self.mythread.start()         # Запускаем поток
    def on_started(self): # Вызывается при запуске потока
        self.label.setText("Вызван метод on_started ()")
    def on_finished(self):      # Вызывается при завершении потока
        self.label.setText("Вызван метод on_finished()")
        self.button.setDisabled(False) # Делаем кнопку активной
    def on_change(self, s):
        self.label.setText(s)
        self.move(random.randint(0,600), random.randint(0,600))
        
if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    window = MyWindow()
    window.setWindowTitle("Использование класса QThread")
    window.resize(300, 70)
    window.show()
    sys.exit(app.exec_())
1
963 / 718 / 276
Регистрация: 10.12.2016
Сообщений: 1,764
02.02.2021, 21:23
Лучший ответ Сообщение было отмечено Kirilus3000 как решение

Решение

Цитата Сообщение от Kirilus3000 Посмотреть сообщение
перемещать окно туда-сюда с помощью генератора числ и потока.
а таймера не хватит?
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
from PyQt5 import Qt
from random import randint
class Label(Qt.QLabel):
    def __init__(self):
        super().__init__()
        self.tmr0 = Qt.QTimer()
        self.tmr0.timeout.connect(self.on_timer)
        self.tmr0.start(1000)
 
    def on_timer(self):
        delta = self.pos() + Qt.QPoint(randint(-100,100),randint(-100,100))
        self.setText('<h1>'+repr(delta.x())+":"+repr(delta.y())+ '</h1>')
        self.move(delta)
        
 
        
        
if __name__=="__main__":
    app = Qt.QApplication([])
    w = Label()
    w.resize(300,200)
    w.show()
    app.exec_()
0
6 / 5 / 1
Регистрация: 04.05.2019
Сообщений: 99
02.02.2021, 21:40  [ТС]
vic5710,Как видишь - нет.Ошибка.Может ещё завтра посмотрю чё не так,сейчас уже времени нету.
0
963 / 718 / 276
Регистрация: 10.12.2016
Сообщений: 1,764
02.02.2021, 23:16
Цитата Сообщение от Kirilus3000 Посмотреть сообщение
Ошибка
про блютус что-то пишет питон то здесь при чем?
0
6 / 5 / 1
Регистрация: 04.05.2019
Сообщений: 99
03.02.2021, 08:43  [ТС]
vic5710,сам без понятия.Запускаю программу и выскакивает это.Очень странно,у меня стоит винда 8.1,а говорит,что это 6.3,даже телефон говорит Windows 6.3 NT.
0
963 / 718 / 276
Регистрация: 10.12.2016
Сообщений: 1,764
03.02.2021, 09:05
Kirilus3000, код, который я привел должен работать везде и всюду. это фундаментальные понятия в любой ОС - таймер и позиционирование окна.
0
Модератор
Эксперт Python
 Аватар для Fudthhh
2695 / 1601 / 513
Регистрация: 21.02.2017
Сообщений: 4,210
Записей в блоге: 1
03.02.2021, 09:17
vic5710, после этого сообщения, стоит наверное дать ТС время, чтоб он подумал.

Цитата Сообщение от Kirilus3000 Посмотреть сообщение
qt.qpa.plugin: Could not find the Qt platform plugin "windows" in ""
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
1
963 / 718 / 276
Регистрация: 10.12.2016
Сообщений: 1,764
03.02.2021, 17:04
Цитата Сообщение от DmFat Посмотреть сообщение
дать ТС время, чтоб он подумал.
я к тому, что если элементарный код не выполняется - не надо искать ошибки в программе
Цитата Сообщение от DmFat Посмотреть сообщение
qt.qpa.plugin: Could not find the Qt platform plugin "windows" in ""
по этому вопросу в гугле инфа есть

Добавлено через 11 минут
https://qna.habr.com/q/920179
0
6 / 5 / 1
Регистрация: 04.05.2019
Сообщений: 99
04.02.2021, 18:21  [ТС]
Короче проблема устранена,дело в том,что в PyQt5 импортируется иногда Bluetooth api без надобности и по этому вылезает та ошибка.Решение:
Переименовать файл "C:\Python\Python38-32\Lib\site-packages\PyQt5\Qt\bin\Qt5Bluetooth.dll" в "_Qt5Bluetooth.dll" или другое имя.В общем всем спасибо за помощь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.02.2021, 18:21
Помогаю со студенческими работами здесь

Не работает печать массива в цикле. Массив получен, как указатель, который вернула функция
Уважаемые эксперты! 1. Программа получает от пользователя значение double, загоняет его в переменную amount. 2. Затем вызывает функцию...

Функция move не меняет значения координат x и y
Почему функция move не меняет значения координат x и y ? #include &lt;stdio.h&gt; #include &lt;math.h&gt; #define RECTANGLE 0 #define...

Не работает move
Не работает move #include &lt;iostream&gt; class N { public: N(): num(0), arr(nullptr) {} N(const int num, const double...

MOVE method не работает
Private Sub cmdBegin_Click() 'Moves the Form to the upper left corner of the screen _ and sizes it one third the screen's Width and...

Не корректно работает метод move в outlook
Помогите разобраться, пжл Перемещаю письма из одной папки в другую Есть код: For Each mailMSG In myItems If...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru