Vláda Spojených států získala desetiprocentní podíl v americkém výrobci čipů Intel. Oznámili to podle agentur americký prezident Donald Trump a ministr obchodu Howard Lutnick. Společnost Intel uvedla, že výměnou za desetiprocentní podíl obdrží státní dotace v hodnotě 8,9 miliardy dolarů (zhruba 186 miliard Kč). Částka podle Intelu zahrnuje dříve přislíbené subvence 5,7 miliardy dolarů z programu CHIPS na podporu výroby čipů v USA,
… více »Organizace Apache Software Foundation (ASF) vydala verzi 27 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.
Knihovna FFmpeg byla vydána ve verzi 8.0 „Huffman“. Přibyla mj. podpora hardwarově akcelerovaného kódování s využitím API Vulcan, viz seznam změn.
Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) vydal Zprávu o stavu kybernetické bezpečnosti ČR za rok 2024 (pdf). V loňském roce NÚKIB evidoval dosud nejvíce kybernetických bezpečnostních incidentů s celkovým počtem 268. Oproti roku 2023 se však jedná pouze o drobný nárůst a závažnost dopadů evidovaných incidentů klesá již třetím rokem v řadě. V minulém roce NÚKIB evidoval pouze jeden velmi významný incident a významných incidentů bylo zaznamenáno 18, což oproti roku 2023 představuje pokles o více než polovinu.
Byl publikován aktuální přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie). Servo mimo jiné nově zvládne animované obrázky APNG a WebP.
Na chytré telefony a počítačové tablety v Rusku bude od začátku příštího měsíce povinné předinstalovávat státem podporovanou komunikační aplikaci MAX, která konkuruje aplikaci WhatsApp americké společnosti Meta Platforms. Oznámila to dnes ruská vláda. Ta by podle kritiků mohla aplikaci MAX používat ke sledování uživatelů. Ruská státní média obvinění ze špehování pomocí aplikace MAX popírají. Tvrdí, že MAX má méně oprávnění k přístupu k údajům o uživatelích než konkurenční aplikace WhatsApp a Telegram.
Společnost PINE64 stojící za telefony PinePhone nebo notebooky Pinebook publikovala na svém blogu srpnový souhrn novinek. Kvůli nedostatečnému zájmu byla ukončena výroba telefonů PinePhone Pro.
Po pěti měsících vývoje byla vydána nová verze 0.15.1 programovacího jazyka Zig (GitHub, Wikipedie). Verze 0.15.0 byla přeskočena. Přispělo 162 vývojářů. Přehled novinek v poznámkách k vydání.
Před sedmi lety společnost Valve představila fork projektu Wine s názvem Proton umožňující v Linuxu přímo ze Steamu hrát počítačové hry do té doby běžící pouze ve Windows. Aktuální přehled podporovaných her na stránkách ProtonDB
Společnost DuckDuckGo rozšířila svůj AI chat Duck.ai o GPT-5 mini (𝕏). Duck.ai umožňuje anonymní přístup bez vytváření účtů k několika modelům umělé inteligence. Aktuálně k GPT-4o mini, GPT-5 mini, Llama 4 Scout, Claude Haiku 3.5 a Mistral Small 3.
Dělám si program na výpočet matic a determinantů v pythnu za pomocí PyQT4. Jenže jsem uvíznul na mrtvém bodě a nevim jak dál. Matice( determinant) je tvořen pomocí spinboxů chci aby bylo možno pomocí dvou spinboxů zadat počet řádků a sloupců. Gui jsem si navrhnul v QT designeru4 pomocí pyuic4 předělám na modul a nyní nevim jak udělat automatické vykreslování. Mám kód, který si to načte z těch spinboxů( počet řádky a sloupců), jenže udělá to jenom při spuštění nemůžu zaboha docílit aby se, když kliknu na nastavit ty spinboxy změnili.
Tady je kód který dělá to vykreslování:ui.spinBox = [] for i in range(self.spbRadky.value()): #spbRadky je počet řádků self.spinBox.append([]) for y in range(self.spbSloupce.value()): #spbSloupce je počet sloupců self.spinBox[i].append(QtGui.QSpinBox(self.gridLayout)) self.gridlayout.addWidget(self.spinBox[i][y],i,y,1,1)Tady je kousek kódu z gui:
from PyQt4 import QtCore, QtGui class Ui_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.setWindowModality(QtCore.Qt.WindowModal) MainWindow.resize(QtCore.QSize(QtCore.QRect(0,0,543,388).size()).expandedTo(MainWindow.minimumSizeHint())) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth()) MainWindow.setSizePolicy(sizePolicy) self.centralwidget = QtGui.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") self.frame = QtGui.QFrame(self.centralwidget) self.frame.setGeometry(QtCore.QRect(0,250,541,81)) self.frame.setFrameShape(QtGui.QFrame.StyledPanel) self.frame.setFrameShadow(QtGui.QFrame.Raised) self.frame.setObjectName("frame") self.btnVypocti = QtGui.QPushButton(self.frame) self.btnVypocti.setGeometry(QtCore.QRect(420,40,116,30)) self.btnVypocti.setObjectName("btnVypocti") self.btnClear = QtGui.QPushButton(self.frame) self.btnClear.setGeometry(QtCore.QRect(420,10,116,30)) self.btnClear.setObjectName("btnClear") self.line_2 = QtGui.QFrame(self.frame) self.line_2.setGeometry(QtCore.QRect(343,0,20,111)) self.line_2.setFrameShape(QtGui.QFrame.VLine) self.line_2.setFrameShadow(QtGui.QFrame.Sunken) self.line_2.setObjectName("line_2") self.spbRadky = QtGui.QSpinBox(self.frame) self.spbRadky.setGeometry(QtCore.QRect(130,10,62,30)) self.spbRadky.setMinimum(2) self.spbRadky.setMaximum(5) self.spbRadky.setObjectName("spbRadky") self.spbSloupce = QtGui.QSpinBox(self.frame) self.spbSloupce.setGeometry(QtCore.QRect(130,40,62,30)) self.spbSloupce.setMinimum(2) self.spbSloupce.setMaximum(5) self.spbSloupce.setObjectName("spbSloupce") self.label = QtGui.QLabel(self.frame) self.label.setGeometry(QtCore.QRect(190,10,47,31)) self.label.setObjectName("label") self.label_2 = QtGui.QLabel(self.frame) self.label_2.setGeometry(QtCore.QRect(190,39,71,31)) self.label_2.setObjectName("label_2") self.btnNastavit = QtGui.QPushButton(self.frame) self.btnNastavit.setGeometry(QtCore.QRect(250,10,95,30)) self.btnNastavit.setObjectName("btnNastavit") self.comboboxVyber = QtGui.QComboBox(self.frame) self.comboboxVyber.setGeometry(QtCore.QRect(10,10,115,29)) self.comboboxVyber.setObjectName("comboboxVyber") self.widgetMatice = QtGui.QWidget(self.centralwidget) self.widgetMatice.setGeometry(QtCore.QRect(0,0,401,251)) self.widgetMatice.setObjectName("widgetMatice") self.gridLayout = QtGui.QWidget(self.widgetMatice) self.gridLayout.setGeometry(QtCore.QRect(0,0,401,251)) self.gridLayout.setObjectName("gridLayout") self.gridlayout = QtGui.QGridLayout(self.gridLayout) self.gridlayout.setObjectName("gridlayout") #tady jsem měl ten kód vloženej ale udělá se to jenom při spuštěníPodle mě to půjde udělat pomocí signálu, který znova načte celí okno, jenže nevim jak na to. Další možnost je to zapsat do funkce a tu spustit při kliknutí na nastav jenže jsem nepřišel na to aby se to vykreslilo zrovna tam. Před tím jsem to měl udělaný tak že jsem je vytvořil a při nastavení jsem ty co nejsou potřeba skryl ale to mi příjde celkem jako oškliví řešení. Předem moc dík za každou radu. PS. nesmějte se mi jestli je to blbost
Tiskni
Sdílej:
<něco, co dědí od QObject>.connect(<tlačítko>, QtCore.SIGNAL("clicked(bool)"), prekresli).
app = QtGui.QApplication(sys.argv) mainWindow = QtGui.QMainWindow() ui = Ui_MainWindow() ui.setupUi(mainWindow)
#soubor mojeokno.py import ui from PyQt4 import QtCore, QtGui class MojeOkno(QtGui.QMainWindow, ui.Ui_MainWindow): spinBox = [] #sem budeš cpát nové spinboxy def __init__(self): QtGui.QMainWindow.__init__(self) #musí být, jinak to nefunguje self.setupUi(self) #rozkreslí ti prvky self.connect(self.buttonNastav, QtCore.SIGNAL("clicked(bool)"), self.prekresli) #připoj signál na funkci prekresli (ta pod timhle komentarem) def prekresli(self): #tvoje funkce na překreslení #chce doladit, jen jsem copy&pastnul tvůj kód. for i in range(self.spbRadky.value()): #spbRadky je počet řádků self.spinBox.append([]) for y in range(self.spbSloupce.value()): #spbSloupce je počet sloupců self.spinBox[i].append(QtGui.QSpinBox(self.gridLayout)) self.gridlayout.addWidget(self.spinBox[i][y],i,y,1,1)Ve spouštěcím skriptu pak budeš mít něco v tomhle smyslu:
from mojeokno import * app = QtGui.QApplication(sys.argv) mainWindow = MojeOkno()Ještě poznámečka: ty soubory, co vylezou z pyuic4 neupravuj, ale jen je naimportuj a vytvoř si pro ty okna vlastní třídy odvozené od toho, co je v těch souborech. Pak budeš moct gui jen upravit v QtDesigneru, prohnat přes pyuic4 a příslušné soubory přepsat aniž bys přišel o svoje přidané vlastnosti.