Home » U++ Library support » ArrayCtrl, HeaderCtrl & GridCtrl » large ArrayCtrl
Re: large ArrayCtrl [message #840 is a reply to message #839] |
Sat, 04 February 2006 12:10   |
 |
mirek
Messages: 14266 Registered: November 2005
|
Ultimate Member |
|
|
Good idea. I have changed it a little
#include <CtrlLib/CtrlLib.h>
static String sNumberAsText(int number)
{
static const char * const digits[20] = {
"", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine",
"ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen",
"seventeen", "eighteen", "nineteen"
};
static const char * const tens[10] = {
"", "ten", "twenty", "thirty", "fourty", "fifty", "sixty", "seventy", "eighty", "ninety"
};
if(number < 20)
return digits[number];
if(number < 100)
return tens[number / 10] + String(" ") + sNumberAsText(number % 10);
if(number < 1000)
return digits[number / 100] + String(" hundred ") + sNumberAsText(number % 100);
if(number < 1000000)
return sNumberAsText(number / 1000) + " thousand, " + sNumberAsText(number % 1000);
return "";
}
struct NumberToText : public Convert {
virtual Value Format(const Value& q) const {
int n = q;
return n == 0 ? String("zero") : sNumberAsText(n);
}
};
GUI_APP_MAIN
{
ArrayCtrl array;
array.AddRowNumColumn("number", 20);
array.AddRowNumColumn("text", 80).SetConvert(Single<NumberToText>());
array.SetVirtualCount(900000);
TopWindow win;
win.Zoomable().Sizeable();
win.Add(array.SizePos());
win.Run();
}
and saved as reference/VirtualArray.
Note that some issues you have done in a little bit complicated way - I am not sure whether you wanted to demostrate other things, however I decided to use to smallest possible code (as I always try for reference examples).
Mirek
|
|
|
 |
|
large ArrayCtrl
By: hojtsy on Wed, 04 January 2006 14:28
|
 |
|
Re: large ArrayCtrl
By: mirek on Wed, 04 January 2006 14:48
|
 |
|
Re: large ArrayCtrl
By: hojtsy on Wed, 04 January 2006 16:32
|
 |
|
Re: large ArrayCtrl
By: mirek on Wed, 04 January 2006 17:54
|
 |
|
Re: large ArrayCtrl
By: hojtsy on Sat, 04 February 2006 11:18
|
 |
|
Re: large ArrayCtrl
By: mirek on Sat, 04 February 2006 12:10
|
 |
|
Re: large ArrayCtrl
By: hojtsy on Sat, 04 February 2006 13:05
|
 |
|
Re: large ArrayCtrl, virtual array count limits
|
 |
|
Re: large ArrayCtrl, virtual array count limits
By: mirek on Sun, 16 November 2008 18:58
|
 |
|
Re: large ArrayCtrl, virtual array count limits
|
Goto Forum:
Current Time: Fri Jul 18 15:24:25 CEST 2025
Total time taken to generate the page: 0.03942 seconds
|