| home / infca / pere (navigation links) | Sóc molt cartesià.
I posats a triar algun extrem, si és imprescindible, prefereixo passarme de racional que de sentimental |
En Pere Albert es un gran paio que no ha deixat de ajudarme cada cop que li he demanat. Gracies, Pere !
type
TForm1 = class(TForm)
PaintBox1: TPaintBox;
procedure PaintBox1Paint(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.PaintBox1Paint (Sender: TObject) ;
var i,j : integer ;
r : TRect ;
begin
with PaintBox1.Canvas do begin
for i:=0 to cliprect.bottom do
for j:=0 to cliprect.right do
pixels [j,i] := $ff0000 + 256*trunc(255*(i/cliprect.Bottom)) + trunc(255*(j/cliprect.right)) ;
end;
r := Paintbox1.Canvas.ClipRect ;
Inflaterect (r,-5,-5) ;
PaintBox1.Canvas.Brush.Style := bsClear ;
PaintBox1.Canvas.Rectangle (r) ;
end ;
|
Truc per a que el tamany del contingut segueixi al continent :
Delphi 6 Enterprise Edition (crack) here
|
La VCL de Delphi és un framework bastant complexe,
molt més fàcil que la majoria de frameworks
de potència similar
però evidentment
té una corba d'aprenentatge que cal superar.
Hi han tutorials a la xarxa.
Hi han llibres.
Requereix temps per anar provant i fent.
I llegir molt.
Llegir molt codi.
Estudiar molts exemples.
Buscar a Google abans de fer cada cosa.
Segur que trobes exemples que t'ho expliquen.
|
| Llegir TString i TStringList [03.02.2004] |
Borland's Delphi is a combination of
a modern programming language,
an integrated development environment (IDE),
and the visual component library (VCL).
|
Tal com em dius que ho tens definit, no et queda cap més remei que anar provant un a un : if radioButton1.checked then s:=radioButton1.caption else if radioButton2.checked then s:=radioButton2.caption else if radioButton3.checked then s:=radioButton3.caption else s:='NS/NC/NA'; |
|
Ara bé, hi ha una manera alternativa que t'ho simplifica molt.
if radioGroup1.ItemIndex<>-1 then
s:=radioGroup1.Items[radioGroup1.ItemIndex]
else
s:='NS/NC/NA';
|
|
Hi tinc 4 coses |
|
Copia dins un arxiu Sebas.java, compila javac Sebas.java i executa java Sebas
/*
* Diccionario de Comandos. Para Sebas.
*
* (C) 2004 Pere Albert, Barcelona. perealbert@es.ibm.com
*/
import java.awt.*;
import java.awt.event.*;
class Sebas extends Frame implements ActionListener {
// interface para virtualizar el método a invocar
interface ProcesadorOrden {
void procesa();
}
// objeto para poner en la tabla diccionario
class EntradaDiccionario {
String term;
public int hash; // para optimizar búsqueda en diccionario
public ProcesadorOrden procesador;
public EntradaDiccionario(String s, ProcesadorOrden pp ) {
term = s;
hash = s.hashCode();
procesador = pp;
}
}
void procesaUno() {
say("Uno 1");
}
void procesaDos() {
say("Dos 2");
}
void procesaTres() {
say("Tres 3");
}
// para añadir una nueva orden tan solo es necesario
// añadir una fila a esta tabla diccionario,
// creando una nueva EntradaDiccionario, con la orden y con el código que
// se tenga que invocar. La implementación del código se hace aquí inline
EntradaDiccionario[] diccionario = {
new EntradaDiccionario("uno",
new ProcesadorOrden() { public void procesa(){ procesaUno(); } } ),
new EntradaDiccionario("dos",
new ProcesadorOrden() { public void procesa() { procesaDos(); } } ),
new EntradaDiccionario("tres",
new ProcesadorOrden() { public void procesa() { procesaTres(); } } ),
new EntradaDiccionario("cuatro",
new ProcesadorOrden() { public void procesa() { say("cuatro!"); } } ),
new EntradaDiccionario("primero",
new ProcesadorOrden() { public void procesa() { procesaUno(); } } ),
new EntradaDiccionario("sebas",
new ProcesadorOrden() { public void procesa() { say("Sebas capullo"); } } )
};
// aquí está el código de buscar la orden. Se compara solo por hash
// podría añadirse comparación final por string completo
// por si hay colisión de hash -muy improbable-
void procesaOrden(String orden) {
say("Procesando orden "+orden);
int h = orden.hashCode();
int i = 0;
while (( i < diccionario.length) && (diccionario[i].hash!=h) ) i++;
if ( i < diccionario.length) {
diccionario[i].procesador.procesa();
} else {
say("no sé como procesar orden "+orden);
}
}
// todo el resto es para pruebas y que se vea algo por pantalla....
public Sebas() {
addWindowListener (
new WindowAdapter() {
public void windowClosing(WindowEvent e) {
dispose(); System.exit(0);
}
}
);
}
List resultsList;
TextField ordenField;
void say(String s) {
resultsList.add(s);
}
void go() {
resultsList = new List();
Panel controlPanel = new Panel();
ordenField = new TextField(20);
ordenField.addActionListener(this);
Button goButton = new Button("Invoca Orden");
goButton.addActionListener(this);
controlPanel.setLayout(new FlowLayout(FlowLayout.LEFT));
controlPanel.add(ordenField);
controlPanel.add(goButton);
setTitle("Hola Sebas");
setSize(600,400);
setLayout(new BorderLayout());
add("North",controlPanel);
add("Center",resultsList);
show();
}
public void actionPerformed(ActionEvent event) {
say(event.toString());
procesaOrden(ordenField.getText());
}
public static void main(String args[]) {
Sebas s = new Sebas();
s.go();
}
}
|
|
Cal saber
Si és una aplicació web amb JSPs, mira't això :
Developing Multilingual Web Applications Using JavaServer Pages Technology
|
|
Web Sphere WebSphere Information RoadmapWebSphere RedBooks |
|
WAS El cicle de desenvolupament simplificat és :
|
|
EAR empaqueta tots els components de una Enterprise Application,
És a dir, una aplicació J2EE amb EJBs etc.
Entre ells, EAR empaqueta WARs.
WAR empaqueta una Web Application, que no té perquè incloure
components J2EE sinó només servlets, jsps etc.
De tota manera, per entendre millor les diferències si és que n'hi ha alguna, podries mirar-te algun llibre de best practices de empaquetament i desplegament d'aplicacions J2EE. Com ara el redbook WebSphere Version 5 Application Development Handbook SG24-6993-00, [T30+F:\WS\llibres\WSAD\HandBook] del que he extret aquesta informació:
J2EE packaging
An EAR file is composed of any number of the following components:
EARs can consist of the following: Zero or more EJB modules; Zero or more Web modules; Zero or more resource adapter modules; Zero or more application client modules; Optionally, additional JAR files, so-called utility JARs, containing dependent classes or other components required by multiple modules |
e:\eines\IMPDEF.EXE MQIC32.DLL
F:\CPP\LibView\Unzip\LibView\Release\LibView.exe + NOM.LIB
Article Microsoft : http://support.microsoft.com/kb/q175030/ - cómo enumerar aplicaciones con las API Win32
References :
Pietrek, Matt, "Under the Hood," Microsoft Systems Journal, no. 8 (August 1996).
URL
Pietrek, Matt, "Under the Hood," Microsoft Systems Journal, no. 11 (November 1996).
URL
|
ABEJERO EUROPEO Pernis apirvorus / Aligot vesper Envergadura: 119-127 cm. Peso: 0,5-1 kg. 2004: 1.054 ejemplares. |
|
|
CERNÍCALO COMÚN Falco tinnunculus / Xoriguer comú Envergadura: 68-82 cm. Peso: 130-270 g. 2004: 223 ejemplares. |
|
|
AGUILUCHO LAGUNERO Circus aeruginosus / Arpella Envergadura: 112-135 cm. Peso: 440-1.100 g. 2004: 121 ejemplares. |
|
|
GAVILÁN Accipiter nisus / Esparver Envergadura: 59-65 cm. Peso: 210-300 g. 2004: 232 ejemplares. |
|
|
ALCOTÁN EUROPEO Falco subbuteo / Falcó mostatxut Envergadura: 70-85 cm. Peso: 140-340 g. 2004: 49 ejemplares. |
|
Imatges (i dades) de "El Periodico" del 24/09/2005.
| Estornell |
|
Alicia Keys :
|
|
MAME
Homepage - els jocs vells tornen !
|
|
Stephen Jay Gould - The Mismeasure of Man - Penguin, 1981
El gen egoísta = The Selfish Gene - Richard Dawkins.
|
DJs music
MP3 edit
|
La emissora que dius (http://www.techwebsound.com/) és un server shoutcast. Pots veure el URL mirant l'arxiu pls. En concret per www.techwebsound.com és
[playlist] File1=http://nyc01.egihosting.com:2020 Title1=Technicolor Web of Sound (www.techwebsound.com) Length1=-1 File2=http://216.127.80.112:8056 Title2=Technicolor Web of Sound (www.techwebsound.com) Length2=-1 NumberOfEntries=2 Version=2
Shoutcast és una tecnologia d'audio streaming mp3 de Nullsoft, els papis de Winamp. No té res a veure amb iTunes. iTunes és un player més. N'hi han moltíssims. El més conegut, és clar, és el propi Winamp.
D'emissores shoucast n'hi ha un munt. Jo mateix també tinc el shoutcast instalat i de tant en tant emeto, només per la gent de la intranet, és clar. Després l'arrenco i t'aviso.
Pots trobar llistats amb centenars d'emissores a shoutcast.com; o a yahoo, launchcast.com.
Algunes estacions interessants, al meu parer:
Smoothjazz.Com - The worlds best Smooth Jazz - Live From Monterey Bay http://64.236.34.4:80/stream/1005 AccuRadio presents: BRITISH INVASION -- Songs from the U.K. during the 60s: Beatles, Stones, Hollies http://www.shoutcast.com/sbin/tunein-station.pls?id=341667&filename=playlist.pls M O S T L Y - C L A S S I C A L - Relax... it's good for you! http://64.236.34.196:80/stream/1006 RADIO MACONDO: Pura Salsa, Puro Son...El Canal Salsero de ORSRADIO http://70.85.112.138:7996 Radio TamTam online - SunuSound Live! by SenewebNetworks http://208.45.137.232:7000 RadioMoris.Com - La Première Radio Internet de l'Ile Maurice http://213.251.129.23:8000 Tim's Radio - Flamencoradio.net http://flamencoradio.net:8100 Deviant On Ice || www.deviantaudio.com http://69.64.38.59:2130 Africanspice.com - The best of Urban African Music - Sponsored by Streamguys.com http://64.202.98.51:7070 h a i t i F M ...Min Bon Konpa...www.haitifm.com http://24.187.30.226:8000
Per cert, si vols guardar les emissions Shoutcast, hi han maneres per capturar els streams i salvar a disc. El més fàcil, el plugin de disk writer de winamp. El problema és que últimament algunes emissores no permeten el disk write. No ho he investigat a fons. També hi han programes: StationRipper, HardDiskOgg, TotalRecorder... però no els he provat mai.
Mira quin CD m'ha compilat :
Jean-Baptiste Lamarck :
He was an early proponent of the idea that biological evolution occurred and proceeded in accordance with natural laws.
Charles Darwin formuló su teoría de la evolución basándose en la selección natural.
Darwin argumentó que la causa primera de la evolución era la selección natural, y no la herencia de características adquiridas, como sostenía Lamarck.
La selección natural favorece las variaciones que son más adecuadas para la supervivencia y reproducción en un entorno dado.
Por ello, y a diferencia de la teoría lamarckiana, Darwin propone que las variaciones en los organismos ocurren de manera aleatoria,
y no son resultado de necesidades o usos específicos de órganos.
De este modo, Darwin cambió la forma de entender la relación entre órgano y función.
Mientras Lamarck creía en la influencia del uso o desuso de órganos en su desarrollo,
Darwin enfocó la evolución en términos de variación aleatoria y selección natural,
donde las características útiles se conservan y las inútiles se pierden con el tiempo.
Eulàlia de Barcelona diu la tradició que era una noia que criava oques i que va ser màrtir als 13 anys durant les persecucions de Dioclecià. Tant si és cert o llegenda, el cas és que és la causa de les 13 oques que viuen al claustre de la catedral de Barcelona, on hi ha enterrades les suposadament despulles de la santa.
Santa Eulàlia és la patrona de la ciutat de Barcelona. La mare de Déu de la Mercè és la patrona de la diòcesi barcelonina, i no la patrona de la ciutat.
La base topogràfica, o més concretament, amb el seu Digital Elevation Model o DEM
Sources :
Lac Redon. A la dreta Conangles, al fons entre altres cims, el Montarto.
El meu ikigai és la neu !
Adding ASP support - using 3rd party : "ActiveHTML" from seliSoft RC = 500 => eMail [25/01/2005]
|
|
Site under construction. |
|
Updated 20220901
|
|