Jag har gjort nedanstående funktion för att skriva ut ett resultat i en RichTextBox. Mm, det går ju inte. I så fall måste du ha en font som är monospace, där alla tecken är lika breda (för att få jämna kanter) och sen räkna ut antal mellanslag som behövs framför de tal som har mindre antal tecken än andra. Tack. RichTextBox högertab
Utskriften blir ex.vis så här:
3 -5 120 Nilssons livs
22 502 Spadar
305 -1 200 Inköp
Jag vill ha vissa (i nödfall alla) tabbar högerställda så att det blir så här i stället:
3 -5 120 Nilssons livs
22 502 Spadar
305 -1 200 Inköp
Har googlat, sökt och micklat förgäves, är jag helt fel ute?
Koden (VS 2003):
void DisplayResult(ArrayList * results)
{
this->richTextBox1->Visible = true;
Trans * trans;
Int32 tabs[] = new Int32[3];
tabs[0] = 100;
tabs[1] = 300;
tabs[2] = 650;
this->richTextBox1->set_SelectionTabs(tabs);
String * tab = S" ";
for ( int i=0; i<results->Count; i++ )
{
trans = static_cast<Trans*>(results->get_Item(i) );
String * ver = trans->get_Vernr().ToString();
String * belopp = trans->get_Belopp().ToString("N2");
String * text = trans->get_Text();
this->richTextBox1->AppendText(ver);
this->richTextBox1->AppendText(tab);
this->richTextBox1->AppendText(belopp);
this->richTextBox1->AppendText(tab);
this->richTextBox1->AppendText(text);
this->richTextBox1->AppendText(Environment::NewLine);
}
}Sv: RichTextBox högertab
Annars krävs en tabell.
Det är bättre att skriva ut resultatet i en ListView, där du har full kontroll över detta!Sv:RichTextBox högertab
Tidigare löste jag det genom String::Concat(ver, belopp, text), ver o belopp inleddes då
med rätt antal mellanslag. Jag gör väl så igen.