Latest posts on мой текстовый редактор topichttps://python.su/forum/topic/40355/2021-05-23T22:11:33+03:00Общий :: Python проекты :: мой текстовый редактор
2021-05-23T22:11:33+03:00doza_and216737Непонятно чего вы хотите.<br/>Вроде пользоваться вашим кодом или развивать проект нет смысла.<br/><br/>Наверное вы хотите замечаний по коду?<br/>Вот эти манипуляции со слешами очень дурно пахнут. В питоне есть специальные объекты для работы с путями. Прямая манипуляция делает ваш код просто неправильным.<br/><div class="code"><pre> <span class="bp">self</span><span class="o">.</span><span class="n">file_name</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">file_name</span><span class="p">[</span><span class="mi">0</span><span class="p">])[</span><span class="mi">2</span><span class="p">:</span><span class="o">-</span><span class="mi">2</span><span class="p">]</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">'/'</span><span class="p">,</span> <span class="s1">'</span><span class="se">\\</span><span class="s1">'</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">fileName</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">file_name</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s1">'</span><span class="se">\\</span><span class="s1">'</span><span class="p">)[</span><span class="o">-</span><span class="mi">1</span><span class="p">])</span>
</pre></div>file_name и fileName смешение стилей и и имена не отражающие суть содержимого переменной.<br/><br/>А вот тут полезно обработать все варианты<br/><div class="code"><pre> <span class="n">ms</span> <span class="o">=</span> <span class="n">QMessageBox</span><span class="o">.</span><span class="n">question</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="s1">'Выход'</span><span class="p">,</span> <span class="s1">'Сохранить файл?'</span><span class="p">,</span> <span class="n">QMessageBox</span><span class="o">.</span><span class="n">Yes</span> <span class="o">|</span> <span class="n">QMessageBox</span><span class="o">.</span><span class="n">No</span> <span class="o">|</span> <span class="n">QMessageBox</span><span class="o">.</span><span class="n">Cancel</span><span class="p">)</span>
<span class="k">if</span> <span class="n">ms</span> <span class="o">==</span> <span class="n">QMessageBox</span><span class="o">.</span><span class="n">Yes</span><span class="p">:</span>
<span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">file_name</span><span class="p">,</span> <span class="s1">'w'</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span>
<span class="n">f</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">ui</span><span class="o">.</span><span class="n">text</span><span class="o">.</span><span class="n">toPlainText</span><span class="p">())</span>
<span class="n">event</span><span class="o">.</span><span class="n">accept</span><span class="p">()</span>
<span class="k">elif</span> <span class="n">ms</span> <span class="o">==</span> <span class="n">QMessageBox</span><span class="o">.</span><span class="n">Cancel</span><span class="p">:</span>
<span class="n">event</span><span class="o">.</span><span class="n">ignore</span><span class="p">()</span>
</pre></div><br/>Те либо<br/><div class="code"><pre> <span class="k">if</span> <span class="n">ms</span> <span class="o">==</span> <span class="n">QMessageBox</span><span class="o">.</span><span class="n">Yes</span><span class="p">:</span>
<span class="o">....</span>
<span class="k">elif</span> <span class="n">ms</span> <span class="o">==</span> <span class="n">QMessageBox</span><span class="o">.</span><span class="n">Cancel</span><span class="p">:</span>
<span class="o">...</span>
<span class="k">else</span><span class="p">:</span>
<span class="o">...</span>
</pre></div>либо<br/><div class="code"><pre> <span class="k">if</span> <span class="n">ms</span> <span class="o">==</span> <span class="n">QMessageBox</span><span class="o">.</span><span class="n">Yes</span><span class="p">:</span>
<span class="o">...</span>
<span class="k">else</span><span class="p">:</span>
<span class="o">...</span>
</pre></div><br/><br/>
Общий :: Python проекты :: мой текстовый редактор
2021-05-23T20:50:43+03:00artand321123216732design
Общий :: Python проекты :: мой текстовый редактор
2021-05-23T20:50:23+03:00artand321123216731сама программа
Общий :: Python проекты :: мой текстовый редактор
2021-05-23T20:49:41+03:00artand321123216730в этом редакторе можно только открыть, изменить и сохранить файл