Anonymní profil Petroff – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Petroff – Programujte.comAnonymní profil Petroff – Programujte.com

 

Příspěvky odeslané z IP adresy 89.102.97.–

Python › odkud si fce v modulu může z…
28. 3. 2010   #125867

Zkusil jsem použít iteraci přes rámce:

MODUL: proSOURCE.py

import sys

def getFILE(FRAME=None,OLD=None):
try:
NEW = FRAME.f_code.co_filename
return NEW != OLD and OLD and NEW or getFILE(FRAME.f_back,NEW)
except AttributeError:
return getFILE(sys.exc_info()[2].tb_frame,None)

MAIN-Script : test.py
import proSOURCE

def main():
print proSOURCE.getFILE() #==> Vypíše <test.py> jako úplnou cestu
main()

Funguje:
v IDLE: execfile("test.py")
v Konzole: test.py
python test.py (...zde nevrátí úplnou cestu, takže nutno zachovat aktuální adresář)

Python › odkud si fce v modulu může z…
22. 3. 2010   #125647

jedna z funkcí v modulu má vrátit jméno/cestu souboru xxxx.py (main)skriptu
Při běžném spuštění lze přečíst v argv[0]
Toto však nelze použít při testování modulu v prostředí IDLE (neboť tam je: argv[0]=='' při spuštění:

def runf(name="tutor_examp",pth="C:\\Program Files\\Python\\skripty\\"): 

execfile(pth+name+".py")

runf() # nebo runf(examp2) , ...atd.
Soudím, že název je někde uložen - např. pokud ve skriptu dojde k neošetřené výjimce, je název mezi vypsanými objekty:
execfile("C:\\Program Files\\Python\\skripty\\examples.py")

Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
execfile("C:\\Program Files\\Python\\skripty\\examples.py")
File "C:\Program Files\Python\skripty\examples.py", line 81, in <module>
main()
File "C:\Program Files\Python\skripty\examples.py", line 75, in main
xkruh_test()

Příkazový řádek › jak otevřít seznam www v sam…
10. 3. 2010   #125077

Pozor na syntaxi, pokud se použijí uvozovky:
start "A" XXX
Potom: A=titulek a spustí se program XXX (popř. otevře soubor XXX ve defaultní aplikaci)

(1) Tímto způsobem se přidá URL jako nový TAB do již otevřeného okna VÝCHOZÍHO PROHLÍŽEČE
Správná syntaxe:
start http://seznam.cz
start "" "c:/moje dokumenty/server/xxxx.html"


(2) Tímto způsobem se otevře každá URL v samostatném okně
Správná syntaxe, pokud používáme uvozovky u programu (a u názvu s mezerami je to nutné):
start "" "...prohlížeč.exe"
start "" "...prohlížeč.exe" http://seznam.cz
start "" "...prohlížeč.exe" "c:/moje dokumenty/server/xxxx.html"

------------------------------------------------------------------------------
Fungující kód [dávka otevře nové okno VÝCHOZÍHO prohlížeče a v něm zobrazí adresy v TABech]:
Soubor: show_URLs.bat

@echo off

chcp 852>nul 2>&1
:: (do RUN uložte výchozí browser)
set RUN="C:\Program Files\Internet Explorer\iexplore.exe"
set RUN="" %RUN%
if "%1" EQU "" goto :CYKL
if not exist %1 goto :EOF
<%1 >nul %0

:CYKL
set /P adr=Zadej adresu: [Ukončit prázdným řádkem] || goto :EOF
start %RUN% %adr%
:: (prodleva: při pomalé odezvě zvětšit 2)
ping -n 2 localhost >nul
set RUN=""
goto :CYKL
Poznámka:
Soubor - kvůli diakritice - ukládám v DOS kódování.
Z toho důvodu je použit přepínač kód.stránky = chcp 852

Použití:
a) show_URLs
(čte opakovaně URL z klávesnice; konec=prázdný řádek)
b) show_URLs seznam.txt (nebo přetáhnout ikonu seznamu na ikonu bat souboru)
(načte adresy ze souboru)
c) dir xxx_folder_xxx\*.html /b | show_URLs
(použije html soubory ze složky: xxx_folder_xxx

JavaScript, AJAX, jQuery › problém z bunkamy
5. 1. 2010   #122297

function dejIndex(pole,polozka) {

for (var i = 0; i < pole.length; i++)
if (pole[i] == polozka) return i;
return -1;
}
function Test(el){
var X = dejIndex(el.form.elements,el);
alert("X=" + X);
}

<input type="text" onClick="Test(this)">

Mě funguje i jednodušší kód (nevím jestli ve všech prohlížečích)

<input type="text" onClick='var X = Array.prototype.indexOf.call(this.form.elements,this); alert("X=" + X)'>

Petroff
JavaScript, AJAX, jQuery › onclick()
1. 1. 2010   #122009

1.Připad
<a href="nová stránka" onclick=akce>Klikni a vše co vidíš bude nahrazeno novym obsahem</a>
Je třeba zabránit, aby se provedlo načtení "nové stránky" (přepíše ti i to okno s vypisem)
Dosáhneš toho tím, že akce vrátí hodnotu FALSE.
Např. takto:
<a href="hodinovy.mp3" onclick='alert("to je muj vypis");return false'>Hodinový hotel</a>
2.Připad
Dej do href něco, co nezpůsobí načtení obsahu:
<a href="#" onclick='alert("to je muj vypis")'>Hodinový hotel</a>
<a href="Javascript:" onclick='alert("to je muj vypis")'>Hodinový hotel</a>

JavaScript, AJAX, jQuery › Nejjednodušší detekce nahrán…
23. 12. 2009   #121550

To KIIV :
O něčem takovém jsem uvažoval, ale problém to neřeší (neznám okamžik, kdy se stránka - po reloadu - začne znovunačítat a kdy se dostane do stavu, že už existuje objekt: document.body a to je ten okamžik, kdy bych mu mohl nainstalovat ovladač onLoad. Navíc pokud by na stránce byl vlastní onload, vyrobil bych nový problém...
Já měl na mysli, zda neexistuje nějaký DOM Flag či metoda, která by hlásila fáze načítání (na IE to byl něco jako ondomready nebo tak nějak)
JINAK:
Testování typu
if (opener && opener.document && opener.document.all && opener.document.all.message) alert("Je načteno")
nefunguje (nikdy se to nespustí)

JavaScript, AJAX, jQuery › Nejjednodušší detekce nahrán…
23. 12. 2009   #121548
JavaScript, AJAX, jQuery › oříšek: reload stránky s běž…
23. 12. 2009   #121547

Tohle funguje:

javascript:(function(sTA){var ta=eval(sTA); var tav=(ta)?(ta.value):"";var paste=Function("x",sTA+".value=x"); var w2=window.open("javascript: opener.location.reload(); void 0",""); w2.setTimeout(function(){paste(tav); w2.close();},2000);})("document.all.message")

Popis:
...zde číst/zapsat hodnotu VALUE: <TEXTAREA name="message" />

sTA = "document.all.message"
tav = document.all.message.value (uložení textu z TEXTAREy)
function paste(x){document.all.message.value=x} (vložení textu do TEXTAREy)
w2 = pomocný přechodný objekt (původní objekt window je při reloadu zrušen)

FUNGUJÍCÍ KÓD (pro přehlednost rozepsaný do více řádků):
javascript:

(function(sTA)
{
var ta=eval(sTA); var tav=(ta)?(ta.value):"";
var paste=Function("x",sTA+".value=x");
var w2=window.open("javascript: opener.location.reload(); void 0","");
w2.setTimeout(function(){paste(tav); w2.close();},2000);
}
)("document.all.message")


PS.
Pro vyzkoušení - na tomto foru - stačí nahradit
message jménem komentar:
javascript:(function(sTA){var ta=eval(sTA); var tav=(ta)?(ta.value):"";var paste=Function("x",sTA+".value=x"); var w2=window.open("javascript: opener.location.reload(); void 0",""); w2.setTimeout(function(){paste(tav); w2.close();},2000);})("document.all.komentar")

JavaScript, AJAX, jQuery › Nejjednodušší detekce nahrán…
22. 12. 2009   #121519

Chci nahradit kód - obsahuje 2sec prodlevu (rezerva navíc):
setTimeout( function(){opener.document.all.textareaName.value="xxxPASTExxxx"; .....} , 2000)
cyklickým testováním řekněme po 100ms
V okamžiku,kdy je stránka kompletní (popř. je načtený formulář s TextArea) přerušit cykl a provést příkaz
function cykl(T) {setTimeout( function(){ if (!TEST && T) cykl(--T)
else
{opener.document.all.textareaName.value="xxxPASTExxxx"; .....} }, 100)
cykl(20)

TEST =?

JavaScript, AJAX, jQuery › jak vybrat z window.frames p…
20. 12. 2009   #121453

Hotovo ...stačí zjistit je-li na stránce <frameset> ...pak jde o kolekci oken v prvcích <frame>.
V opačném případě jde o prvky iframe: směsi se nevyskytují ...takže sorry za nepřesný název tématu

Kód:

javascript: (function zpracuj(w){ 

if(w.document.body.nodeName=="FRAMESET")
for(var f=0; f<w.length; f++) zpracuj(w[f])
else
(function(okno){XXXXX})(w)
})(window)

JavaScript, AJAX, jQuery › oříšek: reload stránky s běž…
20. 12. 2009   #121452

Bookmarklet - schéma:

javascript: var ta=document.all.message; var taV=(ta)?ta.value:""; XXXXXXXXX ; document.all.message.value=taV; void 0

Mezi načtením řetězce z textarey a jeho zpětným uložením je třeba provést obnovení stránky:
Bohužel: XXXXXX => location.reload() nefunguje, resp. funguje pouze jde-li o poslední příkaz na řádku
Zkoušel jsem setTimeout, ale asi jdu na to špatně

PS. Součástí XXXXX je automatický login - v novém okně: to mi již funguje. Právě přihlášení je důvodem k obnově stránky, a zachování rozepsaného formuláře je výsledek, o který usiluju...

JavaScript, AJAX, jQuery › jak vybrat z window.frames p…
16. 12. 2009   #121177

Potřebuju tímto (bookmarkletem) prohledat obsah stránky:

javascript: 

(function getW(w){ if (w[0]) for(var f=0; f<w.frames.length; f++)
{ if (w[f].frameElement.tagName=="FRAME") getW(w[f]) };
(function(okno){XXXXX})(w) })(window)
Toto: (function(okno){XXXXX})(w) je vlastní hledání (pomocí getElementsByTagName atd.):
Většinou v dokumentu hlavního okna. Ale pokud je obsah v rámcích => tehdy potřebuju ze zpracování vyloučit inline rámce:
TEST: if (w[f].frameElement.tagName=="FRAME") getW(w[f]) bohužel někdy selhává
Jak lze jinak oddělit z kolekce Frames pouze normální rámce ???
PS.
Skript zastavuje ERROR=odepření přístupu k prvku frameElement (u iframů s cizí URL), browser z důvodu bezpečnosti nedovolí číst a tudíž ani testovat žádné vlastnosti.

JavaScript, AJAX, jQuery › Přepínání mezi taby prohlíže…
10. 12. 2009   #120898

Nemá náhodou fce window.open efekt, že otevřené okno má vždy focus ?
Pak by stačilo:
<a href="index.html" target="myWin" onClick='window.open("index.html","myWin"); return false'>Link Text</a>

HTML / XHTML › problém s diakritikou - přev…
26. 11. 2009   #120001

Ale s tím ž (viz oddlužení , družstva ) si neporadí taky:
Oddluľení
Osobní bankrot

Asi by to chtělo specialní konverzní utilitu (která by pracovala v ASCII rozsahu #80 - #FF tj. 128-255) a převedla znaky na HTML entity. A pracovala s iso-8859-2 tabulkou tak jak ji používá OpenOffice.
Já nějakou udělám, tady by se hodil editor, který by ji umožňoval použít jako plugin (stiskneš tlačítko a soubor v editoru je překonvertován). Tuto možnost TextPAD nemá :-(

HTML / XHTML › problém s diakritikou - přev…
26. 11. 2009   #119975

Používám TextPAD a ten to nesvede, ba naopak někdy se šprajcne při načtení vlastních souborů kt. minule vytvořil.
Mohl bys zkusit ten soubor otevřít v PSPadu přepsat iso-8859-2 na utf-8 a uložit jako utf-8 a otevřít v browseru ?
Jestli to bude fungovat, tak by to byl pro mě důvod k přechodu (jinak bez přičiny nerad měním dlouho používané produkty)
DiK za ochotu

HTML / XHTML › problém s diakritikou - přev…
26. 11. 2009   #119973

Použil jsem OpenOffice texťák k vytvoření poměrně komplikované tabulky (velmi rychlé)
Uložil jsem soubor jako xxxx.html (kontrola v prohlížeči -> čeština OK ale stránka je v charset=iso-8859-2)
Tu tabulku jsem potřeboval vypreparovat a vložit do editoru do HTML kódu v utf-8. Zkoušel jsem různé postupy, ale vždy jsem dostal v tabulce zkomolené ž (jednou ľ jindy čtvereček)
Neznáte nějakou fintu jak na to ?
(Pro příště ...je možné že ž není jediný znak špatně převedený)

P.S. Když ten xxxx.html otevřu v Notepadu, jsou ž zobrazena jako měkké malé L => ľ

OS - Windows › Chyba při kopírování přes cl…
14. 7. 2009   #111811

To KIIV :
Ve zdrojovém kodu RTF: áídělá to co naprogramujete jsou ty 2první znaky zapsány takto: \'e1\'ed
Mě tedy E1 ED (hex) zrovna BOM nepřipomíná....
Pokud ten samý úsek věty PASTnu do souboru .DOC, přibude tam toto
(je to převedeno na .HTML quli názornosti):

...</P>

<DIV>
<TABLE>
<TR>
<TD>
<P> dělá to co naprogramujete </P>
</TD>
</TR>
</TABLE>
</DIV>
<P>...
Mě je celkem jedno, co to je, ale potřeboval bych se toho zbavit :-(

OS - Windows › chybné zobrazení češtiny při…
14. 7. 2009   #111806

Dík. Ověřil jsem jsem si: .TXT formát s UTF-8 kodováním => OK
Co se týče .DOC , mohl jsem já či brácha udělat nějakou botu (to, že já používám OpenOffice a on MS Word, na věc nemá - doufám - vliv )

OS - Windows › Chyba při kopírování přes cl…
14. 7. 2009   #111798

Používám jako textový záznamník/organizer vynikající Notesbrowser (www.notesbrowser.de), nejčastější operací je zkopírování výstřižku z webové stránky. Pokud použiju Copy + Paste(as plain text) je vše v pořádku. Při použití Copy/Paste (případně D&D) se vloží formátovaný text ; dojde však k chybě na začátku bloku: áíZačátek bloku....
Při přenosu ze souboru DOC, RTF, PDF apod k chybě nedochází. Domnívám se, že Notesbrowser pracuje vnitřně s RTF formátem (ke stejné chybě dojde při kopírování z webu do rtf souboru)
S D&D se asi nic dělat nedá... Ale k vložení do schránky používám myší tlačítko, dá se k němu přiřadit kombinace kláves (místo dosavadní Ctrl-C třeba Ctrl-Alt-C), která by mohla spustit akci="ošetřené" vložení do schránky ...poradíte jak ji zrealizovat ???

Příkazový řádek › hodně dlouhých parametrů vs.…
7. 7. 2009   #111585

Zkusil jsem VBS: chybové hlášení => seznam parametrů je příliš dlouhý (>11)
Zkusil jsem WinRAR ...tomu nedělá problémy jakkoli objemný seznam názvů.
Zdá se, že exe soubory nemají omezení.
Snad by někdo dokázal udělat (v assembleru nebo C,Pascal...) prográmek, který pro každý svůj parametr spustí: cmd.exe /C forEach.bat <parametr> (v cyklu) ? (forEach.bat by byl ve stejné složce jako hlavní execute)

OS - Windows › chybné zobrazení češtiny při…
1. 7. 2009   #111328

Bráchovi jsem poslal <český_text.txt> ke korektuře (žije v Německu).
Prý byla zkomolená diakritika. Celé to přepsal a já obdržel pro změnu taky chybně zobrazené znaky
(stejné: ať se použije prostý text nebo .doc ; rovněž nezáleží v čem soubor otevřu)
Mám jednu aplikaci v německé lokalizaci, ta při psaní (nebo přenosu přes clipboard) nápisů do LABELů zobrazí diakritiku 100% stejně chybným způsobem (viz snapshot)
Jedná se o tyto znaky: ĚČŘŮĎŤŇ ěčřůďťň
Mám něco v XPčkách špatně nastavené ?
Nebo to je normální (české kontra německé WIN)... jak to potom udělat při vzáj.výměně českých textů ?

Příkazový řádek › hodně dlouhých parametrů vs.…
1. 7. 2009   #111322

Volání dávky: Vypiš&Smaž.BAT name1 name2 name3 . . . . name26
Prakt.provedení:
ve složce se vyberou=označí soubory (určené ke smazání) a celá skupina přetáhne na zástupce BAT.
V této fázi mi to hlásilo přístup odepřen ...domnívám se, že zato může počet (40) a délka úplných názvů (kolem 100)
Asi jsem překročil limit velikosti ? (vyberu-li libovolný jeden či dvojici souborů k chybě nedojde)
Mým záměrem bylo cyklovat (shift) přes parametry dávky:
- z názvů (%1) ořezat předek: C:\....\_INCOMPLETE__ a zadek: <64číslic>.mp3
- čistý titul skladby přidat do vytvářeného seznamu ( echo %TITUL% >> seznam.txt )
- nepoužitelný soubor vymazat ( del %1 )
V závěru dávky: NOTEPAD seznam.txt

Nevím co s tím....když nejdou předat parametry ???

Příkazový řádek › cmd a ASCII
18. 6. 2009   #110688

Taky mě napadlo, jak se to asi dělá...
Nakonec jsem zkusil spustit editor edit a zadal 2 znaky: ctrl+P ctrl+[
Výsledkem je zapsaný ESC ( hex: 1B )

Příkazový řádek › Otevření všech souborů v adr…
18. 6. 2009   #110686

To tom*p :
Např. všechny txt soubory z akt.složky otevřeš dávkovým souborem:
<open_txt.bat>

for %%I in (*.txt) do ("%%I")

Pokud bys to použil jako samostatný příkaz v okně cmd: for %I in (*.txt) do ("%I")

Takto se ovšem nedostaneš k hlouběji zanořeným souborům :(

Příkazový řádek › jak otevřít seznam www v sam…
18. 6. 2009   #110685

Mám seznam webových adres v souboru adresy.txt a dávku, která čte v cyklu řádkový vstup:
<cykl.bat>

:cy

set adr=@
set /P adr=Zadej adresu:
if %adr%==@ exit
start "C:\Program Files\Internet Explorer\iexplore.exe" "%adr%"
goto cy

Řádky s adresami se načtou pomocí přesměrování vstupu: cykl<adresy.txt
(vytvořením dávky s jediným řádkem: cykl<%1 lze načíst libovolný soubor - D&D na ikonu dávky)
Problém:
Nevím jak docílit, aby se otevřelo nové okno a v něm stránky. Takto se prostě použije již otevřené okno browseru a přibudou nové TABy k těm existujícím.
PS.
1) příkaz: "C:\Program Files\Internet Explorer\iexplore.exe" sice otevře nové okno, ale dávka stojí (dokud jej nezavřu)
2) pokud to BATem nejde řešit, možná WSH skripty ano ???

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032022 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý